【からむ】
カラム とは?
💡 テーブルの「縦方向の項目」、データの種類を定義する列
📌 このページのポイント
カラムってどんな単位なの?
データ型って何のためにあるの?
「ageカラムはINT(整数)」と定義すれば文字列が入れられなくなる。「emailカラムはVARCHAR(255)」とすれば255文字以上は入らない。データの型を決めることで不正なデータの混入を防いで効率的にデータを保存できる。
インデックスをカラムに作るって何?
本の「索引」みたいなもの。検索によく使うカラム(例:email)にインデックスを作ると、「WHERE email = 'test@example.com'」の検索が全行スキャンせずに高速に見つかる。データが多いほど効果が大きい。
通常のRDBは行(レコード)単位でデータを保存するけど、カラム型(列指向)は列ごとにデータをまとめて保存するんだ。「全ユーザーの年齢の平均」を出すとき、行指向は全行を読む必要があるけど、カラム型は年齢列だけ読めばいい。だから分析クエリが圧倒的に速いんだよ。BigQueryやRedshift、ClickHouseがカラム型の代表例だね。さらに同じ列のデータは似た値が多いから圧縮率も高い。TBクラスのデータ分析では行指向と桁違いの性能差が出ることがあるんだ。
まとめ:ざっくりこれだけ覚えればOK!
カラムって出てきたら「DBテーブルの縦方向の項目(列)、データの種類を定義するもの」と思えばOK!
📖 おまけ:英語の意味
「Column」 = 柱・縦の列
💬 表の「縦列(column)」を指す。建築の「柱(column)」と同語源で、縦に積み重なるデータ項目を表す