[Openmcl-devel] Fine-grained locking
David McClain
dbm at refined-audiometrics.com
Tue Mar 17 20:36:12 PDT 2009
I will be interested to hear the answers you get... I just finished
my own, from the ground up, version of a petabyte-class persistent
store for both objects and conventional C-struct row-based tables.
DB development is not my primary strength, but I used direct memory-
mapped I/O for most of the B-Tree and row-based tables. Locking was
not performed, per se. Rather, I used TO (transaction ordering) with
read / write timestamps on the items. I guess this amounts to
optimistic accessing without locks.
The initial development proceeded in Lispworks for both Mac and
Windows. Clozure is on my to-do list for PPC cores.
To my surprise, the direct-mmap I/O was about 10-100x faster than
conventional file I/O, and the large persistent store is not much
slower than a purely in-memory variant, a la Prevalence. (perhaps 10%
slower?)
Locking wasn't really entertained in my design since any shared
access goes through a central server. Something akin to Erlang in
Lisp -- but far better than Erlang.
Dr. David McClain
Chief Technical Officer
Refined Audiometrics Laboratory
4391 N. Camino Ferreo
Tucson, AZ 85750
email: dbm at refined-audiometrics.com
phone: 1.520.390.3995
web: http://www.refined-audiometrics.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20090317/0c0addde/attachment.htm>
More information about the Openmcl-devel
mailing list