日立(HITACHI)のLumada

Lumadaを支えるプラットフォーム技術
社会システムの持続的な開発と運用を支える
Lumadaのプラットフォーム


社会システムの持続的な開発と運用を支えるLumadaのプラットフォームは,データの収集・蓄積・
加工・解析・ビジュアライズなどの機能群に加え,(1)異種システム間の連携,(2)顧客協創
の支援,(3)パートナーのソフトウェア開発環境との連携,(4)アプリケーション実行場所の管
理,(5)開発済みソリューションの共有と再利用の支援といった機能群を提供する。
本稿では,この(1)を中心に,同プラットフォームにマイクロサービスAPIやコンテナ技術を導入し
た背景と目的,および同プラットフォームが提供するSystem-of-Systems技術の概要を解説する。

  1. はじめに
    1980年代以降の急速なインターネットの普及により,
    各組織内のITシステムは顧客や他組織のITシステムと
    相互に接続されてきた。さらに,2000年以降のクラウド
    サービスの登場により,インターネット上に蓄積された
    巨大なデータを活用して,新たな事業が生み出された。
    今日,多くの企業のIT投資は,既存事業の効率化を目的
    としているのではなく,データ活用による新事業の創生
    に期待している。
    Amazon.com, Inc.やGoogle LLCなどのIT企業は,独
    創的な新サービスを創生し,同時に,それを支える新し
    いITシステムを開発している。さらに,そのITシステム
    を汎用化して,企業向けのデジタルサービス基盤として
    事業化している。
    一方,日立は,鉄道・ビル・電力プラントをはじめと
    する社会インフラのOT(Operational Technology)シス
    テム,および公共・金融・産業向けIT(Information
    Technology)システムなどの広範なソリューション提供
    の経験を有している。また,これらの社会システムの開
    発・運用経験を通して,個々の顧客ニーズに対応できる
    現場サポート体制も構築している。
    そこで,われわれは顧客との協創によって,社会に新
    たな価値を提供するサービスの創造をめざす。そもそも,
    SDGs(Sustainable Development Goals) 達 成 やQoL
    (Quality of Life) 向上を実現するイノベーションは,単
    一の企業の力のみでは成し難い。これからの時代は,経
    済成長や自由競争のみに頼る世界は成り立たなくなりつ
    つあり,SDGs達成やQoL向上といったビジョンを社会
    的コンセンサスとし,さまざまな組織から英知を募り,
    課題解決に向けて協創することが不可欠である。
    さらに,この顧客協創を通して開発したソリューショ
    48
    ンから有益な機能部品を切り出し,汎用的に利用できる
    ようにリファクタリングし,その蓄積・共有・再利用を
    促す。それにより,ソフトウェアの段階的な進化を加速
    させながら,ITだけでなく,日立の強みであるOTを組み
    合わせ,サイバーフィジカルシステムを支えるサービス
    基盤を継続的に発展させる。同時に,このサービス基盤
    であるLumadaのプラットフォームを顧客やパートナー
    企業に提供していきたいと考えている。
  2. システム連携の重要性と課題
    前章に述べたアプローチを推進するには,図1に示す
    ように,既存システムとAI(Artifi cial Intelligence)応
    用やIoT(Internet of Things)応用の新しいシステムを
    連携させる必要がある。デジタルな世界と異なり,物理
    的な現場機器やその制御システム(OTシステム)を含む
    社会インフラにおいて,既存の巨大システムを一挙に入
    れ替える試みは現実的ではない。
    また,同図に示すとおり,既存のOT/ITシステムと新
    しいシステムでは,採用しているハードウェアもソフト
    ウェアも技術的に大きく異なる。加えて,同図左側の既
    存システムはウォーターフォール開発の文化であり,右
    側はアジャイル開発1)の文化である。この異なる二つの
    文化を橋渡しすることが,Lumadaのプラットフォーム
    の重要な役割である。
  3. Lumadaのプラットフォームの概要
    Lumadaは,顧客協創を通してデータから価値を創出
    し,デジタルイノベーションを加速することをめざして
    いる。この価値創出を支えることを目的として,Lumada
    のアーキテクチャは,先進的なデジタル技術を活用した
    ソリューションやサービスを迅速に効率良く開発できる
    ように設計している。図1は各システムの実装を詳細に
    示しているため,単純化した図2を使って分かりやすく
    説明する。なお,同図では既存システムをOTとITに分離
    して左右に配置している。
    カスタム業務
    アプリケーション
    RDB 非構造データ
    RAIDストレージ
    ミドルウェア
    定型アプリケーション
    Microsoft: Office※2)
    Microsoft : Exchange※2)
    マイクロサービス
    HTTP/REST
  • JSON
    Crawler
    ビッグデータ分析
    アプリケーション
    AI/DL
    アプリケーション
    ミドルウェア: Spark※4), Hadoop※4), TensorFlow※5)
    プログラミング言語: JavaScript※1), Python, Go※5)
    DevOps環境: Git※6), Ansible※7), HELM
    Linux※8), Docker※9), Kubernetes※10)
    IaaS(AWS※11), Azure※2), GCP※5)など)
    Software Defined Network
    KVS NoSQL DB
    Software Defined Storage
    サーバファーム
    グラフDB
    IoT
    アプリケーション
    ETLツール
    High Availability
    Cluster
    Oracle※1): Oracle DB
    Microsoft※2) : SQL Server
    OSS: PostgreSQL※3)
    既存システム
    (ウォーターフォール開発文化)
    新規システム 異文化の連携 (アジャイル開発文化)
    図1|既存システムと新規システムの連携
    既存システムとIoTやAI応用の新規システムを連携するには,プログラミング言語もツールも開発手法も異なるウォーターフォール開発文化とアジャイル開発文化の橋渡
    しが不可欠である。
    注:略語説明など
    DB(Database),AI(Artifi cial Intelligence),DL(Deep Learning),IoT(Internet of Things),HTTP/REST(Hyper Text transfer Protocol/Representational State Transfer),
    JSON(JavaScript Object Notation),RDB(Relational Database),RAID(Redundant Arrays of Independent Disks),ETL(Extract,Transform, Load),KVS(Key Value Store),
    SQL(Structured Query Language),AWS(Amazon Web Services),GCP(Google Cloud Platform)
    ※1)Oracle,JavaScriptは,米国オラクルコーポレーションおよびその子会社,関連会社の米国およびその他の国における登録商標または商標である。
    ※2)Microsoft,Microsoft Exchange,Microsoft Offi ce,Azureは,米国Microsoft Corporationの米国およびその他の国における登録商標または商標である。
    ※3)PostgreSQLは,PostgreSQLの米国およびその他の国における商標または登録商標である。
    ※4)Spark,Hadoopは,The Apache Software Foundationの米国およびその他の国における登録商標または商標である。
    ※5)TensorFlow,GCP,Goは,Google LLCの登録商標または商標である。
    ※6)Gitは,Software Freedom Conservancy,Inc.の米国およびその他の国における登録商標または商標である。
    ※7)Ansibleは,米国Red Hat Inc.の米国およびその他の国における登録商標または商標である。
    ※8)Linuxは,米国およびその他の国におけるLinus Tovalds氏の登録商標である。
    ※9)Dockerは,Docker, Inc.の米国およびその他の国における登録商標または商標である。
    ※10)Kubernetesは,The Linux Foundationの米国およびその他の国における登録商標または商標である。
    ※11)AWSは,Amazon Web Services, Inc.の米国およびその他の国における登録商標である。
    49
    Lumadaを支えるプラットフォーム技術
    FEATURED ARTICLES
    Vol.102 No.03 336-337
    3.1
    位置付け
    図2に示す通り,Lumadaのプラットフォームは,日立
    が開発した顧客協創方法論「NEXPERIENCE」,および
    事業ドメインごとのソリューションやユースケースと共
    に,Lumadaに包含される。本来,Lumadaのプラット
    フォームには,日立が提供する先端センサーや鉄道車両
    などの物理的な製品も含まれる。しかしながら,本稿に
    おいてはLumadaのプラットフォーム,または本プラッ
    トフォームという表現は,事業ドメインに依存せずに汎
    用的に利用できるソフトウェア基盤を指す。
    3.2
    提供機能
    本プラットフォームでは,提供する機能コンポーネン
    トをEdge,Core,Data Management,Analytics,Studio,
    Foundryの6種に分類している。
    ・Edgeは,IoT機器からのデータを収集する機能群であ
    り,これにはプロトコル変換,データのフィルタリング
    や分類といった機能が含まれる。
    ・Coreは,収集したデータを蓄積するデータレイク,お
    よび,接続されたIoT機器の管理機能を提供する。
    ・Data Managementは,収集したデータを分析に適した
    形式に分割・変換・再結合する機能群を提供する。
    ・Analyticsは,データを分析するための機能群を提供
    し,これにはディープラーニングなども含まれる。
    ・Studioは,エンドユーザーや開発者向けのユーザーイ
    ンタフェースに関連する機能群であり,これにはダッ
    シュボードやAPI(Application Programming Interface)
    が含まれる。
    ・Foundryは,これらを支えるため,コンテナ2)技術を
    ベースとするサーバレスコンピューティング3)環境を提
    供する。
    上記の機能群は「データから価値を創出する」ために
    必須である。しかしながら,これらの機能のみでは,2章
    に述べた異種システム間の連携,あるいは顧客協創,ソ
    リューション開発成果の蓄積や再利用,それらを促すエ
    コシステム確立といった課題に対する解とはならない。
    こういった課題への解として,本プラットフォームは上
    記に加え以下の機能群を提供する。
    (a)異種システム間の連携
    (b)顧客協創の支援
    (c)パートナーのソフトウェア開発環境との連携
    (d)アプリケーション実行場所の管理
    (e)開発したソリューションの共有と再利用の支援
    本プラットフォームに導入したコンテナ技術やマイク
    ロサービス4)APIは,上記(a)から(e)の機能の実現
    と深く関係している。以下,本稿では上記(a)を中心に
    詳細に解説する。なお,上記(b)から(e)については
    本号掲載の論文「迅速なソリューション開発を可能とす
    るNode-REDとそのOSS活動への取り組み」(60ペー
    ジ),および論文「デジタルソリューションの創生と活用
    を加速するLumada Solution Hub」(53ページ)で詳述
    しているので参照されたい。
  1. System-of-Systems
    本プラットフォームと既存システムの相互接続を図3
    に示す。実際にデータを生成するのは既存のOTシステム
    やITシステムであり,それらのデータを本プラット
    フォーム上で稼働する新たなアプリケーション・システ
    NEXPERIENCE
    ドメイン特化アプリケーション
    Lumadaのプラットフォーム
    フィジカルプロダクツ
    Studio
    Analytics
    Data Management
    Foundry
    Edge Core
    Lumada
    OTアセット
    フィールドデータ
    ヒューマンデータ
    ITアセット
    ビジネスデータ
    ヒューマンデータ
    図2|Lumadaのプラットフォームの概要
    Lumadaのプラットフォームは,既存のOT/ITシステム
    と疎結合でつながり,そのうえでさまざまなドメインに
    特化したアプリケーションを開発・蓄積・再利用で
    き,それらをベースとした顧客協創を支える機能を提
    供する。
    注:略語説明
    OT(Operational Technology)
    50
    ムで分析するには,これらのシステムを接続し,一つの
    統合されたシステム(System-of-Systems)としなけれ
    ばならない。
    同図の既存システム部分は,顧客のオンプレミス環境
    や他社のパブリッククラウド上で運用されている事例も
    多い。そこで,AWS(Amazon Web Service),Microsoft
    Azure,さらにGCP(Google Cloud Platform)も視野に
    入れて,世界中の主要都市に設置したデータセンタ間を
    高速回線で接続しているパブリッククラウド事業者のグ
    ローバルITインフラを利用し,日立はマルチクラウドに
    またがるアプリケーション・システム全体を統合管理で
    きるマルチクラウド運用管理基盤を提供する。
    4.1
    マイクロサービスAPIの導入
    上述した下位層の接続の次に,上位層(アプリケーショ
    ン層)の相互接続を実現しなければならない。それぞれ
    独立して開発・運用されているシステムどうしを相互接
    続する場合,一般に,図4に示すメッセージ通信を用い
    た疎結合によるSystem-of-Systems5)アーキテクチャが
    利用される。近年では,このメッセージ通信は,HTTP/
    REST6)プロトコルとJSON7)データ形式を用いたマイク
    ロサービスAPIが主流となっている。これらの技術は,
    Webやスマートフォンの普及に伴い,アプリケーション
    間の連携に広く利用されており,既にデファクト標準と
    なっている。
    本プラットフォームでは,他社が提供するアプリケー
    ションやSaaS(Software as a Service)との接続容易化
    も考慮し,アプリケーション層の相互接続にマイクロ
    サービスAPIを利用することを推奨している。もちろん,
    同図に示す既存システム部分は,マイクロサービスAPI
    を採用しているとは限らない。しかしながら,何らかの
    インタフェースを外部に開示しており,このインタ
    フェースをAPI Management8)によってラッピングして
    マイクロサービスAPIに対応できる。
    4.2
    Lumada独自のSystem-of-Systems技術
    前節で述べたマイクロサービスAPIは,通信プロトコ
    ルとデータ形式の枠組みを規定するのみであり,実際に
    システムどうしを接続するには,送受信メッセージの詳
    細なセマンティクスやデータ形式の定義が必要となる。
    その標準化やOSS(Open Source Software)化について
    もさまざまな団体で議論されているが,異なる事業分野
    Lumadaのプラットフォーム
    Studio
    Analytics
    Data Management
    Foundry
    Edge Core
    OTアセット ITアセット
    既存の
    OTシステム
    既存の
    ITシステム
    図3| Lumadaのプラットフォームと既存の
    OT/ITシステム
    データを発生させるのは既存のOT/ITシステムであ
    り,Lumadaのプラットフォーム上で稼働するデータ解
    析アプリケーションと容易に接続できることが重要で
    ある。
    Lumadaのプラットフォーム
    AWS, Azure, GCP
    または 日立のクラウド
    オンプレミス
    または
    日立のクラウド
    オンプレミス
    または
    日立のクラウド
    高速インターネット接続 + マルチクラウド運用管理基盤
    System-of-Systems 技術
    Studio
    Analytics
    Data Management
    Foundry
    Edge Core
    OTアセット
    API
    Management
    API
    Management
    ITアセット
    既存の
    OTシステム
    既存の
    ITシステム
    ビッグデータ分析, AI/DL, IoTなどの
    アジャイル開発の新規アプリケーション
    図4| マイクロサービスAPIによる
    System-of-Systemsの実現
    Lumadaでは,他社システムとの連携容易化を考慮
    し,業界標準となっているHTTP/RESTプロトコルや
    JSONデータ形式を採用し,複数のシステムを連携さ
    せたSystem-of-Systemsがマルチクラウドをまたが
    ることを前提に,アーキテクチャを設計している。
    51
    Lumadaを支えるプラットフォーム技術
    FEATURED ARTICLES
    Vol.102 No.03 338-339
    をまたがるシステム間連携をグローバルに実現する場
    合,複数の標準仕様への柔軟な対応が不可欠となる。そ
    こで,本プラットフォームは,複数の異なるシステムを
    連携させるアプリケーションの開発を容易化するため
    に,以下の機能を提供する。
    (1)機能レベルの接続を容易化するサービスAPI接続
    機能
    (2)情報レベルの接続を容易化する柔軟なデータ形式変
    換機能
    (3)通信レベルの接続を容易化するプロトコル変換機能
    およびデータ収集機能
    (4)上記(1)~(3)を利用するアプリケーションの性能
    スケーラビリティや信頼性をエンハンスする機能
    (5)上記(1)~(4)の機能を利用してユーザーが開発し
    たアプリケーションを共有する機能
    具体的には,本プラットフォームは異種システム連携
    を容易化するために,表1に示すコンポーネントを提供
    する。Node-RED※1),9)はStudioに属し,ユーザーがGUI
    (Graphical User Interface)を用いてシステムどうしを
    APIレベルで接続できる機能を提供する。Pentahoや「IoT
    コンパス」10)はData Managementに属し,異種システム
    どうしの接続に必要なデータの分割・変換・再結合を可
    能にする。Hitachi Data Hub10)はEdgeに属し,IoTデバ
    イスや他システムからのデータ収集に不可欠なプロトコ
    ル変換を可能にする。HAF/EDC(Hitachi Application
    Framework/Event Driven Computing)11)は,システム
    規模の拡大やデータ量の増大に応じた性能スケーリン
    グ,および,冗長構成による信頼性エンハンスを提供す
    る。また,Lumada Solution Hub12)は,開発したソリュー
    ションの蓄積・共有・再利用を可能とする。
  2. コンテナ技術の導入目的
    「仮想マシンと言えばハイパーバイザ方式」という状況
    は,コンテナ技術の登場により,この5~6年で大きく変
    わった。Linux Foundation13)傘下にCNCF (Cloud Native
    Computing Foundation)14)が設立され,現在では先駆者
    であるGoogleのみならず,Amazon,Microsoft Corporation,
    Red Hat, Inc.,VMware, Inc.など主要ベンダがコンテナ
    技術をベースとするサーバレスコンピューティング環境
    の提供に舵を切っている。
    コンテナ技術の長所は,ハイパーバイザ技術よりもメ
    モリ消費量が少なく,性能も優位というだけではない。
    コンテナ技術は,さまざまなミドルウェアやアプリケー
    ションを混在利用する場合において,技術者を悩ませて
    いたOS(Operating System)や共通ライブラリのバー
    ジョン不整合問題を解消する。これらの長所以外に,日立
    は以下の目的で本プラットフォームにコンテナ技術を導
    入した。
    5.1
    さまざまなプログラミング言語や開発環境の統合
    従来からシステム開発に利用されてきたJavaやC/C++
    に加え,データ解析やAI分野ではPython,Webアプリ
    ケーション開発ではJavaScriptなどのプログラミング言
    語が主流となっている。また,OT分野ではANSYS※2),
    MATLAB/Simulink※3),SolidWorks※4)などのエンジニ
    アリングソフトウェアが普及している。
    コンテナ技術とマイクロサービスAPIを応用すれば,
    これらのさまざまな言語や開発環境で作成したアプリ
    ケーションをメッセージ通信で接続し,一つのシステム
    に統合することが容易となる。このように,4章に述べ
    たSystem-of-Systems技術を応用すれば,新旧システム
    の連携だけでなく,アプリケーション開発に使用するプ
    要求仕様 提供機能 製品/サービス/OSS名称
    接続性
    確保
    機能レベル GUIによるサービスAPIの接続 Node-RED
    情報レベル 柔軟で迅速なデータ変換,統合 Pentaho, IoTコンパスなど
    通信レベル 迅速なプロトコル変換,データ収集 Hitachi Data Hub
    性能と品質の確保 性能スケーラビリティ,信頼性強化 HAF/EDC
    効率的な開発 開発済み事例の共有,再利用 Lumada Solution Hub
    注:略語説明
    GUI(Graphical User Interface),HAF/EDC(Hitachi Application Framework/Event Driven Computing)
    表1|LumadaのSystem-of-Systems技術
    Lumadaが提供するSystem-of-Systems技術は,グローバルに業種をまたがる新サービスを実現する際に不可欠となる,
    複数の国際標準や業界標準への柔軟で迅速な対応を可能とする。
    ※1) Node-REDは,OpenJS Foundationの米国およびその他の国における登録
    商標または商標である。
    ※2) ANSYSは,ANSYS, Inc.の米国およびその他の国における登録商標また
    は商標である。
    ※3) MATLAB,Simulinkは,The MathWorks, Inc.の米国およびその他の国に
    おける登録商標または商標である。
    ※4) SolidWorksは, 米国およびその他の国におけ るDassault Systemes
    SolidWorks Corporationの登録商標または商標である。
    52
    ログラミング言語や開発環境の違いを乗り越えて,コン
    ポーネントどうしを接続することも容易になる。
    5.2
    アプリケーション実行場所の柔軟性向上
    データの重要性が広く認識されるに伴い,EU(European
    Union)一般データ保護規則をはじめ,データの移動を
    規制する動きも起きている。しかし,コンテナ技術を応
    用すれば,データを移動せずに,アプリケーションをデー
    タ格納場所の近傍に転送して実行することが可能となる。
    また,IoTやAI技術を使うアプリケーションのアジャ
    イル開発においては,必要な演算性能や通信トラフィッ
    クの予測が困難な事例も多い。PoC (Proof of Concept)
    段階では問題を生じなかったアプリケーションが,接続
    デバイス数が増える本番運用では遅延時間の許容値を超
    えたり,通信トラフィックの増加がコスト問題を発生さ
    せたりする。しかし,これもコンテナ技術を応用すれば,
    クラウド上で開発したアプリケーションをエッジ近傍で
    分散実行するなど,システム設計の柔軟性を向上できる。
  3. おわりに
    本稿では,Lumadaのプラットフォームの設計思想に
    ついて,アーキテクトの立場から,背景となった課題,
    導入すべき技術,提供すべき機能(の一部)を解説した。
    本プラットフォームの設計においては,持続的で漸進的
    なソフトウェアの進化を促すべく努力している。その実
    践のために,既存システムと新規システムを連携させる,
    また,異なるプログラミング言語や開発環境で作られた
    ア プ リ ケ ー シ ョ ン ど う し を 接 続 で き るSystem-ofSystemsのコンセプトが重要と考えている。
    なお,本稿に書ききれなかったNode-REDやLumada
    Solution Hub(顧客協創の支援,パートナーのソフトウェ
    ア開発環境との連携,アプリケーション実行場所の管理,
    開発済みソリューションの共有と再利用の支援といった
    機能群を提供する)については,本稿に続く論文を参照
    されたい。
    執筆者紹介
    岩嵜 正明
    日立製作所 研究開発グループ 所属
    現在,Lumadaのプラットフォームの研究開発に従事
    博士(工学)
    情報処理学会会員,電子情報通信学会会員,IEEE CS会員
    中村 輝雄
    日立製作所 サービスプラットフォーム事業本部 所属
    現在,Lumadaのプラットフォームの開発および事業に従事
    情報処理学会会員
    参考文献など
    1)アジャイル開発,
    https://en.wikipedia.org/wiki/Agile_software_development
    2)コンテナ,
    https://en.wikipedia.org/wiki/OS-level_virtualization
    3)サーバレスコンピューティング,
    https://en.wikipedia.org/wiki/Serverless_computing
    4)マイクロサービス,
    https://en.wikipedia.org/wiki/Microservices
    5) System-of-Systems,
    https://en.wikipedia.org/wiki/System_of_systems
    6)REST,
    https://en.wikipedia.org/wiki/Representational_state_transfer
    7) JSON,
    https://en.wikipedia.org/wiki/JSON
    8) API management,
    https://en.wikipedia.org/wiki/API_management
    9)西山博泰,外:迅速なソリューション開発を可能とするNode-RED
    とそのOSS活動への取り組み,日立評論,102,3,348~352
    (2020.7)
    10)伊藤大輔,外:生産現場を改善し続けるデジタルツイン技術,日立
    評論,102,3,358~362(2020.7)
    11)板宮高志,外:グローバルIoTサービス「Hitachi Global Data
    Integration」,日立評論,102,3,363~367(2020.7)
    12)工藤裕,外:デジタルソリューションの創生と活用を加速するLumada
    Solution Hub,日立評論,102,3,341~347(2020.7)
    13)Linux Foundation,
    https://www.linuxfoundation.org/
    14) Cloud Native Computing Foundation,
    https://www.cncf.io/
カテゴリー:

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中