带流移动日志的模块化数据库 – flumedb

flumedb

应用于流移动日志的模块化数据库。

结构

Flume是一个模块化数据库,它支队追加的日志进行访问,然后在该日志上流动视图。这形成了一个星形管道,或者说,有一个管道从日志到每个视图,但日志是每一个管道的一部分。

示例

取flumelog-*模块和零或者更多flumeview-*模块,将它们附于flumedb.

var MemLog = require('flumelog-memory') // just store the log in memory
var Reduce = require('flumeview-reduce') //just a reduce function.
var Flume = require('flumedb')

var db = Flume(MemLog())
  //the api of flumeview-reduce will be mounted at db.sum...
  .use('sum', Reduce(function (acc, item) {
    return (acc || 0) + item.foo
  }))

db.append({foo: 1}, function (err, seq) {
  db.sum.get(function (err, value) {
    if(err) throw err
    console.log(value) // 1
  })
})

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:带流移动日志的模块化数据库 – flumedb