-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Oleg Andreev
committed
Jun 14, 2008
1 parent
22034e6
commit 8ba0088
Showing
2 changed files
with
71,182 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
|
||
STORAGES OVERVIEW | ||
|
||
StrokeDB stores 2 kinds of things: | ||
|
||
1) Documents with all their versions. | ||
2) Views' index files. | ||
|
||
Documents are stored in the "document storages", | ||
view indexes are stored in (sic!) the "view storages". | ||
|
||
Document storage does two simple things: | ||
1) Gives a document for a given UUID (or UUID.VERSION) | ||
2) Stores a document with a given UUID.VERSION | ||
Also it allows you to iterate over all the documents, | ||
but this is done inside a View reindexing. | ||
|
||
View indexes are stored as ordered lists of key-value tuples. | ||
Value is a document UUID (or UUID.VERSION), key is an arbitrary | ||
structure relevant to the particular View. | ||
|
||
Views answer search queries and update the index with a #update method. | ||
|
||
|
||
DOCUMENT STORAGE | ||
|
||
|
||
|
||
|
||
|
||
The only "write" operation exposed by API is a Document#save! method. | ||
|
||
|
||
|
||
|
Oops, something went wrong.