Permalink
Fetching contributors…
Cannot retrieve contributors at this time
112 lines (72 sloc) 4.02 KB
****** OBJECT IDS (64 bits) *******
+------------+----------------------------------------------------------+
| Storage ID | Random Bytes |
+------------+----------------------------------------------------------+
****** DATABASE META-DATA *******
- The meta-data area spans all keys with first byte 0x00
- Keys with first byte 0x00 and second byte 0x00 through 0xfe (inclusive)
are reserved by JSimpleDB and must not be modified.
- Keys with first byte 0x00 and second byte 0xff are ignored by JSimpleDB
and may be used for custom user applications.
Format Version
+------+------+-----------------+ +-------------------+
| 0x00 | 0x00 | 'JSimpleDB' | | Format Version |
+------+------+-----------------+ +-------------------+
Recorded Schemas
+------+------+-------------------+ +---------------------------+
| 0x00 | 0x01 | Version Number | | Compressed Schema XML |
+------+------+-------------------+ +---------------------------+
Object Version Index
+------+------+-------------------+---------------+ +---------+
| 0x00 | 0x80 | Version Number | ObjId | | (Empty) |
+------+------+-------------------+---------------+ +---------+
User meta-data area
+------+------+-----
| 0x00 | 0xff | ...
+------+------+-----
****** OBJECTS *******
+------------+ +-------------------+----------------+-----------------+
| Object ID | | Meta-Data Version | Object Version | Delete Notified |
+------------+ +-------------------+----------------+-----------------+
****** SIMPLE AND COUNTER FIELDS *******
+------------+---------------+ +---------------+
| Object ID | Storage ID | | Value | (non-default only)
+------------+---------------+ +---------------+
****** COMPLEX FIELDS *******
Set Field Element
+------------+---------------+---------------+ +---------+
| Object ID | Storage ID | Element | | (Empty) |
+------------+---------------+---------------+ +---------+
List Field Element
+------------+---------------+---------------+ +---------------+
| Object ID | Storage ID | List Index | | Element |
+------------+---------------+---------------+ +---------------+
Map Field Entry
+------------+---------------+---------------+ +---------------+
| Object ID | Storage ID | Map Key | | Map Value |
+------------+---------------+---------------+ +---------------+
****** SIMPLE INDEXES *******
Simple Field Index
+------------+---------------+---------------+ +---------+
| Storage ID | Value | ObjId | | (Empty) |
+------------+---------------+---------------+ +---------+
Set Element Field Index
+------------+---------------+---------------+ +---------+
| Storage ID | Element | ObjId | | (Empty) |
+------------+---------------+---------------+ +---------+
List Element Field Index
+------------+---------------+---------------+--------------+ +---------+
| Storage ID | Element | ObjId | List Index | | (Empty) |
+------------+---------------+---------------+--------------+ +---------+
Map Key Field Index
+------------+---------------+---------------+ +---------+
| Storage ID | Map Key | ObjId | | (Empty) |
+------------+---------------+---------------+ +---------+
Map Value Field Index
+------------+---------------+---------------+--------------+ +---------+
| Storage ID | Map Value | ObjId | Map Key | | (Empty) |
+------------+---------------+---------------+--------------+ +---------+
****** COMPOSITE INDEXES *******
+------------+-------------+...+-------------+--------------+ +---------+
| Storage ID | Value 1 |...| Value N | ObjId | | (Empty) |
+------------+-------------+...+-------------+--------------+ +---------+