ツール受賞・表彰イベント閉じるホーム柔軟性の高いストリームデータ処理により多彩なリアルタイムサービスを可能にする「Dracena」labs_sns.jscase-studies-extension.cssfdda-common-2.0.1.cssarticle.min.css柔軟性の高いストリームデータ処理により多彩なリアルタイムサービスを可能にする「Dracena」IoT技術の進展により、センサーから取得したデータをリアルタイムに処理して活用するサービスが続々と登場しています。そのために必要となる技術が「ストリームデータ処理」ですが、従来の技術では、データ処理を更新・追加する際に全体を一時的に止める必要があり、柔軟かつ迅速にサービスを開発・発展させることができませんでした。4名の技術者に話を伺いました。スーパーミドルウェア・ユニットCPSプロジェクト従来のストリームデータ処理の課題解決に挑むIoT技術の急速な発展が続く今、各種センサーデバイスから取得した大量のデータをリアルタイムに分析・処理し、様々なサービスに素早く活用するというニーズがあらゆる業種業界で高まっています。自動車業界では、“CASE(Connected、Autonomous、Shared&Service、Electric)”の潮流が押し寄せる中、自動車から取得した膨大なデータをリアルタイムに活用するコネクテッドカーの基盤構築に向けた動きが加速しています。速度・位置などのデータをリアルタイムに分析して処理し、道路の混雑状況を可視化して渋滞を回避したり、事故などの危険情報を知らせたりしてドライバーをアシストし、運転の安全性を高めることを可能にする基盤の設計・開発が進められています。従来のデータ処理の方法には解決すべき課題が残されています。シニアマネージャーの植木美和は、課題について次のように説明します。「コネクテッドカーの場合、運転中の自動車から秒単位で流れてくる大量のデータから、車両一台一台の状態や道路の状況を高速に得るには、並列分散でデータをストリーム処理できるシステムが必要です。従来の技術では、サービスの処理内容を一部でも追加・変更するたびに一時的にサービスを停止しなければなりません。CPSプロジェクトでは新たに、大量のデータ処理を停止させることなくサービスを追加・変更できるストリームデータ処理アーキテクチャーの開発に取り組むことになります。植木は「当初は富士通研究所内のIoTシステムを研究していたグループがコンセプトを策定してこの課題にアプローチしましたが、最適な解が見つからず思うように進みませんでした」と当時の課題を振り返ります。その突破口を開いたのは、同じく富士通研究所でソフトウェアを研究していたグループから紹介されたある技術でした。CPSプロジェクトの板倉宏太は次のように説明します。Flink』をベースに、異なる専門性を持つ研究者が横断的なチームを立ち上げ、課題に対し協力して取り組む形で独自技術の研究開発が始まりました。Architecture:ドラセナ)』です」Dracenaは、サービスを停止することなく、大量のリアルタイムデータ処理を続けながら、新たなデータ処理をプラグインとして動的に追加・変更することができる処理基盤です。従来のように、機能追加のために一度システムを停止したり、データ分析のためにバッチで処理を行ったりする必要がありません。サービス追加など開発における高い拡張性と柔軟性を持ったストリームデータ処理が可能になります。「特にセンサーデータなどを活用したサービスを実現するには、処理を変えたり、パラメーターを変えたりして結果を見ながら、試行錯誤を繰り返してアジャイルにサービスを開発していくことが重要です。したアジャイルな開発とノンストップ運用を両立するDracenaはリアルタイムなデータ活用基盤として有効です」と植木氏は説明します。実世界の多種多様なIoTデータは、これまで用途やシステムごとに収集されるケースが多く、サービスをまたがって高速にデータを連携させることが困難でした。Dracenaでは、ストリーム処理の中でデータを「ヒト・モノ・コト」などのオブジェクト単位で扱い処理結果をシェアできるよう、データの保持と処理の仕方を工夫することで様々なサービスでの利用性を向上させました。富士通研究所は100万台の車両(オブジェクト)から速度・位置情報など秒ごとに膨大データが送られてくるというシステムに対してDracenaを適用した場合の、新しいサービスや機能(例:急ブレーキの車を検出するなど)を追加するケースを想定したシミュレーションを実施しました。その結果、データ処理中に別の新しいデータ処理が追加された場合でも、遅延増加が平均5ミリ秒以内でサービスを継続できるといった実効性を確認できました。「スピード」「使いやすさ」を念頭に研究開発を続けるDracenaは、それぞれ高い専門性を持った技術者によって研究開発が継続的に進められています。そのコアシステムの開発・実装作業の中心となるのが板倉です。「Dracenaはあくまでリアルタイムのストリームデータ処理を実現する基盤ですので、データ処理の結果を活用するためには、その上で動くアプリケーションも重要になります。その際にアプリケーション開発者やひいてはエンドユーザーに使いやすい処理基盤であるために、アプリ開発を容易にするフレームワークや連携のAPI開発にも力を入れています」と、今後の活用を見据えた現在の取り組みを話します。別のアプローチからシステムの改良を行うのが、J.ミヒャエリスです。以前はデータベースやネットワークを専門にしていた技術者です。「私はシステムの速度や性能の観点から、板倉さんが書いたソースコードの修正・改良を行っています。ストリームデータ処理の基盤としてDracenaは決して停止することが許されないため、様々な視点からテストを実施して不具合を見つけ、その都度修正を重ねています」また同じく、CPSプロジェクトの大西隆史もJ.ミヒャエリスとともに日々テストを繰り返し、改良に取り組んでいます。「Dracenaによるデータ処理システムのパフォーマンス測定を常に行い、設定パラメーターを変更しながらチューニングを実施し、より大量のデータを高速に処理するための性能向上に取り組んでいます」と自身の取り組みを説明します。Dracenaの開発は、先述のようにソフトウェアやIoTなど複数の分野の知見が合わさり、多彩なバックグラウンドの人材が携わっている点が特徴的です。入社してまだ2年目ですが、様々な専門性を生かして活躍している研究員とともに、最先端の技術に触れられることが本プロジェクトの面白さの1つです」と話します。モビリティ領域を足掛かりにさらなる応用を目指す従来のストリームデータ処理システムは、並列処理や連携、サービスの追加・変更することが難しいため、特定のサービスのみで分析結果のデータを活用するという垂直統合型のサイロ化されたシステムでした。Dracenaであれば、まずシンプルなデータ分析処理システムを構築し、その後に次々と新しいサービスを追加していくというアジャイルで柔軟な開発が可能になります。Accelerator」を構成する技術として製品に組み込まれています。フォード系列のモビリティサービス会社の米Autonomic社との協業が始まり、また国内外の自動車メーカーにおいて有償のPoC(概念検証)も進められています。コネクテッドカーでは、ハンドル操作データから飲酒運転の兆候を読み取るサービスから始め、地図データと組み合わせてトンネル出口の横風を検出したり、画像データと組み合わせて違法駐車車両の存在を検出したりといったサービスを追加するなど、様々な可能性を秘めています。モビリティ領域への適用を狙うDracenaですが、当然のことながらそれ以外の分野にも適用が可能です。今後広範囲でIoT化が加速しつづけることが予測されますが、収集される膨大なデータを処理し、活用するためには課題が生まれ、今以上に頭を悩ませることになります。した状況を少しでも回避するためにも良質なデータを適切に集めながら処理する仕組みは、新たなデータ活用の契機になるでしょう。「将来的には、家電製品のエコ利用サポート、介護が必要な高齢者の見守り、イベント時や災害発生時の行動誘導など、実社会で発生する問題に対応するあらゆるリアルタイムサービスに応用させていくことを目指しています」と植木は話を締めくくりました。