Shoeisha Technology Media

EnterpriseZine(エンタープライズジン)テクノロジーでビジネスを加速するための実践Webメディア

テーマ別に探す

IoTで生まれる膨大なデータを扱う仕組み、MapR Streamsについて訊いた

2016/01/25 06:00

 多くのHadoopディストリビューションでは、その核とも言える分散ファイルシステムの部分はオープンソースのHDFSをそのまま利用しているものが多い。そんな中、マップアール・テクノロジーが提供している「MapR」では、ファイルシステムを独自開発しているのが特徴だ。現状のMapRは、1つのHadoopディストリビューションと言うよりは、さまざまな機能を追加したコンバージド・データ・プラットフォームとなっている。そして、このプラットフォームに新たに加わったのが「MapR Streams」だ。これはMQやJMS(Java Message Service)のようなメッセージブローカーであり、今後拡大が期待されるIoTに対応するために必須の機能でもある。MapR Streamsとはいったいどんなものなのか、さらにはMapRの今後の製品戦略について、マップアール・テクノロジーズの最高技術責任者で共同創設者でもあるM. C. スリバス氏に話を訊いた。

MapR StreamsはIoTで生まれる膨大なデータを扱うためのワールドワイド対応の仕組み

マップアール・テクノロジーズの最高技術責任者で共同創設者でもあるM. C. スリバス氏
マップアール・テクノロジーズの最高技術責任者で共同創設者でもあるM. C. スリバス氏

Q:MapR Streamsでは具体的にどんなことができるのでしょうか?

スリバス:MapR Streamsは、毎秒何十億ものデータを取得できる仕組みです。得られるデータは100%信頼できるものになります。データソースは何億あってもかまいません。たとえば、何百万のデータソースがあっても、5ミリ秒程度でデータを受け取ることができます。

 Streamsの仕組みは、ワールドワイドな接続環境にも対応します。数多くのクラスターに対応し、ソースとなるようなミニチュア・データセンターは何十万とあってもかまいません。ここで言うミニチュア・データセンターは、たとえばクルマやトラックなど大量なデータが発生するもののことです。

Q:今では他社からもストリームデータを処理する仕組みやIoT対応と言われる製品が出ています。MapR Streamsはそれらとどんなところが違うのでしょうか?

スリバス:もっとも違うのは、毎秒何十億ものデータを処理できることです。そしてデータを受け取るクラスターがたとえば10万あってもいい。それらがワールドワイドに展開していてもデータを受け取ることができます。これができるのはMapR Streamsだけだと考えています。さらにHadoopデータベース、Spark、ストレージなどと連携した1つのプラットフォームになっているのもMapR Streamsだけです。1つのプラットフォームになっているのでファイルシステムのデータも、データベースにあるデータも、IoTから得られるストリームデータでも、SQLのクエリーを使って統合的に取得できます。

Q:他社のものより優れていると言いますが、現時点でMapR Streamsに弱点や足りないところはないのですか?

スリバス:もちろんまだ弱いところ、改善すべきポイントはたくさんあるでしょう。メッセージブローカーの技術に関しては先人が前を走っているので、それを辿っていくところもあります。また、将来的には、私たちの製品よりも優れている技術も出てくるかもしれません。とはいえ今は、MapRは市場にベストな製品を提供できていると考えています。弱点もありますが、それが顕在化して製品の弱味となるようなものではありません。

 今後拡張したいポイントとしては、セキュリティがあります。そのためのプロジェクトである「Cheyenne(ネイティブアメリカンのシャイアン族の名前)」はすでに動き始めています。これは次世代のセキュリティ基盤となるもので、100%オープンソースとして開発しています。セキュリティのあり方、実行の仕方を変えるようなものです。

 Cheyenneは、StreamsだけでなくMapRの製品全体に関わるものでもあります。その他にもSparkやImpala、Dockerコンテナベース、ワークフローなどにも関わるでしょう。

StreamsとSparkはIoT時代に極めて重要な補完関係となる

Q:ここ最近、Hadoop周辺ではSparkに話題が集まっています。MapR StreamsとSparkの関係性はどのようなものになりますか?

スリバス:この2つは、もっとも高いレベルで連携するものです。Streamsはデータのトランスポーティングの役割を担います。それで集められた多量なデータを処理するのがSparkの役割です。これら2つは、IoTの時代に極めて重要な補完関係を築くものになります。

Q:メッセージブローカー的な機能としては、Apache Kafkaがあります。MapR StreamsではKafkaを取り込むのではなくKafka互換のAPIを持っているとのことですが、なぜAPI互換だけなのですか?

スリバス:StreamsをKafkaベースにしなかったのは、自分たちでフルに統合化できるものにしたかったからです。つまり、MapRの1つのプラットフォーム上で動くようにしたかったのです。Kafkaベースの仕組みにしていまうと、メッセージブローカーのためにもう1つ別のクラスターを構成しなければなりません。ユーザーは、管理すべきクラスターが増えることを望んでいません。

 それと、Kafkaはシングルクラスターベースの仕組みです。これではワールドワイドに展開することは難しいというのもあります。グローバル展開するようなIoTの用途では、Kafkaだと限定的なものになると判断したのです。

 一方でKafkaのAPIを選んだのは、Kafkaがすでにユーザーに使われているからです。すでに使っている人がいるのならば、彼らがそのまま使えるようにしたほうがいいでしょう。もちろんMapR StreamsはKafkaから学んだ部分もあります。MapR Streamsをいかに効率的にするかといったところは、Kafkaから学んでいます。

※この続きは、会員の方のみお読みいただけます(登録無料)。


著者プロフィール

  • 谷川 耕一(タニカワ コウイチ)

    EnterpriseZine/DB Online チーフキュレーター ブレインハーツ取締役。AI、エキスパートシステムが流行っていたころに開発エンジニアに、その後雑誌の編集者を経て、外資系ソフトウェアベンダの製品マーケティング、広告、広報などを経験。現在は、オープンシステム開発を主なターゲットにし...

  • DB Online編集部(ディービーオンライン ヘンシュウブ)

    DB Online編集部 翔泳社 EnterpriseZine(EZ)が提供するデータベース/データテクノロジー専門メディア「DB Online」編集部です。皆様からの情報お待ちしています。 Twitter : https://twitter.com/db_online Fac...

バックナンバー

連載:DB Press

もっと読む

この記事もオススメ

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5