ordered-kv-index
v1.0.1
Published
Secondary field index with ordered lookups and range scans, built on btree-core.
Maintainers
Readme
ordered-kv-index
Secondary field index with ordered lookups and range scans, built on btree-core.
Install
npm install ordered-kv-indexUsage
const OrderedKvIndex = require('ordered-kv-index');
const users = new OrderedKvIndex(
(user) => user.age, // indexed field
(user) => user.id // primary key
);
users.put({ id: 1, name: 'Ada', age: 30 });
users.put({ id: 2, name: 'Bob', age: 25 });
users.put({ id: 3, name: 'Cara', age: 30 });
users.find(30);
// [{ id: 1, name: 'Ada', age: 30 }, { id: 3, name: 'Cara', age: 30 }]
users.findRange(25, 30);
// Bob, Ada, CaraAPI
| Method | Description |
| --- | --- |
| put(record) | Insert or update |
| get(primaryKey) | Lookup by primary key |
| find(indexKey) | Exact match on indexed field |
| findRange(low, high) | Inclusive range on indexed field |
| delete(primaryKey) | Remove by primary key |
| clear() | Remove all |
| toArray() | All records |
| size | Number of records |
License
MIT
