kdb-tree-store
Version:
kdb tree implementation using a chunk store
35 lines (31 loc) • 784 B
JavaScript
var kdbtree = require('.')
var fdstore = require('fd-chunk-store')
var n = 50000
var kdb = kdbtree({
types: [ 'float64', 'float64', 'uint32' ],
// store: require('memory-chunk-store')(4096)
store: fdstore(4096, 'kdb')
})
var spread = 200
var pending = n
console.time('insert')
function insert () {
if (!pending) return check()
var x = Math.random() * spread - spread/2
var y = Math.random() * spread - spread/2
var loc = Math.floor(Math.random() * 1000)
var start = Date.now()
kdb.insert([x,y], loc, function (err) {
pending--
insert()
})
}
insert()
function check () {
console.timeEnd('insert')
console.time('query')
kdb.query([[-150,150],[-150,150]], function (err, pts) {
console.timeEnd('query')
console.log('done', pts.length)
})
}