分析を通じてマーケティングに活用する、機械学習に活用して自動化を進めるなど、データ活用の多くのケースで、十分な質・量のデータが得られる仕組みを設けられるかどうかが成功を左右します。
そこで問われるのが「データモデリング」が適切に行われているかということです。
本記事ではいまさら聞けないデータモデリングの基本や、具体的な手法、データアーキテクチャとの違い、などについてご紹介します!
データモデリングとは、「データの流れと管理システムを図とテキストで定義・可視化すること」を意味します。企業活動を円滑に進める資源としてのデータの価値が高まるとともに、企業にとってデータマネジメントのケイパビリティを身につけることも欠かせないものとなっています。
データマネジメントの知識体系DMBOK2(詳しくはコチラ)でも「データモデリング」は欠かせないプロセスとして位置づけられています。
データモデリングで構築するデータモデルには「概念モデル」「論理モデル」「物理モデル」の3つのフェーズが存在します。それぞれを一言であらわすと、以下の通り。
店舗ごとの販売データ、在庫データ、取引先データなど、概念としてのデータとそれらの関係性、関連するビジネスルールなどをシンプルな図で表します。
概念モデルを下敷きに、データの構成やデータ型、各々の従属関係など必要な情報を拡充し、技術的観点からデータモデルの仕組みが理解できるように表します。
論理モデルを下敷きに、データが“物理的に”どう格納され、流れていくのかまで把握できるよう記述し、情報システムとして実装できる前の段階までデータモデルを表します。
データモデリングの基本用語としてエンティティ(実態)、リレーションシップ(関係)があり、前者は個々のデータの集まりを、後者はエンティティ同士の関係を指します。データモデリングの一手法である「TM(T字形ER手法)」を考案した佐藤正美氏は、住友電工情報システム社のインタビュー記事にてデータモデリングは事業プロセスを一対一対応の関係で表すものであり、誰が構築しても同じ結果になるべきだと語っています。
データモデリングは、データシステムの構成や流れだけでなく、データが業務にどう寄与するかの理解にもつながります。
ここからは、データモデリングを構築する具体的なプロセスについて見ていきましょう。
データモデリングは、「概念モデル→論理モデル→物理モデル」と内容を拡充しながら作り上げていくことについてはすでに述べました。概念モデルをつくりはじめる前に重要なのが、経営者や現場社員の声を拾い上げるインタビューです。実務者の頭や実際のプロセスの中に埋もれているデータ、ビジネスの流れをモデルとして図示化することで、概念モデルが生み出されます。そのため、スタート時点での目線合わせが非常に重要になるのです。
その後の具体的な流れは、以下の通りです。
1.エンティティを定義する
2.各エンティティをほかと区別する属性(プロパティ)を定義する
3.エンティティ間の関係性(リレーションシップ)を定義する
4.データに組み込むべきデータモデルを特定する
5.各エンティティに含めるデータを定義する
6.必要に応じてデータモデルを正規化する
7.データモデルの確認と検証を行う
もちろん、この手順は一例であり、既存のデータベースからリーバースエンジニアリング的に、データモデリングが行われる場合もあります。「4.データに組み込むべきデータモデルを特定する」で候補となるデータモデルには、階層型、ネットワーク型、RDBMS、ER図、ODBMS、次元データベース、グラフデータベースなどが存在し、取り扱うデータが構造化されているか否かなど、適性に応じて使い分けることになります。
また、構築されたデータモデルは常に検証され、事業やプロセスの変更に応じて改訂されます。
データマネジメントを11領域に分けるDAMAホイールで、データモデリング&デザインの横に位置づけられている「データアーキテクチャ」。下記の動画が作られているように、データモデリングと混同されやすいようです。
データアーキテクチャとデータモデリングは表現するものの狙いが異なります。データモデリングはその名の通り、各エンティティとその関係性をモデル化することを目的としますが、データアーキテクチャはデータを活用する事業・組織の構造、使用ツール、プラットフォームなどの青写真です。そのため、必ずしも図(アーキテクチャ図)として表現されることを前提としておらず、文書やルールとして定義されているものも含みます。
ある意味、データモデリングは描いたデータアーキテクチャを実態に反映するための一手法ともいえます。両者ともに、データマネジメントを行うためには欠かせない要素といえるでしょう。
データマネジメントにおいて欠かせないプロセスとしてデータマネジメントの意味とその具体的手法についてご紹介してまいりました。
ER図の描画ツールや、データモデリングに特化したデザインツールなど、無料のものも含めて検索すれば数多く見つかります。データモデリングの道のりは最初は険しく思えますが、それらのツールを活用しながら、まずは特定のシステムだけなど、できるところから始めましょう!
【参考資料】 ・データモデリングとは何ですか?┃aws ・What is data modeling? ┃Tach Target ・What is data modeling?┃IBM ・データモデリングとデータアーキテクチャ┃Eye on Tech YouTubeチャンネル ・7 data modeling techniques and concepts for business┃Tach Target ・データモデリング vs データアーキテクチャ: 5つの重要な違い┃Integrate.io ・沖冠吾『ゼロからのデータモデリング入門』┃@IT ・【連載記事】ユーザーのためのデータモデル入門┃富士通エンジニアリングテクノロジーズ ・梅田 弘之『データ中心設計(DOA)に基づいたデータモデリング』┃Think it ・データ モデリング ツールがもたらす 10 のメリット┃Microsoft ・データモデリング~佐藤正美氏、若手エンジニアにデータモデリングを語る~┃住友電工情報システム
(宮田文机)
メルマガ登録をしていただくと、記事やイベントなどの最新情報をお届けいたします。
30秒で理解!インフォグラフィックや動画で解説!フォローして『1日1記事』インプットしよう!