Re: CoreData - large data set is slow to load on app launch - optimization tips?
Re: CoreData - large data set is slow to load on app launch - optimization tips?
- Subject: Re: CoreData - large data set is slow to load on app launch - optimization tips?
- From: Ruslan Zasukhin <email@hidden>
- Date: Sat, 03 Dec 2005 19:52:42 +0200
- Thread-topic: CoreData - large data set is slow to load on app launch - optimization tips?
On 12/3/05 7:01 PM, "Simon Liu" <email@hidden> wrote:
Hi Simon,
Just few days ago on this list was discuss the same problem
-- slowness of SqlLite.
>
My app's single SQL store contains over 5,000 instances of an entity,
>
each with an associated image (jpeg data). There are also other
>
entities, relationships, etc. The SQL store comes in at around 80MB.
>
>
I find that on launching the app, I get the spinning beach ball as the
>
store is loaded. This goes on between 30-50 seconds. Obviously an
>
issue for users.
>
>
On launching my app, the main app window which is visible at launch is
>
similar to iTunes. A main table will list all the records, and is
>
populated by an ArrayController which has been set to the Entity
>
class. The table also has a predicate and a sortDescriptor. Is the
>
arrayController the cause of the delay? Is there a better way of
>
populating the controller so that it doesn't try and load everything
>
in one go? (Even though I want users to be able to see all their table
>
entries on launch).
>
>
Is it more efficient to have two stores, one dedicated for textual
>
data, and the other for data blobs such as images? I haven't worked
>
with Cross-store relationships yet but I see there is an example
>
called 'iClass'.
>
>
Ultimately, I want the app to be able to scale to 50,000 records
>
without that much of a performance hit. Appreciate any tips. Thanks.
In NORMAL way, the size of database, number of tables, number of relations,
number of records, should not affect the time of db opening.
It sounds like your app is doing some access to database on start.
I assume CoreData do that queries automatically, so you cannot control.
Wow, so only 5000 records give you 30-50 seconds ?
Then for 50,000 records you will go to at least 300-500 seconds...
We need plug Valentina into that CoreData :-))
Then everything will work up to 100+ times faster
Also you think that Data control load all record on start ??
Normally list-control should ask only for visible records.
--
Best regards,
Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc
Valentina - Joining Worlds of Information
http://www.paradigmasoft.com
[I feel the need: the need for speed]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden