
こんにちは!やましー@データ活用クラウドエンジニア(@yamashi18041)です!
今日はデータ活用に欠かせないデータマートについて説明したいと思います。
現代は、過去にない程のスピードで様々なものが変化をする時代です。
あなたはこの時代の流れにうまく対応してビジネスマンとしてビジネスを成長させることができているでしょうか。
またはエンジニアとして自身の成長につなげることができているでしょうか。
企業は様々なものをデジタル化し、変革を起こすことで生き残りをかけてデジタルトランスフォーメーションを推進しています。
デジタルトランスフォーメーション( ITの浸透が、人々の生活をあらゆる面でより良い方向に変化させる) が起きたその先には何が残るでしょうか。
答えは「データ」が残る

デジタルトランスフォーメーションによって生み出された大量のデータ。
これを活用できるかどうかが今後生き残るための鍵となります。
さて、この大量のデータを活用するためには整理して溜めておく必要があります。
データを溜めるために必要なもの。それがデータ基盤。
データ基盤を構成する要素としてデータマートがあります。
今日はそのデータマートについて説明したいと思います。
この記事を読むことであなたはデータ活用の新時代にエンジニアとして、またはビジネスマンとして勝ち組に一歩近づくことができます。
その前にデータ基盤について知りたいよっていう方はこちらの記事をご覧ください。
今回対象の読者は以下を想定しています。
- データマートってどんなものなのか知りたい
- データウェアハウスとデータマートの違いが知りたい
- データ活用について幅広く情報を収集をしている
データマートとは

データ基盤を語る上でよく出てくる用語としてデータマートがあります。
このデータマート一言で言うならば、
「特定の用途や部門向けにデータを溜めておく場所」
です。
実態としてはリレーショナルデータベースで作られています。
もう少し具体的に説明します。

データ基盤を構成する要素は
- データレイク
- データウェアハウス
- データマート
があります。
その中でもデータマートはデータを分析しやすく関連のあるデータでひとまとまりにしてデータを溜めておきます。
データマートに取り込むデータはデータレイクやデータウェアハウスまたは業務システムから直接取り込むこともあります。
データを扱って分析をするユーザーは自分たちに関係があるデータマートを見ることになります。
例えば営業、マーケティング、人事、財務など 組織ごとにデータマートを構築することが多いと思います。
また、ユーザーはデータマートに分析(BI)ツールを接続してデータを参照します。

データマートはデーウェアハウスに比べて溜めてあるデータ量が少なくレスポンスが早いのが特徴です。
さらにデータウェアハウスは大規模なデータを高速に処理するために複数台のコンピュータを分散して処理を行います。
そのため、小さなデータを処理しようとすると逆に時間がかかってしまいます。
ユーザーがアクセスをデータマートにすることで、データウェアハウスへアクセスが集中するを避けることができるので負荷も分散されます。
次にデータマートの必要性について説明します。
データマートの必要性

データ基盤においてデータマートのデータはもともとデータウェアハウスにもあるので、分析者は直接データウェアハウスを参照することも可能です。
しかし、BIツールのダッシュボードによるデータの可視化を行う場合、応答性能を高める必要があるため、データマートはほぼ必須です。
いくつかデータウェアハウスと比較したその必要性を列挙します。
- 応答性能の向上が見込める
- 頻繁にアクセスするデータへの容易なアクセス
- 実装が簡単なのでコストが安い
- データの変更が容易
- 細かいアクセス制御が容易
- 保存場所を分散できる。
- データウェアハウスへのアクセスが減る
応答性能の向上が見込める
データ量が少ないため検索時間が短い、またアクセスする人数が少ないためIOの待ち時間があまりありません。
頻繁にアクセスするデータへの容易なアクセス
頻繁にアクセスするデータはあらかじめテーブル化されているため分析者が改めてSQLなどを書く必要がありません。
実装が簡単なのでコストが安い
一つのデータマートに格納するデータの種類は少ないため構築するためのコストが小さいです。
データの変更が容易
扱うデータの種類や量が少ないのでフォーマットに変更があった場合にも低コストで対応することができます。
細かいアクセス制御が容易
用途、組織別にパーティション細かく分かれているのでアクセス制御が容易です。
保存場所を分散できる
ハードウェアやソフトウェアをそれぞれのデータマートごとに要件に応じて違うものを選択することができる。
データウェアハウスへのアクセスが減る
データウェアハウスは様々なソースからデータを取り込む必要があり、負荷が集中しやすく定時処理が終わらないリスクを低減します。
データマートの種類

データマートはそのデータの取り込み元(データソース)により分類することができます。
- 従属データマート
- 独立データマート
- ハイブリッドデータマート
従属データマート

