往下拉回到首頁
原來欄式儲存就是資料庫正規化的實踐

原來欄式儲存就是資料庫正規化的實踐

Columnar Storage Is Normalization

你知道為什麼現在的大數據公司都在用欄式儲存(columnar storage)嗎?簡單來說就是,傳統資料庫是一列一列地存資料,但欄式儲存反過來,改成一欄一欄地存。這聽起來好像沒什麼,但其實這就是把資料庫正規化(normalization)的概念真正落實到硬體層面。 想像一下,如果你要分析「所有客戶的年齡」,傳統方式要把整個客戶表都讀進來,但欄式儲存只需要讀「年齡」這一欄就好,超快。而且因為同一欄的資料類型都一樣,壓縮效率也更好,硬碟空間省一大堆。這也是為什麼 Google BigQuery、Amazon Redshift 這些分析型資料庫都用這套方式。說真的,這根本就是把「消除冗餘、提高效率」這個正規化的核心精神,用儲存結構體現出來而已。