データマートは、組織のデータ蓄積・分析環境において作業者が直接活用する部分です。よって、データマートの設計が効率的なデータ活用のカギを握ります。この記事では、データマートを設計するにあたって、どのようなことを知っておくべきか、どのような点に注意すべきかについて解説します。
そもそもデータマートとは?
データマート(data mart)の「マート」は、スーパーやコンビニなどの名前に使われる「マート」と同じ単語で、小売店を意味します。
企業や組織などのデータ全体を保持するのがデータウェアハウス(data warehouse、「データの倉庫」)であるのに対し、データマートはその一部の、個別の用途や機能に関係した部分のデータだけを保持します。
必然的にデータベースの大きさは、データウェアハウスよりも小規模になります。必要なデータだけがデータマートに集約されているため、情報を取り出しやすく、より深い分析ができ、管理も容易です。
データウェアハウスを分割してデータマートを作成することもあれば、データマートを統合することによってデータウェアハウスを構成することもあります。
データレイクとデータウェアハウスの構成も覚えておこう
データ分析においてデータマートと類似したものに「データレイク」と「データウェアハウス」があります。システム構成としては、データレイク、データウェアハウス、データマートの3層構造とするのが一般的です。
データレイク(data lake、データの湖)は、外部から収集してきたデータを加工せず、生データのまま保持します。データウェアハウスやデータマートと情報が重複してしまいますが、構造化されない状態でデータを元の形のままデータレイクとして保持しておくことでバックアップの機能を果たします。また、データウェアハウスやデータマートの再構成も容易に行うことができます。
データレイクの生データを整理・加工し、情報として処理しやすい構成にして格納し直したものがデータウェアハウスで、一般的なデータベースの構成であるケースが多いです。
データの分析・活用は、基本的にはデータウェアハウスを用いて行うことができますが、データの規模が非常に大きく、目的とは関係のないデータも大量に含むため、具体的な分析の際に扱いにくくなりがちです。そこで、目的や部門などに応じて必要な情報を取り出し、整理したものがデータマートです。
データ分析基盤を構成するポイント
ここまで見てきたように、データ分析基盤はデータレイク、データウェアハウス、データマートの3層で構成されますが、具体的に構成していくうえで押さえておくべきポイントがいくつかあります。
ここからはデータ分析基盤を構成するポイントについて解説します。
1.データ活用コストの最適化
データ分析基盤を構成する最大のメリットは、企業データを効率的に再利用できるようになることです。そのためには、データマートの構成が特に重要になります。
データウェアハウスであれば保有している全てのデータにアクセスが可能ですが、そのぶん個別のデータへのアクセスは煩雑となり活用コストが高くなってしまいます。そこで必要なデータセットに特化したデータマートを作成することでコストが最適化できます。
求められる用途を事前に洗い出してアセスメントし、利用者が必要十分なデータを容易に取り出せるよう構成しましょう。
2.データ更新の流れは一方通行に
データの更新は、データ分析基盤の構築においてボトルネックになりやすい部分と言われています。
データの更新の流れにおいて、手作業の部分が入ってしまったり、逆方向の流れが存在したりすると、ミスや不整合性の問題が発生する原因になることがあります。そのため、生データの収集から活用可能な構造構築までの流れは、自動連携で全て行われるようにし、データの流れは常に一方通行になるように設計しましょう。
3.必要以上にデータ結合を行わない
データ分析のためにはデータの結合が必要になりますが、データの結合を進めると、データソースや提供先が増えるにしたがって、変更があった場合に影響する範囲が広くなってしまい、管理にさまざまな問題が生じます。
特にデータウェアハウスの段階では、過度のデータ結合を行わないようにしましょう。データの結合はデータマートなどのデータ分析環境で行うことができますし、結合用のデータテーブルを別途追加するという方法もあります。
4.運用方法を考慮する
データマートは利用者のためにデータウェアハウスから一部を抽出して、最適化されたデータセットのため利用側にとっては非常に効率の良いデータセットです。
しかし、利用側の要件に応じて加工したデータマートが乱立するとデータ整合性の維持やアクセス管理をすることが大変になります。またデータマートのデータを利用側で加工されると、管理者はもはや手が付けられません。
データマートの乱立はガバナンスが崩れることが可能性があることに注意が必要です。データマートを構築する際は、変更管理やアクセス管理等、運用面についても構築当初から設計するようにしましょう。
Lookerとは?
データマートの利便性の良さを保ちつつ、ガバナンスを効かせることはできないでしょうか。
Lookerは GoogleCloud のプロダクトで、ガバナンスに非常に強みを持ったBIツールです。Lookerにはユーザからの分析要求とデータウェアハウスの間にモデルレイヤーが存在し、このモデルレイヤーでデータマートの作成を処理するような定義を集中管理しています。
つまりデータマートは不要で、このレイヤーを通してデータマートに相当するクエリが作成され、DWHに対してクエリが発行される仕組みとなっております。
処理の定義はモデルレイヤーで集中管理されるため、ガバナンスを効かすことができ、Git連携も可能なため処理の変更履歴を管理することができます。
データマネジメント機能も備わっており、データのメタ情報管理やデータの発生源を図式化して表示するリネージュのような機能も備わっています。
また、このモデルレイヤーに対してAPIでアクセスができるのでLookerを単なるBIツールではなく、ガバナンスを効かせたデータプラットフォームとしてご利用できます。
Lookerを利用すれば、データマートの運用コストが抑えられるのではないでしょうか。
まとめ
データマートは、データウェアハウス・データレイクとともにデータ分析基盤を構成する要素の一つで、利用者の目的に合った扱いやすい分析環境を提供するものです。その反面、乱立するとガバナンスの崩壊につながる可能性があります。全体の構成とメンテナンス性を考慮した設計を行い、組織におけるデータ活用を加速しましょう。
電算システムでは、データレイク、データウェアハウス、データマートそしてBIとしてLookerを利用した構築のご支援が可能です。全社データドリブン基盤をご検討の際は、是非お問合せください。