Columnstore
為什麼現在列儲存數據庫是新事物?
與傳統數據庫相比,列儲存數據庫有幾個優勢——最顯著的是壓縮和更快的查找。列儲存似乎是過去幾年數據庫的新時尚,HANA 是最明顯的例子,但微軟和甲骨文(和其他公司)緊隨其後。
但是,列儲存數據庫的想法並不新鮮:
TAXIR 是面向列的數據庫儲存系統的第一個應用程序……在 1969 年
(維基百科)
為什麼列數據庫直到最近 8 年才起飛?當然,數據庫中的壓縮在 1970 年代非常有用,當時硬碟儲存並不像現在這樣便宜(並且更快的搜尋永遠不會受到傷害)。在過去的十年中,是否還有另一項發展支持列儲存數據庫?
總的來說,我認為數據倉庫的普及正在促使人們轉向列儲存索引。
列儲存索引旨在提高涉及大量數據的工作負載的查詢性能,這些數據通常存在於數據倉庫事實表中。
列儲存索引按列而不是按行儲存數據。通過將數據儲存在列而不是行中,數據庫可以更精確地訪問它需要回答查詢的數據,而不是掃描和丟棄行中不需要的數據。
對於寬表,例如數據倉庫中常見的表,列儲存索引會派上用場,因為您從本質上減少了任何給定查詢需要訪問的數據量和大小。
查看其中一些連結以獲取更多資訊和範例:
您最初的前提,即“列儲存數據庫與傳統數據庫相比有幾個優勢”,過於籠統——該陳述僅適用於某些工作負載,特別是 OLAP 類型,主要是只讀的,涉及聚合或視窗函式。
眾所周知,商業使用者和政府組織儲存和處理的數據量在過去十年中呈指數級增長,列組織儲存引擎青睞的工作負載類型,特別是業務分析和機器學習應用程序,其中列店利大於弊,近年來越來越受歡迎。
這些是列組織數據儲存最近才得到更廣泛使用的原因(相對而言)。