メッセージ交換プラットフォームのSolace、Open Data Movementの概要を解説
メッセージングのプラットフォームを開発販売しているSolaceは、カナダのオタワに本社を持つ企業だ。先日行われたPivotalとGoogleの共同のイベントにスポンサーとして登壇し、約15分という短い時間ではあったが、スマートフォンを車に見立てたモニタリングシステムをデモとして実行していた。このデモはIoTの端末となるスマートフォンから上がってくるデータをメッセージとして処理するという内容であったが、Solaceのカントリーマネージャーである山口智之氏が強調していたのは、「規模が今の100台から100万台になった時に、システムはスケールできるのか?」という部分であった。
実際にECサイトなどのWebスケールのシステムを考えた時に、PoCレベルの規模から実運用、それも100万台規模のデバイスからデータが飛んでくることを想定すると、システムの性能を落とさずにスケールアウトできるシステムを実装できるベンダーはそれほど多くないだろう。しかもそれを単一のシステムに閉じずに、他のシステムと連携してデータを交換するようなユースケースにおいて、いかにメッセージ交換を堅牢に作るか? 障害時の対応をどうするのか? といった要件については、システムインテグレーターにとっても難しい問題である。
しかしSolaceのOpen Data Movementと呼ばれるプラットフォームでは、それが可能であるという。そこで日本にいるカントリーマネージャーの山口智之氏とディレクター・テクノロジーの肩書を持つ松木直基氏にインタビューを行った。
自己紹介をお願いします。過去の経歴なども教えてください。
山口:Solaceのセールスディレクターをしています。以前は、ロイターやシスコシステムズで仕事をしていました。またちょっと変わったところだと、ファーストリテイリングでも働いた経験があります。その後、ベンチャー関連の仕事をして、今はSolaceにいるという経歴です。
外資系IT企業を渡り歩くのはよくある話ですが、ユーザー企業にいたことがあるというのは珍しいですね。なぜですか?
山口:ITベンダーにいると、「どうしてこういうシステムを使わないのか?」「どうしてそういう判断になってしまうのか?」という疑問が湧くことがあります。買ってくれない理由がわからない。だからそれを理解するためには一度、ユーザー側に所属したほうが良いのでは? ということで決断をしました。まあ、期限を決めてという感覚ではありましたが。
松木:私は直前がティブコで、その前は東洋情報システムにいました。
どちらもエンタープライズ向けのITをやっていたということですね。そういう意味ではSolaceのソリューションを扱うにはうってつけですね。
松木:そうなりますね。
今回、SolaceのデモをPivotalとGoogleのCloud-Native Roadshowで拝見して、もっと深く聞いてみたいと思ったのでお時間をいただいたのですが、まずSolaceという企業について教えてください。
山口:Solaceはカナダのオタワで2001年に創業された会社です。現在は、社員が300名くらいです。実は日本には法人がありません。我々は本社に属していて、日本で仕事をしているという感じですね。かつてはSolace Systemsとして日本で活動を行っていましたが、名前を変えてIoTの盛り上がりに合わせてこれから営業を仕掛けていこうというところで私が参加したという流れですね。
Solaceの言う「Open Data Movement」というプラットフォーム? これが今ひとつ抽象的でわかりづらいので解説をお願いします。
山口:通常のコンピュータシステムだと一番下にハードウェアがあり、その上にオペレーティングシステム、その上にネットワークやミドルウェア、さらにその上にアプリケーションがあるというのは常識だと思います。実際にこれを複数のシステムが連携してデータをやり取りするようなケースを考えてみると、メッセージングやデータ交換って、デバイスや使い方によって色々なプロトコルがありますよね。
IoTデバイスだとMQTT、Web系のシステムだとRESTといったものでしょうか?
山口:そうです。そのプロトコルから出てくるデータについて「どこに保存するのか」というデータの持ち方や性能、障害時の対応などを考慮しないといけない。それってアプリケーションデベロッパーにとってはすごく面倒なことをお願いしていることになります。その部分をプラットフォームとして提供することで、アプリケーションを書くことに専念して欲しい、という思いがSolaceにはあるのです。
しかもかつてのように自社のデータセンターだけではなく、AWSやAzureのようなパブリッククラウドもプラットフォームとしては考えなければいけない。そうすると一つのプラットフォームの中だけでデータを交換するという話ではなく、「複数のプラットフォームをまたがった形でデータを交換、メッセージングを行うことが必要である」というのがOpen Data Movementの根幹の考え方です。具体的にはMQTTやAMQP、REST、WebSocketなどのシステムと接続することでメッセージを交換できますし、オンプレミスからパブリッククラウド、さらにOpenStackまでカバーしているのが特徴ですね。
データ交換というかメッセージングですとOSSでもKafkaやRabbitMQなど多くのソフトウェアがありますが、Solaceの製品はクローズドなのですか?
山口:Solaceの製品としてはSolace Message Routerというアプライアンスがあります。これはハードウェアの上でメッセージ交換を行う文字通りのルーターです。FPGAなどを駆使して最大20万コネクションを実現している製品になります。そしてそれをソフトウェアデファインド、つまりソフトウェアだけで実装したのが、VMR(Virtual Messaging Router)シリーズになります。これにはいくつかライセンス形態がありまして、コミュニティ版というのを無償で提供しています。
コミュニティ版というとOSSではベンダーからのサポートがなく、デベロッパーたちがお互いに助け合うという感じだと思いますが、Solaceのコミュニティ版というのは?
松木:これは有償版に機能制限をかけているもので、コネクション数の制限があります。それにHA(High Availability、高可用性)の機能とレプリケーションの機能がありませんが、他の機能は同じです。また製品に対する質問は、Stack Overflowを使ってコミュニケーションを行っています。Solaceのエンジニアも使っていますのでそこで問題が解決することもあります。
Solaceが言うところの「オープン」というのは、ソースコードというレベルの話ではなくて「様々なプロトコルやシステムとつながる」ということですね。
山口:そうですね。Solaceは特許を多く取得しているので、全てをオープンソースにすることはないと思います。我々のオープンさというのは、様々なオープンソースと連携できる、接続できると点にあるので、その部分はもっと訴求していきたいと思います。Pivotal Cloud Foundryについては、もうマーケットプレイスにSolaceのソリューションが登録されていますので、すぐに使い始めることができます。また無償版のCommunity Editionから有償版に乗り換える際もライセンスキーを変えるだけですので、システムの変更は必要ありません。
スライドにJavaのフレームワークのSpring BootとつながるところとMQTT、AMQP、それにRESTでもつながるというのがありましたが、これが少しわかりづらいのですが。下位のデバイス向けのプロトコルとアプリケーションのフレームワークが一緒になっているという。
山口:そうですね。これは上位のアプリケーションフレームワークからもデバイスレベルのプロトコルからもつながると言う意味で、インフラストラクチャーとアプリケーションの中間に存在するデータバスのプラットフォームということなのですが、確かに混ざっていますね(笑)。これについては、データを溜めるデータベースとデータをメッセージとして流す「Open Data River」という部分の違いを理解していただくとより分かりやすいのかもしれません。
データベース屋さんの発想だとデータセンターにあるマスターデータベースをクラウドにも置くためにはバッチ式に複製(レプリケーション)するのが当たり前ですが、データを直接データベースに書かずにメッセージとして流すことでクラウド側にレプリケーションができてイザという時にすぐに切り替えることができる、というような発想の転換が必要なのですか?
山口:そうすることでアクセスをするクライアント(スマートフォンなど)の数が膨大になった時にもスケールできるわけです。またディザスターリカバリーにも応用できます。
製品としての競合は何になりますか?
山口:個々の機能からみればRabbitMQやKafkaなどが挙げられますが、アプライアンスから仮想ルーターまで同じアーキテクチャーで一貫して開発を続けていて、性能や信頼性を保証して、同時にサポートまで提供できているのはSolaceくらいなので、あまり競合はいないと言っていいのかもしれません。ただオープンソースとの連携の良さがあまり伝わっていないので、その辺はこれからもっと訴求していきたいと思っています。
Solaceのソリューションは、少し前に流行ったSOAを覚えている人やJavaのメッセージングシステムであるJMSなどを活用している人であれば、現在の多様なプロトコル対応やデバイスからのデータ交換というニーズに応えるための次世代のプラットフォームとして理解が早いだろう。同時にマルチクラウド、ハイブリッドクラウドという時代の流れにも適応できる仮想メッセージルーターの登場で、応用範囲がオンプレミスからパブリッククラウド、さらにOpenStackなどのプライベートクラウドにも拡がっていると言える。現状では日本法人がないのが、エンタープライズ向けとしては弱点だろう。今後の成長に期待したい。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- PivotalとGoogleによる「クラウドネイティブのススメ」
- 企業システムの連携とオープンソースESB
- JBoss Fuseの機能概要
- レッドハット、グレープシステムと協同で地に足が着いたIoTソリューションを発表
- IoTの弱いリンクを直すきっかけとなるか? Red Hatのエンベデッドソリューション担当者に聞く
- JBoss Data Gridの構成とチューニングポイント
- Red Hat、新しいJBoss xPaaS製品を発表
- Open Infrastructure Summit上海、LINEに聞いた大規模なOpenStackクラスター運用のポイントとは?
- wolfSSL、MQTT v5.0をサポートする「wolfMQTT」をリリース
- ESBの成り立ち