従属データマートとはデータソースがデータウェアハウスであるデータマートです。
メリットはデータが一度ウェアハウスを経由したものを使用するため統合化されている点です。
デメリットデータウェアハウスが必ず必要なので、構築するためにコストがかかります。
独立データマート

独立データマートとはデータソースにデータウェアハウスを使用しないデータマートです。
メリットとしてはデータウェアハウスを必要としないので、短期的に分析を行いたい場合に適しています。
デメリットはデータソースが一か所ではない場合、統合などの前処理や、構造化のための処理など独自のETLの管理必要が必要となり、ニーズが拡大したり複雑化した場合に作業は煩雑化します。
ハイブリッドデータマート

ハイブリッドデータマートとは従属データマートと独立データマートのhybridです。
データソースはデータウェアハウスに加え別のデータソースも併せて取り込むデータマートです。
メリットは新しい製品や組織を追加した際に素早く統合されたデータマートを構築できることです。
また、データウェアハウスからの取り込みがあるため、クレンジングや統合のコストを低く抑えることができます。
デメリットは独自のETLを必要となる場合もあり、管理が煩雑になることがあげられます。また、データウェアハウスに取り込まれていない状態データの存在を許すことになります。
データマートとデータウェアハウスの比較

デーウェアハウスとデータマートはよく違いを尋ねられるのでその比較をしてみます。
項目 | データウェアハウス | データマート |
---|---|---|
定義 | 意思決定のためデータを構造化して統合して時系列に溜める場所 | 特定の用途や部門向けにデータを溜めておく場所 |
用途 | 全社横断のビジネス戦略の意思決定 | 部門単位のビジネスのための戦術的意思決定 |
規模 | 大規模 100GB~1TB以上 | 小規模 100GB未満 |
設計 | 困難 | 容易 |
主題領域 | ある時点の統合的なあらゆるデータの断面など、その他複数 | 売上高などの特定の用途に限った領域のデータ |
利用者 | 全社 | 特定の部門 |
応答速度 | 遅い | 早い |
データの粒度 | 細かい | 粗い |
ソース | 非常に多い | いくつか |
構築期間 | 数か月~数年 | 数分~数週間 |
データマートの周辺技術
データウェアハウス

データウェアハウスはデータを取り出しやすいようにデータレイクに溜めたデータを構造化データとして整形して溜める場所になります。
すなわちSQLで処理できるようにする場所ということです。
そしてデータを統合するために項目名やコードを統一して溜めることになります。
さらに過去のデータもすべて 時系列で溜める場所になります。
より詳しく知りたい方はこちらをご覧ください。
データレイク

データレイクには各業務システムから得られるすべてのデータをそのままの形で置いておく場所になります。
溜めるデータには
- 非構造化データ(画像、動画、音声、テキスト等)
- 半構造化データ(JSON、XML、キーバリューストア等)
- 構造化データ(CSV、Excel、リレーションデータベース、等)
等があります。
より詳しく知りたい方はこちらをご覧ください。
BIツール 、クエリツール

BIとはビジネス・インテリジェンス(Business Intelligence) を意味しています。
データをグラフやチャート、マップなど様々な角度からデータを見える化し意思決定をスムーズに行うためのツールになります。
また、ダッシュボードやレポーティングなどを行い、情報の共有等を行うこともできます。
データウェアハウスやデータマートに接続して、接続するツールです。
以下のようなものがあります。
- Microsoft Power BI
- Pentaho(ペンタホ)
- Qlick Sense(クリックセンス)
- Tableau(タブロー)
- Google Data Studio
メタデータ管理ツール

メタデータ管理とはデータガバナンスと言ったりもします。
データウェアハウスやデータ基盤など1か所にデータを入れたたとしても実はどのデータがどのようなテーブル構造、スキーマ構造で入っているかを管理しなければどこに何があるかが分からなくなってしまします。
そのためのメタデータ管理ツールを使いデータカタログを作りデータを管理します。
まとめ

データの重要性がますます加速していく中、データを活用できるかが今後の生き残りのカギとなっていくことはもはや言うまでもありません。
そこで今日はデータを活用するために必要なデータマートについて解説してみました。
データマートとは
「特定の用途や部門向けにデータを溜めておく場所」
でした。
そしてその用途としては、ユーザーがデータマートに分析(BI)ツールを接続してデータを参照することで気づきをてビジネスに生かすことでした。
データマートはそのソースから以下の3つの分類に分けることができることをお伝えしました。
- 従属データマート(ソース:データウェアハウス)
- 独立データマート (ソース:データウェアハウス以外)
- ハイブリッドデータマート (ソース:従属と独立の混合)
今後もこのブログではデータ活用についてその概念や手段などをお伝えしていきたいと思います。
是非私と共にデータ活用時代の勝ち組となっていきましょう。
最後まで読んでいただきありがとうございました。
以上、やましー@データ活用クラウドエンジニア(@yamashi18041)でした。