1.0.0 • Published 9 years ago

level-gql v1.0.0

Weekly downloads
3
License
MIT
Repository
github
Last release
9 years ago

level-gql

NPM

This is an incomplete implementation of a gql interpreter for a level key value store backend.

I did this at my bus ride home after conc.at where I was inspired by contras talk about genome.js.

It of course runs faster queries, e.g determining if Eric has norovirus immunity took 20.55s with gql but 0.16s with level-gql on my machine. However you have to create the level-dna store first, which takes much longer than 20 seconds. But once you have it there, querying is fast.

usage

Asume you have a level filled with genome data from level-dna You could run an analysis like this:

var leveldb = require('levelup')
var gql = require('level-gql')

var db = leveldb('./test')

var query = gql(db)

query.needs(3)
query.has('rs10024955', 'A')
query.exists('rs10024986')
query.or(query.has('rs10024955', 'A'), query.exists('rs10024986'))
query.and(query.has('rs10024955', 'A'), query.exists('rs10024986'))
query.percentage(function (err, value) {
  console.log(value)
})