Newline Separated JSON, Sorted String Tables.

npm install json-sst
1 downloads in the last week
5 downloads in the last month


Newline Separated JSON, Sorted String Tables.

This module is currently README only, just writing up these ideas, hopefully to implement them soon, and use them to build a
leveldown clone in pure js.


Experimental: Expect the unexpected. Please provide feedback on api and you use-case


openSST(file, cb)

Open at SST.

createSST(file, [iterator1, iterator2,...], cb)

Create a new SST from two or more iterators. Once the table is completely written it cannot be altered.

It is not possible to alter a SST once it's written.

createIterator (opts)

Create an iterator with the same api as levelDOWN#iterator

get(key, function cb (err, value))

Retrive a value. This will probably be implemented via a binary search.

Implementation Ideas.

An SST will be persisted as sorted {key: key, value: value} json pairs, then a footer. The footer will can have meta information, such as the size of the file, and a bit of information about the keys in the SST, such as a partial table of key locations, which could be used to improve the performance of the binary search.

This could be combined with a module for a JSONLog which would have createIterator and get but also, put',batchanddelete`.

These two modules could be combined to make a simple leveldb clone in pure JS!



npm loves you