9行目: 9行目:


==データベース設計==
==データベース設計==
データベース設計においては特に、以下2点を強く意識すべき。
データベース設計においては特に、以下2点を強く意識すべき。


# マシンパワーの活用を大前提としたデータベース設計
# マシンパワーの活用を大前提としたデータベース設計
# 目的から逆算した実世界の状態のパラレルワールド化
# 目的から逆算した実世界の状態のパラレルワールド化
===マシンパワーが大前提===
データを管理するだけであれば別に紙やノートを使っても良いはず。わざわざマシンにデータ管理を任せるのだから「マシンにしかできない何か」を強く期待しているはず。
つまり、マシンパワーの活用と目的の実現とのバランスをしっかり前提とした上でテーブル設計やチューニングすることが大切。

2019年2月20日 (水) 07:20時点における版

SQL とはマシンに何か大切なデータ管理を任せたい時に利用する言語。比較的簡単な文章を使ってマシンとデータ管理についてやりとりできる。

データベースの本質

データベースの本質は「実世界」のパラレルワールドをマシンの中に創造すること。データベースとは、人間の認識を反映する鏡。

実世界(やその状態)を「パラレルワールド」としてマシンの中に複製すると、遠隔マシンにバックアップしたり、Webアプリに整形して発展させたり、AIと抱き合わせて情報分析したりと、色々なことができるようになる。

RDB の場合、主にリレーション(2次元表)という表現手法に沿って実世界(やその状態)をパラレルワールド化していくことになる。ちなみに、他の表現手法には NoSQL や DIT などがある。

データベース設計

データベース設計においては特に、以下2点を強く意識すべき。

  1. マシンパワーの活用を大前提としたデータベース設計
  2. 目的から逆算した実世界の状態のパラレルワールド化

マシンパワーが大前提

データを管理するだけであれば別に紙やノートを使っても良いはず。わざわざマシンにデータ管理を任せるのだから「マシンにしかできない何か」を強く期待しているはず。

つまり、マシンパワーの活用と目的の実現とのバランスをしっかり前提とした上でテーブル設計やチューニングすることが大切。