Hi,

I would implement the storage layer ourselves. It could look like:

- FileDataStore: keep as is (maybe reduce the directory level by one).

- Each node has a number (I would use a long). Used for indexing.

- MainStorage: the node data is kept in an append-only "main
persistence storage". When switching to a new file, the node lookup
table (node index) is appended. An optimization step would separate
less updated nodes ("old generation") and frequently updated nodes.
Nodes and its child nodes are grouped together.

- Namespace index, name index, nodetype registry: start with a fixed
(hardcoded) list, and store additional entries as system nodes.

Regards,
Thomas

Reply via email to