[Q] Question on Magma (or other Persistence Engine
for Squeak/Seaside)
Keith Hodges
keith_hodges at yahoo.co.uk
Thu Apr 19 08:04:31 UTC 2007
Sungjin Chun,
I have used magma with pier on a typical, very hierarchical object
model, without any MagmaCollections and seen pretty good performance
particularly when the readStrategy is defined so as to get all the
objects that you want in one or two server hits. The worst case
scenarios are those which involve traversing an object model, and this
requires many separate object reification (server hits) cycles.
It appears from my experiment in the previous email that a query on the
MagmaCollection using the indexed field #title, is between 4 to 6 times
faster than an simple indexed access for a similar number of elements.
Chris will know the details as to why this might be the case.
Nevertheless it does point towards the idea that MagmaCollections can in
theory at least be a lot faster than the store example demonstrates. It
may just be a case of defining an explicit numerical index for the
MagmaCollection.
The Collection definition is:
inventory := MagmaCollection new
addIndex: ((MaSearchStringIndex attribute: #title) keySize: 128;
yourself) ;
addIndex: ((MaKeywordIndex attribute: #keywords) keySize: 64;
yourself) ;
yourself.
just some thoughts
Keith
More information about the Magma
mailing list