セルフサービスBI導入のヒント

今回はセルフサービスBIの導入を成功させるためのヒントを紹介したいと思います。

#プロジェクトで必要となる役割は？
製品の導入において、プロジェクトの成否の大部分は「人」にかかっていると言っても過言ではありません。

特に昨今のビジネスユーザー向けのBI製品において以下の３つのロールは必須であり、プロジェクトにおいてアサインする必要があります。

**エクゼクティブスポンサー**：予算や人的リソースのアサインを承認する
**セルフサービス推進担当**：ビジネス知識があり、Dashboardをデザインおよび具現化する、またデータ活用を組織内で積極的に推進する
**データスペシャリスト**：組織内のデータの所在や仕様に詳しく、データ分析の根幹ともいえるデータ準備を担当する

上記の３つのロールのうち、企業にとって最も難しいのは、３番目の「データスペシャリスト」のアサインです。データスペシャリストは、BIプロジェクトのデータ準備フェーズを担当し、プロジェクトの成否に最も大きな影響を及ぼす役割といっても過言ではありません。

しかしながら、IT部門を持つ会社であっても、データスペシャリストとして適切な人材をプロジェクトにアサインできるとは限りません。また、IT部門のリソース状況や導入時の社内事情により、IT部門のサポートを十分に受けることが出来ずにプロジェクトを進めなければならないケースもあるかと思います。

仮にデータスペシャリストをアサインできたとしても、それだけで一安心とはいきません。というのも、データスペシャリストが部署異動や退職すると、これまでプロジェクトで行われてきたデータ連携および加工処理プロセスがブラックボックス化（属人化）してしまい、誰もメンテナンスできなくなってしまうためです。

今回はこういった背景を踏まえ、データスペシャリストのスキルセットとさらには属人化を防ぐ体制について考えてみたいと思います。

#データスペシャリストに求められるスキルセットとは？
求められるスキルセットとして、真っ先に思い浮かぶのはデータベースの知識（SQLなど）ですが、昨今のデータスペシャリストに求められる要素は、接続対象となるデータの多様化により変わってきています。

**DWHがソースの場合**
BI製品が参照するデータがすでに構造化されており、データベースやDWHに集約化されている場合、データスペシャリストに求められるスキルセットとしては、DWHに対してSQLを使ってデータベースにアクセスするためのSQL知識やどのテーブルに何の情報がどういった形で格納されているかを理解している、もしくは紐解ける人材が理想的です。

**クラウドがソースの場合**
最近のBI製品は、様々なクラウドアプリケーションから直接データを取得するためのコネクターを提供しています。コネクターを利用するメリットは、プログラミング不要でいくつかの設定を行うだけでデータソースへ接続しデータを取得できる点です。特に、マーケティングやCRM製品は、企業側でクラウド製品の採用が進んでいるため、BI製品ベンダー各社も、あらかじめ用意された専用のコネクタを提供しており、ビジネスユーザーでも容易にデータを取得、分析することが可能です。

また、多くのBI製品では、あらかじめ特定のデータソース用に用意された専用コネクター（ネイティブコネクター）とは別に、様々なRest APIに接続するために柔軟なパラメータ設定を行うことができる汎用コネクターも提供されています。汎用コネクターには、データ接続の際に結果セットとして返されるJSONデータを通常のテーブル構造として取り込めるような細かい設定をサポートしているものもあります。

こういったBI製品が提供しているコネクターの利点を活かしながらクラウドアプリケーションのデータを扱うには、むしろSQLに詳しいエンジニアというよりは、Rest APIの仕様やRest APIで取得するデータに詳しいこと（ターゲットとなるデータソース側で公開されているドキュメントを読み解いて理解するスキル）の方が重要になります。これは一見ハードルが高そうに思えますが、コツをつかめばそれほど難しいものではありません。

#クラウドデータに加工が必要な場合

「クラウド」の場合、コネクターによってある程度データの連携ができるとは言っても、データの加工やクレンジングについて避けては通れない場合も多々あるかと思います。BI製品によっては、簡易なETL機能を提供していたりしますが、処理能力として大容量データの加工などを行う場合にその機能では処理能力が不足していたり、データに不具合があった場合は再度最初から取り込みを行うなど、データウェアハウス（DWH）のようにデータそのものに直接アクセスして、柔軟に対応することができなかったりといった問題により、企業ののニーズを十分に満たす事ができない場合も多々あるかとも思います。

こういったケースに対応するには、データソースとBI製品の間にデータマートやDWHを経由し、BI製品が必要なデータを柔軟に提供するための仕組みが必要になります。また、そういった仕組みを構築する上で、ETL製品などの連携ツール、SQLやデータモデリングに関連するスキルを持つ人材が必要となります。 

上記のシナリオに合うスキルセットを持った人材をアサインできたら、成功に一歩近づいたと言えます。もし上記のスキルセットを持つ人材をアサインできない場合は、一時的なソリューションとしてBIベンダーやパートナーのコンサルティング支援を受けつつ、プロジェクトを通して将来のデータスペシャリスト候補を社内で育成していくのも１つの選択肢です。

#属人化を防ぐには？
１人のデータスペシャリストに頼って作られたデータ準備プロセスは非常に属人化しやすく、それ自体が将来の運用においてリスクとなります。そのため、可能であればプロジェクトでは複数のデータスペシャリストをアサインし、チームとしてドキュメントなどを通してナレッジや設計内容を共有しながら進めるのが望ましいと言えます。しかしながら、実際にそうした人的リソースを確保するのは至難の技です。そこで、データスペシャリスト離脱のリスクを回避するために、以下を検討してみてください。

データスペシャリストの価値を組織内で正しく評価し、評価に応じた報酬を与える
プロジェクトチームとしてデータスペシャリストの作業負荷が限界を超えないようにスケジュールやスコープを調整する、場合によっては外部のリソースを積極的に活用する
データ処理の属人化を極力排除するとともに自動化されたデータ準備プロセスを柔軟かつ効率的に構築できるETL製品をはじめとするデータ統合ソリューションの導入を検討する

#最後に
ETL製品は、これまで述べたようなデータスペシャリストの課題を解決する上で非常に有効な選択肢です。

**1. BI製品で活用するために複雑なデータ加工を必要とする**
クラウドアプリケーションからクラウド上のステージングDBやDWHなどへのデータ連携、さらにはコネクターやBI製品では難しい複雑、大規模なデータ加工処理を容易に実装することができます。

**2. データ準備プロセスが属人化しやすくなる**
ビジュアル化されたツールを使用し、作成されたデータパイプラインは視認性が高く、メンテナンス時に現状のデータ処理の仕様や仕様変更による影響範囲の把握が容易です。

**3. SQLのできる人材がいない**
SQLを書かなくても、ビジュアル化されたツールと直感的な操作でデータパイプラインを作成できるようになります。

もし、今回のプログで取り上げた問題についての解決策をお探しの場合は、是非ETL製品の導入をご検討ください。

**[Xplenty](https://www.xplenty.com/jp/)**は、クラウドベースのETLです。利用を開始する上でPCへのインストールは不要、全ての作業がブラウザのみで完結します。もし、外部データとの接続時に困った場合は、カスタマーサポートにパイプラインの接続情報を共有し、その場で支援を受けながらパイプラインの作成や運用を行うことができるので安心です。

是非、この機会にクラウドETL「Xplenty」を**[1ヶ月間無償トライアル](https://try.xplenty.com/jp/)</font></a>**で体験してみてください。