0.8.3 • Published 5 years ago

hexadb v0.8.3

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

Hexa DB

npm npm npm downloads build status

Install via npm

$ npm install --save hexadb

Performance

These are just very rough figures, obtained with the UWN dataset on an i5-4278U @ 2.6 GHz, running io.js 2.2.1 on Windows 10.

Read

Read 128561 triples
Speed: 8000 triples/sec
Speed: 0.13 ms/triple

Write

HDD:
Inserted 128561 triples
Speed: 2000 triples/sec
Speed: 0.50 ms/triple

SSD:
Inserted 128561 triples
Speed: 2308 triples/sec
Speed: 0.40 ms/triple

Usage

var level = require( 'level' )
var HexaDB = require( 'hexadb' )
// Create a new instance
var db = new HexaDB( level( path ) )

Triples

// Triples can be Arrays in (spo) order
var triple = [ 'subject', 'predicate', 'object' ]
// Or Objects, either with short or long keys
var triple = { s: 'something',  p: 'else', o: 'is happening' }
// This is the form in which HexaDB returns them in results
var triple = {
  subject: 'something',
  predicate: 'else',
  object: 'is happening',
}

Variables

// A triple with variables can be used for
// search queries (also for get queries, but
// variables won't be bound)
var triple = {
  // This is what a variable is made of
  s: new HexaDB.Variable( 'varname' ),
  p: 'hasStars',
  // And this is the shortcut to it
  o: db.v( 'shortvar' )
}

Query Options

var options = {
  offset: 0,
  limit: -1,
  fillCache: true,
  reverse: false,
}

API

Methods

Get

db.get( triple, options, function( error, result ) {
  // ...
})

Put

db.put( triple, function( error ) {
  // ...
})

Update

db.update( oldTriple, newTriple, function( error ) {
  // ...
})

Delete

db.delete( triple, function( error ) {
  // ...
})

Search

db.search( query, options, function( error, result ) {
  // ...
})

GetStream

var stream = db.getStream( pattern, options )

PutStream

var stream = db.putStream()

UpdateStream

var stream = db.updateStream()

DeleteStream

var stream = db.deleteStream()

SearchStream

var search = db.searchStream( query, options )
0.8.3

5 years ago

0.8.2

9 years ago

0.8.1

9 years ago

0.8.0

10 years ago

0.7.1

10 years ago

0.7.0

10 years ago

0.6.0

10 years ago

0.5.1

10 years ago

0.5.0

10 years ago

0.4.0

10 years ago

0.3.0

10 years ago

0.2.0

11 years ago