Norikra(ノリクラ)。ストリームデータ処理エンジンです。リアルタイムイベントストリームデータに対して、SQLライク言語でスキーマレスなデータ処理が可能です。手軽に利用できる点が特徴です。

オープンソースのストリームデータ処理/Norikraとは

Norikra(ノリクラ)。ストリームデータ処理エンジンです。リアルタイムイベントストリームデータに対して、SQLライク言語でスキーマレスなデータ処理が可能です。手軽に利用できる点が特徴です。

基本情報

概要

Norikra(ノリクラ)とは、ストリームデータ処理エンジンです。リアルタイムイベントストリームデータに対して、SQLライク言語でスキーマレスなデータ処理が可能です。手軽に利用できる点が特徴です。

基本説明

Norikraは、ログなどのストリームデータをSQLライク言語で検索/抽出するためのストリームエンジンです。JSON形式データに対してリアルタイムでデータ処理を行います。

NorikraはJRubyで実装されています。JRubyであるため、マルチプロセス稼働が可能です。バックエンドエンジンには、SQLライクにストリーム処理を行えるJavaライブラリ「Esper」が使用されています。

「ユーザフレンドリーなストリーム処理」を標榜しています。同様なストリーム基盤である「Apache Spark」「Apache Storm」に比べて、非常に手軽に使える点が特徴です。簡単にクエリ追加/削除を行えます。

使用例

使用例(1)
アクセスログ(Nginx、Apacheなど)をNorikraに流し込み、「n分あたりのアクセス数」「n分あたりのレスポンスタイム」をリアルタイムに集計します。

使用例(2)
「Elasticsearch + kibana + fluentd + Norikra + Zabbix」でログをリアルタイム可視化します。あらかじめ、Norikraでデータ集計して無駄なものを省いておくことにより、解析コストを抑えられます。Zabbix連携により、検出/解析/通知までの一連の流れを自動化できます。

使用例(3)
不特定多数のクライアントからAPIが呼び出される環境において、各クライアントのアクセス頻度/レスポンス内容を確認するために、Norikraでクライアント別ステータスコードを集計し、kibanaでリアルタイムに可視化します。

使用例(4)
OpenStackが出力する大量のログをNorikraのSQLストリーミング解析にかけることにより、ログ量の傾向から攻撃/障害/故障の検出を行います。

TOPに戻る

主な特徴

スキーマレス

事前スキーマ定義は必要なく、NorikraにJSON形式データを送れば自動的にスキーマを作成します。データ型の明示的指定も可能です。

クエリ

Norikraは、「EPL」というSQLライククエリで処理を記述できます。データの集計/検索/結合/サブクエリなどをSQLのように記述できます。

クエリウィンドウ

Norikraのクエリでは、「ウィンドウ」という対象範囲指定が可能です。

ストリームで流れてくるデータ範囲を「ウィンドウ」として定義できます。「現在からの時間」「現在からの個数」「単位時間ごと」などの定義ができます。

期間ごとにデータを切り出して集計できます。

fluentdプラグイン

fluentdプラグインが用意されています。fluentd経由でデータを吸い上げて集計できます。

WebUI

WebUIが用意されています。クエリ作成/クエリ動作確認/結果確認などが行えます。サービス再起動なしでクエリを変更できます。

TOPに戻る

同様製品(概要情報)

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Apache Spark」「Apache Storm」など。

TOPに戻る

導入事例

「メルカリ」「KAYAC」「Gunosy」などでの導入事例があります。

TOPに戻る

ライセンス情報

Norikraのライセンスは、「GNU General Public License v2」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

TOPに戻る

ダウンロード

ダウンロードページ

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

Norikra最新TOPICS

最新情報はありません。

Norikra最新CLOSEUPコラム

  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter