OODB Storage Options and Performance

Daniel Salama dsalama at user.net
Thu Apr 14 05:39:05 UTC 2005


> Let me be careful to answer this correctly..  yes you will get a 
> refreshed
> copy, no you don't have to re-read the root.  :)
>
> commit: [ a domain change ] actually "crosses a transaction boundary" 
> twice.
> Once for the #begin (before the user block) and then once after when it
> #commit.  All persistent objects are refreshed on both of those 
> occasions.  If
> someone changed the root since your last commit, the change will be 
> visible to
> the code in the commit block.

Excellent

> Did someone say Omnibase was running single-user?  Also, there's one 
> more
> optimization to make to the script; use #commitAndBegin.  (I post it 
> at the
> end).  With this I get
>
> 14.925 seconds
> commit time: 12.209 seconds
>
> And you could use this type of local-connection directly in the server 
> image,
> even if that server image were serving remote clients, although this 
> appears to
> still be 5-times slower than Omnibase.  Still, compared to the initial 
> run of
> 57 seconds, it's illustrative of how much improvement can be had using
> different configurations.

I thought Omnibase was multi-user ?: - Anyway, your machine seems to 
definitely be faster than mine :) I ran your updated script and got 
26.786/21.429 seconds respectively. Also, is that a new feature to run 
Magma "locally"? Does it mean to say that I can have a Magma server 
using #openLocal and at the same time another Magma server using #open 
on the same repository and can the two servers update the repository 
simultaneously?

> Btw, the version you have now was improved nearly 4x in the insertion 
> speed for
> MagmaCollections since your test from last week, so hopefully a bit 
> more
> tolerable.

I will update the version of Magma I have with the latest MC version 
and re-run the bulk-load to see how it goes. Will let you know.

Thanks,
Daniel Salama




More information about the Squeak-dev mailing list