#Kine
Kine makes reading from an aws kinesis stream easy.
Features:
- Kinesis Client Library like functionality:
- coordination between multiple instances
- reads from all available shards
- start by passing in
init
and processRecords
callbacks - checkpointing in dynamo
How to use
var Kine = require('kine');
var kcl = Kine({
region: 'us-east-1',
streamName: 'teststream',
shardIteratorType: 'TRIM_HORIZON',
table: 'teststream-kine',
init: function(done) {
console.log(this.id)
done();
},
processRecords: function(records, done) {
console.log(records.length);
console.log(this.id);
done(null, true);
}
});
kcl.stop
A kine instance can be halted using stop
. This will cause any future events to bail out and
remove internal timers
var Kine = require('kine');
var kcl = Kine();
kcl.stop();
kcl.instanceInfo
An instance can be queried by record Partition Key. This allows applications to locate which
shard and instance are responsible for particular records in the stream.
var Kine = require('kine');
var kcl = Kine();
kcl.instanceInfo('0230102', function (err, info) {
});