マシンデータはいろいろなところで記録されている。Webサーバ、メール、データベース、セキュリティデバイスが吐き出すログやパケット、さまざまな計器のログ、センサー情報や設定ファイルなど多種多様だ。ここでまず課題が生まれる。大量のデータを読み込みたいのはいいが、そのようなさまざまな形式のマシンデータをどのように扱うのか。また、データが理解できなければ経営にとっても大きな課題になるのは必然だろう。ある顧客のケースでは、さまざまなデバイスからのマシンデータのフォーマットが4万3000種類に及んでいた。
もしリレーショナルデータベースに取り込むのであれば、データベース側に4万3000種類のフォーマット、すなわちスキーマを用意しなければならなくなる。しかも、データフォーマットはアプリケーションやセンサー、モバイルのソフトウェアの変更や躍進によって毎年増え続けていくという始末だ。
この課題を解決すべくSplunkは、シンプルにデータをそのまま取り込めるようにしている。今まではデータ取り込みのスキーマの定義に膨大な時間を費やしていたが、簡単に取り込むことで、取り込んだデータに対して必要な情報だけを後付けで定義し、必要に応じてその都度扱う。
データは「Key=Value」ペアで表す。Keyの部分は、いわゆるテーブル構造の先頭行の列名を表し、Valueは実データを表す。後で触れるが、Splunkのサーチ機能の中で、このKey=Valueペアを動的に組み込むこともできる。この動的な動作を「スキーマオンザフライ(Schema on the Fly)」と呼んでいる。その瞬間にスキーマが現れてサーチが実行され、サーチを終えるとスキーマが消える。Map Reduceや分散ファイルシステムのアーキテクチャ構成によって、多様なフォーマットのデータを柔軟かつ高速に処理している。ビジネスに「速度」を与えることが大きなメリットとの考えからである。
Copyright © ITmedia, Inc. All Rights Reserved.