私たちの仕事では、同僚と私は、企業がデータ管理の問題にどのように直面しているかをよく目にします。テーブルやクエリがたくさんあり、これらすべてを管理するのが非常に難しい場合です。このような状況では、データをモデル化することをお勧めします。それが何であるかを理解するために、Towards Data Scienceのデータモデリングに関する記事レビューを翻訳しました。ここでは、基本的な用語と概念に加えて、小売業でのデータモデリングの使用例を見つけることができます。カットの下で前進!
ソフトウェアアプリケーションを見ると、基本的なレベルで、ビジネス要件を満たすためにデータを整理、処理、および提示していることがわかります。
データモデルは、ビジネス要件を表現および伝達するための概念表現です。データの性質、データを管理するビジネスルール、およびデータがデータベースでどのように編成されるかを視覚的に示します。
データモデリングは、家を建てることと比較できます。ABCがゲストハウス(データベース)を構築する必要があるとしましょう。同社はアーキテクト(データモデラー)を呼び出し、建物の要件(ビジネス要件)について説明します。アーキテクト(データモデラー)が計画(データモデル)を作成し、ABCに提出します。最後に、ABCは土木技師(DBAとDBA)に家を建てるよう呼びかけます。
データモデリングの重要な用語
エンティティと属性。エンティティとは、製品、顧客、注文など、データを保存したいビジネス環境の「モノ」です。属性は、データを整理および構造化するために使用されます。たとえば、販売価格や利用可能な数量など、販売する製品に関する特定の情報を保存する必要があります。これらのデータは、Productエンティティの属性です。エンティティは通常データベーステーブルであり、属性はそれらのテーブルの列です。
関係。エンティティ間の関係は、あるエンティティが別のエンティティとどのように関連しているかを表します。データモデルでは、エンティティは1対1、多対1、または多対多として関連付けることができます。
. « », , « » « ».
: 2 — . , .
, « »:
ER . ER- , .
, . :
— . , , , - -. :
, , , . , , — . :
:
vs
- . — , . , . 3- . OLTP .
. , .
ABC 200 . , « », «», « », « » .. 20 000 . (SKU). 6 000 -, . - (UPC). POS- 2 : , , .
, . , , ..
.
1. -
, POS-. , , , . , , .
2:
. . , . :
Date Dimension
Product Dimension
Store Dimension
Promotion Dimension
, (, , .), .
3:
, . :
4:
. :
Date Dimension:
Product:
Store:
Promotion:
Sales Fact:
.
(, ).
: * .
: , .
: - .
:
ステップ5:データベースに物理テーブルを作成する
データモデリングツールまたはカスタムスクリプトを使用して、データベースに物理テーブルを作成できるようになりました。
データモデリングがソフトウェアアプリケーションの開発において最も重要なタスクの1つであることが明らかになったと思います。また、データの整理、保存、取得、表示の基盤を築きます。