How to use GOODS? (was: Re: GOODS commit performance)
vaidasd at lnb.lt
Tue Jan 6 12:12:48 UTC 2004
>>/ db := KKDatabase onHost: '192.168.0.111' port: 6100./
>>/ root := db root./
>>/ nt _ root at: #NumbersTable ./
>>/ "lookup speed"/
>>/ [element _ nt at: 777777] timeToRun <8061>./
> Ok, that's interesting. The problem, I think, is that you're doing these
> tests with a single massive object. The granularity of the database
>protocol is single objects, so the first time you touch that large array,
> the whole thing has to be brought in (not all the LargeIntegers, but the
> whole Array), and as you're demonstrating that's quite slow.
LargeCollections not installs onto 3.6.
I got used to work with relational tables; how data shall be organized
in goods? For example: I have million agreements and two million sales
contacts. Semantically, information about Agreements is on the same
level that information about Sales Contacts are and they have
many_to_many relation. I fought, I need organize like
root := db root.
root at: #Contracts put: aContracts.
root at: #SalesContacts put: aSalesContacts.
then, if new user wants to work with contract #123, database shall allow
find it quickly, "check out" for change somehow;
user will change contract information in local image and commit changes
back to database. All transaction shall be possible in a fraction of a
second I think.
so, how to use GOODS + Squeak? If such combination not allows to work
with data of 5GB, than ok, I'm looking in wrong direction.
More information about the Squeak-dev