[elephant-ticket] Re: #24: Prevalence-style storage options
elephant
elephant-devel at common-lisp.net
Mon Apr 2 01:32:00 UTC 2007
#24: Prevalence-style storage options
--------------------------+-------------------------------------------------
Reporter: ieslick | Owner: ieslick
Type: enhancement | Status: new
Priority: major | Milestone:
Component: system-wide | Version:
Resolution: | Keywords:
--------------------------+-------------------------------------------------
Changes (by ieslick):
* milestone: Release 0.9.2 =>
* priority: critical => major
Old description:
> Make storage policy decisions on per-class (or per-instance) basis
>
> Concurrent mode
> * The existing all transactions to memory
> * For backends that allow multiple processes to connect
> * Full ACID functionality
>
> Single-threaded objects
> * Cache values in instance slots for fast reads
> * Writes update slots and write to disk as normal
> * Violates consistency and isolation; users must enforce single operator
>
> Prevalence mode
> * Standard object model (user enforced ACID properties)
> * Read/write to normal slots
> * Backup slot values on object creation and explicit synch calls on
> class or instances
> * In-memory slot indexing? Write-through disk class indexing?
New description:
Make storage policy decisions on per-class (or per-instance) basis
Concurrent mode
* The existing "all transactions read/write disk"
* For backends that allow multiple processes to connect
* Full ACID functionality
Single-threaded objects
* Cache values in instance slots for fast reads
* Writes update memory slots and also write to disk as normal
* Violates consistency and isolation; users must enforce single operation
Prevalence mode
* Standard object model (user enforced ACID properties)
* Read/write to normal slots
* Backup slot values on object creation and explicit synch calls on class
or instances
* In-memory slot indexing? Write-through disk class indexing?
Comment:
This has some significant implications, but the total code size should not
be that high so we can look at this _if_ we get some customer requests for
prevalence style data models.
--
Ticket URL: <http://trac.common-lisp.net/elephant/ticket/24>
elephant <http://common-lisp.net/project/elephant>
elephant
More information about the elephant-ticket
mailing list