非構造化データに対して、”破壊的アプローチ”でデータを格納
Splunkは独特なデータプラットフォームだ。データベースのデータだけではなく、サーバーやネットワーク機器のログ、センサーデータなど多種多様なデータを収集し、分析し、可視化までカバーする。一時期Splunkは「データセンターのGoogle」とも呼ばれていた。データセンターにあるありとあらゆるサーバーや機器のログから必要なデータを「ググる」ように抽出するためだ。Splunkをイメージするにはぴったりの言葉だ。
普段Googleを使い慣れていると、「ググる」ことは難しくないように感じてしまう。しかしGoogleに保存されていない、自社やデータセンターにあるデータをググるように横断的に検索するのはそう簡単ではない。サーバーやシステムごとに文字列検索のコマンドを打ち続けることになるかもしれない。だとしたら気が遠くなる作業だ。
同社 Director of Technology Product MarketingのNate McKervey氏はSplunkの技術について「非構造化データに対して破壊的アプローチでデータを格納している」と説明した。
ここは従来型となる構造化データと比較して考えると分かりやすい。構造化データはRDBMSに格納するテーブルのスキーマに合わせてデータを書き込んでいく。これに対してSplunkは対照的なアプローチをとる。
Splunkはデータをそのまま読み込んでいく。データの区切りがあればデータは項目として区切られる。データウェアハウスのETL(抽出、変換、ロード)のように加工処理は行わないということだ。McKervey氏によると読み込まれたデータは「インデックス化される」。このインデックスはイメージとしてはRDBMSのものというよりは、データへのポインタなのでマッピングに近いようだ。SplunkはRDBMSではなく、かといってNoSQLでもなく、全文検索をイメージするとよさそうだ。データの全文検索を高速処理するための独自技術がSplunkの大きな特徴となる。
またMcKervey氏はSplunkを「完全に統合されたプラットフォーム」と言う。扱えるデータが多様なだけではなく、あらゆる段階をカバーするということだ。データの収集から始まり、データのインデックス化、検索と調査、アラートと対策、レポートと可視化、予測に至るまでSplunkで行うことができる。あれこれツールを使い分ける必要がない。
もともとSplunkはデータセンターにおける運用管理を想定し、多種多様なログを横断的に解析して可視化する機能を提供していた。しかし後でセキュリティ方面でも有効だということが顧客によって発見されたという面白い特徴がある。つまり顧客から「これ、セキュリティ対策にも使えるよ」と指摘されたことがきっかけで、セキュリティのソリューションとしても伸びてきている。