GaussDB(DWS) 列存delta表的簡單介紹

      網友投稿 1994 2025-04-01

      1.1 ? ?Delta表是什么


      Delta表就是列存表附帶的行存表,如果創建列存表時開啟了delta表(開啟/關閉方式見下文),那么在某些情況下,插入該列存表的數據,也會以行存的方式保存。

      1.2 ? ?Delta表存在的意義

      Delta表是依附于列存表的,所以先簡單的介紹下列存的基本原理:

      在GaussDB中,列存表按列存儲數據,每列默認60000行存儲在一個CU中,CU是列存表存儲數據的最下單元,CU生成后數據固定不可更改。

      無論是向列存表中插入1條還是60000條數據,都只會生成一個CU,在多次插入少量數據時,不能有效的利用列存壓縮能力,導致數據膨脹影響查詢的性能和磁盤使用率。

      并且CU只能追加寫。也就是說,后面對這個CU中的數據做更新或刪除都不會真正更改這個CU,刪除是將老數據在字典中標記為作廢,更新操作是標記老數據刪除后,再寫入一條新記錄到新CU,CU不會有任何的modify。

      從這里我們可以看出,在對列存表進行多次更新/刪除,或每次只插入很少量的數據后,會導致列存表空間膨脹,大量空間無法有效利用,這是因為列存表在設計上就是為了大批量數據導入以及海量數據按列存儲/查詢。

      Delta表正是為了解決這兩個問題。在啟用delta表后,單條或者小批量數據導入時,數據將進入delta表中,避免小CU的產生,delta表的增刪改查與行存表一致。開啟delta表后,將顯著提升列存表單條導入的性能。

      1.3 ? ?如何開關delta表

      Delta表默認是關閉的,若需要開啟delta表,可以創建列存表時指定enable_delta為true

      當然表創建完之后也可以隨時開關delta表:

      開啟delta表:ALTER TABLE table_name SET (enable_delta=TRUE);

      關閉delta表:ALTER TABLE table_name SET (enable_delta=FALSE);

      1.4 ? ?開啟delta表后的性能提升

      前文說到,開啟delta表能夠防止小cu的產生,所以在小規模數據導入時,開啟delta表能夠帶來顯著的性能提升,在3CN,6DN的集群上測試,每次導入100條數據,導入時間能減少25%,存儲空間減少97%,所以在需要多次插入小批量數據前應該先開啟delta表,等到確定接下來沒有小批量數據導入了再關閉。

      1.5 ? ?開啟delta表的負面影響

      Delta表就是列存表附帶的行存表,那么將數據插入delta表后將失去列存表的高壓縮比等優勢,正常情況下使用列存表的場景都是大批量數據導入,所以默認關閉delta表,如果開啟delta表做大批量數據導入,反而會額外消耗更多時間和空間,同樣在3C6D的集群上測試,每次導入10000條數據時,開啟delta表會比不開啟時慢4倍,額外消耗10倍以上的空間。所以開啟delta表需謹慎,根據實際業務需要來選擇開啟和關閉。

      1.6 ? ?將delta表的數據轉移到主表存儲

      Delta表解決了小批量插入的問題,但是在多次小批量插入后,delta表也會變成一張大表,對此,需要用deltaMerge操作將數據從delta存儲轉移到列存儲。

      GaussDB提供兩種合并操作:自動的auto-deltaMerge和手動的deltaMerge。auto-deltaMerge會將默認60000行以上的數據合并到列存儲,而手動deltaMerge會將全部數據從Delta存儲合并至列存儲。但手動deltaMerge依賴高級別的鎖,需謹慎使用。

      手動deltaMerge的語法:vacuum deltamerge tablename;

      1.7 ? ?總結

      GaussDB(DWS) 列存delta表的簡單介紹

      本文從delta表的概念、來歷、用法、開啟后的影響,delta表數據轉移到主表幾個方面做了詳細的介紹。列存Delta表應用于行列混合存儲,適合實時分析統計,解決了實時小批量數據入庫引起的性能問題,定期合并到主表保證分析查詢的性能。在實際使用時需要根據業務場景來評估是否需要開啟delta表,否則不僅無法充分發揮GaussDB列存表的優勢,反而會造成額外的空間和時間的浪費。

      EI企業智能 Gauss AP 數據倉庫服務 GaussDB(DWS)

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Excel工作表常用操作 添加、刪除、重命名、移動和復制、隱藏保護等(excel工作表怎么用)
      下一篇:隱藏幻影片是什么(幻影電影解析)
      相關文章
      亚洲精彩视频在线观看| 中文字幕亚洲综合久久男男| 久久精品国产亚洲AV网站| 亚洲熟女乱综合一区二区| 麻豆亚洲AV成人无码久久精品| 亚洲一区二区三区久久久久| 亚洲精品在线免费观看视频| 亚洲精品不卡视频| 亚洲精品在线不卡| 久久精品国产99国产精品亚洲| 亚洲人成黄网在线观看| 亚洲人成人77777在线播放 | 亚洲乱码在线观看| 国产精品亚洲综合久久| 亚洲日韩中文字幕无码一区| 亚洲日韩精品A∨片无码加勒比| 狠狠色伊人亚洲综合网站色| 亚洲中文字幕乱码熟女在线| 亚洲中文字幕久久久一区| 亚洲а∨精品天堂在线| 国产精品亚洲а∨无码播放不卡| MM1313亚洲国产精品| 亚洲成av人片一区二区三区 | 亚洲美女aⅴ久久久91| 亚洲综合亚洲国产尤物| 亚洲伊人精品综合在合线| 亚洲视频无码高清在线| 亚洲精华国产精华精华液好用| 亚洲国产精品无码中文lv| 最新亚洲人成网站在线观看| 亚洲成AⅤ人影院在线观看| 亚洲色大成网站www永久一区| 亚洲av无码国产精品夜色午夜| 久久久久久亚洲AV无码专区| 亚洲国产电影在线观看| 亚洲精华国产精华精华液好用| 亚洲成?v人片天堂网无码| 亚洲狠狠婷婷综合久久久久| 久久丫精品国产亚洲av不卡| 精品亚洲成在人线AV无码| 鲁死你资源站亚洲av|