今回は、急速な技術進化やデジタル化の進展に伴い、アーキテクチャが多様化・複雑化してきている基盤技術・プラットフォームの観点から、アーキテクチャ設計のポイントを紹介します。
アナリティクスは、いまや企業の最も高い関心事項の一つとなっています。しかし、ユーザーが快適にアナリティクスを行うために、アーキテクトは最適なプラットフォームを選定・設計する必要があり、この選定・設計の難易度は、日増しに高まっています。オンプレ、クラウド、DWH、Hadoop、ETL、Data Lake、Data HUB、数多くのコンポーネントが存在し、どれを選定し、どう組み合わせればよいのか判断できない、という声をよく耳にします。
本稿では、こうした悩みを持つアーキテクトを対象に、まずデジタル時代のアナリティクスプラットフォームの特徴について解説します。次に、パブリッククラウドを活用したアーキテクチャ設計の事例について紹介します。これからアナリティクスプラットフォームを設計する方々に、本稿がアーキテクチャ設計の参考となれば幸いです。
デジタル時代のアナリティクスプラットフォームの特徴
アナリティクスのためのプラットフォームは、従来の基幹系システム・業務系システムのプラットフォームと異なり、以下のような特徴を持っています。
(1) 対象とするデータや期待される性能要件により、選択すべき技術要素やアーキテクチャが大きく異なる (多様性・複雑性)
全国の拠点にある大量のPOSデータをリアルタイムに吸い上げ、即時分析に活用するようなアナリティクスの場合、Streaming技術やオンメモリ系処理を駆使した低レイテンシと高スループットを実現するアーキテクチャを選択する必要があります。
一方で、データ量は大量でも、前日末時点の売上・在庫・生産・購買発注のような日次データを翌日分析するアナリティクスの場合、スループットの高いDWHやHadoopなどの技術の適合性が高くなります。関連する技術要素は多く、アーキテクトは多岐にわたる技術理解を要求されます。
(2) ユーザーが実際に使っていく中で、本当に実現したい機能要件、非機能要件が明確になること (不確実な要件への対応)
アナリティクスの場合、最初の要件定義段階では、「何が見たいか決まっていないが、とりあえず分析したい」というケースも多いのではないでしょうか。最初からユーザーがやりたいことが明確になっていることのほうが稀で、多くのケースでは、最初は漠然と 「新たな情報を分析してビジネスに新しい価値を」 という思いからはじめ、システムを使っていく中で、やりたい要件が見えてくるケースを筆者はよく、目にします。
(3) あらゆるデータがデジタル化されて分析対象となるため、対象データの種別やボリュームの事前予測が困難であること (事前のサイジングが通用しない)
最初にサイジングする段階では、実際にデジタル化されている企業内のデータが分析対象だったものが、ソーシャルデータ、Webログ、人口や気象の情報、センサー情報のような外部データやIoT系のデータが収集され、分析に活用できるようになります。これらのデータは、その量や形式はさまざまであり、用途によっても異なります。
情報システムのアーキテクチャ設計は、よく、建築工事に例えられます。実際のビルや住宅の建築に比べて、情報システムは完成イメージがつきづらいことが問題点とされることが多いのですが、アナリティクスの場合は、さらに難易度が増しています。言うなれば、最初は3人家族向けの住宅(プラットフォーム)として2LDKの住まいを要求されて構築しますが、その住宅は、数年後には二世代住宅や高層マンションの用途にも耐えなければならない、というようなものです。
デジタル時代においては、これまでデジタル化されてこなかったデータもデジタル化されるため、より複雑になってきます。
アナリティクスプラットフォームにおけるアーキテクチャ設計の重要成功要因
では、上記のような特徴に対応していくために、どのようなアプローチが取られるでしょうか。筆者は、最近のアナリティクスプラットフォームのアーキテクチャ設計の経験則から、下記の観点が重要成功要因の1つと考えています。
(1) パブリッククラウドを使いこなす
筆者は、これまでの経験から、1つの重要成功要因は、「いかにしてパブリッククラウドを使いこなすか」にあると考えています。
パブリッククラウドの持つ優位性は、既にさまざまな文献で語られているかと思いますが、アナリティクスプラットフォームが持つ特徴と、パブリッククラウドの持つ優位性は、非常に親和性が高いため、アナリティクスプラットフォームの実現にとって強力な武器となります。具体的には、以下の観点で親和性があります。
<パブリッククラウドがアナリティクスプラットフォームに適する理由(1)>
多様なアーキテクチャが早期に実現できる (サービス内容、技術要素の充実)
例えばAWSを例に取ると、EC2、S3のような基本的なサービス以外に、Kinesis, EMR, Redshift, Data Pipeline, IoT など、アナリティクスプラットフォームの構成要素として重要なサービスが多数、提供されています。
従来であれば、DWHアプライアンスなどは、非常に高価であり、十分な検討やサイジングを経て購入し、調達にも数週間~数ヶ月かかる、ということが多かったですが、これらが数クリックで利用開始できるということは、アナリティクスプラットフォームにとって、非常に大きなメリットをもたらします。
まず、不確実性な要件に対して、無理な予測をする必要がありません。
次に、一度作ったアーキテクチャを無理やり活用して、不向きな処理を行う必要もありません。要件が明らかになったときに、その要件に対して最適なアーキテクチャをすぐに検討・準備することができます。バッチ処理主体のアナリティクスプラットフォームは、ELB+EC2+Redshift+S3、のアーキテクチャとし、POSデータのリアルタイム分析のニーズが来た場合、Kinesis Streaming +EMR (on Apache Spark) を使ってアーキテクチャを増強する、というような、従来では考えられないような柔軟性の高いアーキテクチャが、実現できるようになりました。
<パブリッククラウドがアナリティクスプラットフォームに適する理由(2)>
それぞれの構成要素が自由にスケールできる
パブリッククラウドの優位性の1つとして非常によく言われている拡張性は、アナリティクスプラットフォームでは非常に大きな恩恵をもたらします。
日進月歩でデジタル化される社内外のデータを、すぐに収集し分析するために、プラットフォームをスケールすることができます。AWSの場合、EC2のAuto Scalingによる自動スケーリングのほか、多数のManaged Serviceがスケールアウトやスケールアップに対応します。
ただ、この点については注意が必要で、プラットフォーム側が十分にスケールしても、それ以外のポイントがボトルネックとなるケースがあります。例えば、AP層(BIツールなど)がスケールアウト構成に対応していなければ、基盤層がスケールアウト対応できても、システム全体としてはスケールアウトに対応できなくなります。アーキテクチャの設計段階で、AP層も含めたスケール性の検証を行う必要があります。
<パブリッククラウドがアナリティクスプラットフォームに適する理由(3)>
あらゆるサービスがすぐに使い始め、すぐに終わることができる
パブリッククラウド上のサービスは、すぐに使い始めることができ、すぐにやめることができます。そのため、過去の要件に基づいて開発したアーキテクチャが現在の要件とそぐわない場合は、抜本的に見直し(リアーキテクチャ)することも可能です。
企業のIT戦略やアーキテクチャ方針はさまざまなので、必ずしもパブリッククラウドが選択できないケースやパブリッククラウドの活用がベストではないケースもあると思います。ただ、上述したパブリッククラウドのメリットを最大限に享受していくことは、デジタル時代のアナリティクスプラットフォームにおいて、非常に重要と考えています。
(2) 精度の高い POC (Proof of Concept)
パブリッククラウドの活用以外に、筆者の経験からもう1つの重要成功要因と考えているのが、精度の高いPoC (Proof of Concept) です。
これまでは、設計したアーキテクチャを要件定義段階で実機検証することは難しく、過去の同類システムの性能実測結果などを基礎数値として、アーキテクチャの妥当性やサイジングの品質を高めてきました。しかし、新しいデータを活用して新たなビジネス価値を創出しようとするデジタル時代のアナリティクスにおいて、このやり方は限界があります。
デジタル時代のアナリティクスプラットフォームのアーキテクチャ設計では、精度の高いPoCが不可欠となります。これは、パブリッククラウドの活用により、近年、実現できるようになりました。初期要件の把握から、仮説を設定し、いくつかのアーキテクチャパターンを抽出し、PoCを行いながら最適なアーキテクチャパターンを選定していくのが、1つの成功モデルといえます。
アナリティクスを積極的に推進する多くの企業において、近年、このPoC評価からアーキテクチャ決定までの一連のプロセスが、非常に頻繁に実行されています。
* * *
AWSは2016年8月10日~11日に開催されたAWS Summit NYCの中で、アナリティクス領域に対するサービス強化を発表しています。その中で、Amazon Kinesis Analyticsの新サービス追加が公表されています。パブリッククラウド事業者は、アナリティクス分野を戦略上、重要な分野と捉えており、今後、さらなるサービス拡充が期待できます。
アナリティクスを支えるプラットフォームは、企業がアナリティクスを競争力とするうえで不可欠なものであり、ユーザーが快適にアナリティクスを行い、ユーザーの思考を止めないアナリティクスを実現する最適化されたプラットフォームは、ビジネスに大きな価値をもたらすと筆者は考えています。
IT技術の進化により、プラットフォームは既に、非常に多くの要件に対応できるようになっています。匠の技を持ったアーキテクトが、これらのIT技術を活かし、ビジネス部門と融合しながら、これまでの常識を覆すような新たな価値を創造するアナリティクスを実現していくこと、それこそが、デジタル時代の企業競争力を生み出していくのではないでしょうか。
<今後の連載予定>
- アナリティクスに取り組む意義
- アナリティクス推進、4つの落とし穴
- アナリティクス推進、5つの視点と5つのステップ
- データビジュアライゼーションとセルフサービスBI
- インダストリー4.0/IoTとアナリティクス
- デジタル・ロジスティクスにおけるアナリティクス
- アナリティクスを支えるプラットフォーム(本稿)
- アナリティクスを支える組織とガバナンス
著者紹介
高村 哲貴 (TAKAMURA Tetsuki)
- 株式会社NTTデータ 製造ITイノベーション事業本部 コンサルティング&マーケティング事業部 デジタルコンサルティング統括部 課長
2001年にNTTデータに入社し、ITエンジニアとして流通・小売・製造業分野を中心にSCM系システム開発案件に従事。その後、グローバル企業のBI/DWH導入の構想策定・システム開発にも複数携わる。
近年では、ITアーキテクトとして、グローバルIT標準化や情報活用のための基盤構築に関するコンサルティング・設計・実装、及び、パブリッククラウドを活用した構想策定やアーキテクチャ設計を展開中。