天天看點

學習筆記——列存儲

列存儲。印象中,資料都是按行來組織的吧,謂之一條條記錄。居然有按列來存儲的?

“目前大資料的存儲方式有兩種方式:行存儲和列存儲。業界對兩種存儲方案有很多争持,集中焦點是:誰能夠更有效地處理海量資料,且兼顧安全、可靠、完整性。從目前發展情況看,關系資料庫已經不适應這種巨大的存儲量和計算要求,基本是淘汰出局(是嗎?太聳人聽聞了吧,我有點懷疑)。在已知的幾種大資料處理軟體中,Hadoop的HBase采用列存儲,MongoDB是文檔型的行存儲,Lexst是二進制型的行存儲。”

行存儲:

學習筆記——列存儲

列存儲:

學習筆記——列存儲

行存儲的優點就是插入、修改比較快;

列存儲則是查詢單個列、或者少數列時比較快。由于按列來組織,同列資料類型一緻,是以存儲、解析簡單。

“ 如果首要考慮是資料的完整性和可靠性,那麼行存儲是不二選擇,列存儲隻有在增加磁盤并改進軟體設計後才能接近這樣的目标。如果以儲存資料為主,行存儲的寫入性能比列存儲高很多。在需要頻繁讀取單列集合資料的應用中,列存儲是最合适的。如果每次讀取多列,兩個方案可酌情選擇:采用行存儲時,設計中應考慮減少或避免備援列;若采用列存儲方案,為保證讀寫入效率,每列資料盡可能分别儲存到不同的磁盤上,多個線程并行讀寫各自的資料,這樣避免了磁盤競用的同時也提高了處理效率。 無論選擇哪種方案,将同内容資料聚湊在一起都是必須的,這是減少磁頭在磁盤上的移動,提高資料讀取時間的有效辦法。”