Norikra

Norikra is an open-source Stream Processing Server with SQL.

  • Schema-less event streams (called as 'target')
  • SQL processing with window specifier supports, and JOINs, SubQueries
  • Complex input/output events with nested Hashes and Arrays, and Query supports
  • Dynamic query registration/removing, without any restarts
  • Ultra fast bootstrap and small start
  • UDF plugins

Install and Execute

On JRuby environment, do these command (and, that all):

gem install norikra

To execute:

norikra start

For JRuby installation, you can use rbenv, rvm and xbuild, or install JRuby directly.

Install and launch

See: http://norikra.github.io/

How to execute norikra server and tests in development

Fix code and tests:

  1. clone this repository
  2. run bundle install w/ jruby
  3. add/fix spec in spec/*_spec.rb
  4. fix code in lib
  5. run bundle exec rake

Run tests faster than 2 or more times:

  1. execute spork
  2. execute script/spec_server_pry in another terminal
  3. run rspec in pry console (executed fastly after second times)

Execute norikra server with target/query continuation:

  1. bundle exec rake devserver
  2. Ctrl-C and re-execute for updated code

Clients

Use norikra-client cli command. These are available on both of JRuby and CRuby.

https://rubygems.org/gems/norikra-client https://rubygems.org/gems/norikra-client-jruby

And the client library for application developers are also included in these gems.

https://github.com/norikra/norikra-client-ruby

For other languages:

Events and Queries

See: http://norikra.github.io/

Changes

  • v1.0
    • Esper-5.0 bundle
    • Pattern support
    • Nested object support
    • Built-in default JVM options
    • JSON APIs
    • Many more features
  • v0.1
    • First release for production usage

See Changes.md for details.

  • Copyright (c) 2013- TAGOMORI Satoshi (tagomoris)
  • License
    • GPLv2