みなさん、こんにちは!
本日はデータ分析環境の「アーキテクチャ」という言葉についてお話したいと思います。
システムの「アーキテクチャ」といわれると、
あんなアプリをこんな感じで組み合わせて…
みたいなことを考えるかなと思いますが、今日のお話はそれとは一味違ったお話です。
データ分析環境のアーキテクチャを考えるのは何のため?
これ。どうして、何のためにアーキテクチャを考えないといけないのでしょうね。その質問の答えは別の角度からの質問の答えを考えればすぐにわかります。
別の質問とは「データ分析は何のために行うの?」です。企業の皆さんが日々データの分析を行う理由は何でしょう。それは「皆さんや皆さんの会社が抱えているビジネスの課題を解決するため」でしょう。同じようにデータ分析環境のアーキテクチャをきちんと考えないといけないのは
「そのデータ分析環境がビジネス課題の解決に有用となるため」
です。それができないデータ分析環境はビジネスにおいて必要なものにはならないのです。
アーキテクチャのB.I.A.S.
B.I.A.Sとは4つの単語のそれぞれの頭文字です。それぞれどんな単語の頭文字でしょうか?
サクッと答えを明かしてしまうと、
Business(ビジネス): 企業が行うビジネスとそこにある解決すべき課題
InforMation(情報): その課題を解決するためになくてはならないデータ
Application(アプリ): 情報をビジネス現場で利用しやすいようにするアプリケーション
System(システム): アプリを稼働するために最適なシステム構成
になります。
冒頭のお話が当てはまるのはこの中のAとSになることが容易に想像できるかと思います。それ以前のBやIの観点が抜け落ちていてはビジネス課題の解決が行えないシステムになりそうというのは直感的にわかっていただけると思います。
定義レベル
よいデータ分析環境を実現するためにはこれらビジネス、インフォメーション(情報)、アプリケーション、システムの4つのアーキテクチャを考える必要があるのですが最初から完成されたものを考え出そうとしてもそれはとても難しいことです。
企業で利用される情報システムを構築した経験がある方なら理解していただけることかと思います。
アーキテクチャを考えるうえでも同様にまず大まかな絵をかいて徐々にそれを深化させていくという考え方は大切になります。一般的に4段階程度で考えることが多いと思います。
Conceptual: 概要レベルでざっくりと考える
Logical: 論理的な構成を考える
Solution: 課題解決手法として具体的に考える
Deployment: 現実に存在するハード・ソフトでの実現方法を考える
このように段階を踏みながら考えをまとめると誰から見ても理解しやすいものがつくりやすくなると考えます。
環境整備のステップ
最後にもう一つ考えなければならないのはどのように環境を整備していくかということです。これから新しくデータ分析環境を整えていくとしましょう。データ分析システムの最終形態は「企業内で発生するあらゆる課題の解決をサポートすることが可能」なものですが、当然そこにたどり着くためには時間もお金もかかります。そのため通常の企業ではステップ・バイ・ステップで物事を進めていくことになるでしょう。
このお話をしたときによく重要な観点が抜け落ちることがあります。それはスタート地点はどこなのか、言い換えると「自分たちは今どこにいるのか?」を知ることです。
これを正しく理解していないと本来必要なないステップを踏むことになったり、逆に何かが足りないということが発生したりします。
現在の正しい立ち位置と、きちんと定義された最終的なゴールがあって、その間をどのようなステップで進んでいくか、それを定義する必要がります。
アーキテクチャ・キューブ
これまでに述べたきた観点は3つです。ということはこれを組み合わせると3次元の立体となります。
私たちはこれをアーキテクチャ・キューブと呼びます。このような考え方で作られたデータ分析環境こそがビジネスに貢献できるものとなるとそう思っています。