Re: Core Data: different fetch performance when launching app
Re: Core Data: different fetch performance when launching app
- Subject: Re: Core Data: different fetch performance when launching app
- From: Ruslan Zasukhin <email@hidden>
- Date: Sat, 14 Oct 2006 15:23:01 +0300
- Thread-topic: Core Data: different fetch performance when launching app
On 10/14/06 2:26 PM, "Jakob Olesen" <email@hidden> wrote:
Hi All,
> There are several ways you can speed up your initial query:
>
> 1. Break up your inheritance hierarchy, so you get more tables. If
> your Catalog instances are in a smaller table, you get them faster.
>
> 2. Use a relationship to fetch the Catalog instances. Relationships
> are indexed, so you avoid the full table scan.
>
> 3. Force the kernel to cache your database file by reading it
> sequentially before the fetch.
>
> If your Catalog instances are tree roots with a null parentItem, try
> using that in your fetch predicate: "parentItem=nil". Since
> parentItem is a relationship, it is indexed, and you avoid the full
> table scan. That is the simplest solution (if it works...)
I always have wonder to such advices.
While CoreData is intended to "simplify" job of developer,
letters on this list show that developers quite often are forced:
a) learn deeply internal structure of CoreData
b) learn not easy tricks & tips how to fight with simple problems.
c) spend time and efforts to redesign their SIMPLE db structure to something
complex to satisfy logic of CoreData
D) etc
Diederik, have ONE table, with only 30K records and *tiny* db file.
On powerful modern MACs it takes 2-20 seconds to work?
Guys, open that file in HexEdit - it will scan it in no time.
If a technology is not able to handle such EASY db structure
and such small amount of data then is it good?
P.S. This is why I do not think that OO DBMS/Layers is a good way.
This is why we push our own database Valentina into OR hybrid way to get
best of both ... no ... of FEW worlds.
P.S.2. no need to start religious wars here :-)
Just express my opinion about "easy for use" technologies
that require long time of deep learning...
For example it was fun to see in .NET 2.0 Garbage collection manager that
simplify developer job, only you must remember:
1) .....
2) .....
3) .....
4) .....
5) .....
6) .....
7) .....
8) .....
9) .....
.....
--
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