IoTに適したNoSQL・分散Key-Valueストア
NoSQLという言葉をご存知の方は多いと思いますが、実際に使ってみたことがある方はまだ少ないのではないでしょうか?
これまでは一部のWebサービス企業などで利用されてきたNoSQLですが、最近では様々な企業で導入が進んでいます。しかし現状ではまだNoSQLに関する情報が少なく、導入にはハードルが高いところもあると思います。そこで今回、NoSQLに関する知見を増やすため、近年注目されているIoT(Internet of Things)への適用を想定した書き込み性能検証を実施しました。本連載では、その検証結果についてご紹介したいと思います。NoSQL導入の参考になれば幸いです。
最近よく聞くようになったIoTですが、システム化に際してはデータストア(データを保存しておくシステム)に関して、従来のシステムとは違った課題があります。第1回では、IoTにおけるデータストアの課題と、それに対する解決策としてNoSQLをご説明します。さらに、数あるNoSQLの中で特にIoTに適していると考える分散Key-Valueストアの「okuyama」と「Riak」をご紹介します。
IoTにおけるデータストアの課題
IoTは「モノのインターネット」と訳されますが、あらゆるモノをインターネットに接続して管理・操作しようという概念です。近年ではセンサーやネットワークなどの要素技術が整ってきており、加えてビッグデータ(従来のシステムでは扱えない規模の大量データ)への関心の高まりから、IoTを利用したデータ収集・活用が注目されてきています。
ガートナーのプレスリリースによると、
「2017年までに20%以上の企業が、従来の情報機器とは異なるセンサーや組み込み機器などを利用し、ビジネスを取り巻く環境をデジタル化する。多様な情報を収集、分析することで製品やサービスをより効果的に提供するために、モノのインターネットに関する新たな取り組みを行う。」
— ガートナー、2014年以降の日本企業のITインフラストラクチャの将来に向けた展望を発表
と予想されています。
上述のように、IoTではセンサーなどの機器が生成するデータを分析するために、必要な期間分のデータを収集・蓄積しておく必要があります。このセンサーデータを蓄積するデータストアの課題として、次の3点が挙げられます。
1.大量データの蓄積
IoTではリアルタイムでのデータ分析のニーズが高く、センサーのデータ記録・生成回数は多くなる傾向があります。またデータの収集範囲を拡大するほど、センサー台数は大量になっていきます。そのため、1件あたりのデータサイズは小さくても、全体のデータ量としては大量になります。加えて長期的にデータを蓄積していくケースも想定されるため、大容量のデータストアが必要となります。
2.高速な書き込み処理
多数のセンサーから高頻度にデータが送信されるため、データストア側では膨大な件数のデータを同時に受信することになります。そのため、大量の件数を高速に書き込める処理性能が必要となります。
3.非構造(非定型)データの保存
センサーデータの形式は各センサー機器に依存しており、取り扱う機器によって数値・テキスト・画像など様々な形式があります。また異なる形式のデータが混在するケースも想定されます。そのためデータストアは、このような非構造データを保存できる必要があります。
このような課題に対応したものとして、NoSQLと呼ばれるデータストアが注目されています。いったいNoSQLとはどのようなものなのでしょうか? 次節にて見ていきたいと思います。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- センサーデータ蓄積を想定したKVS性能検証・観点と方法
- データ分析システムの全体像を理解する(7) データレイクとNoSQLデータベース
- MongoDB Tokyo 2013で語られた、NoSQLを上手に使うためのポイントとは
- NOSQLの新顔、分散KVS「okuyama」の機能
- Riak、okuyamaのデータ書き込み性能を検証する
- NOSQLは「知る時代」から「使う時代」へ
- MySQL Clusterの特徴とアーキテクチャ
- HBaseの概要とアーキテクチャ
- NoSQL/KVSあれこれ:Red Hat JBoss Data Gridとは
- 楽天モバイルが認めた、新基準のオープン・ソース分散SQLデータベース「YugabyteDB」〜高可用性、パフォーマンス等、妥協なきプラットフォームの実現