PB級數據倉庫性能調優

      網友投稿 790 2025-04-02

      一、GaussDB分布式架構

      所謂集群是將多臺物理服務器組建成一個邏輯平臺,對外展現一個集群平臺的形式。

      所謂分布式架構是將數據分而治之。以邏輯進行劃分,將數據存放在不同的物理節點。

      CN:協調節點 負責接收來自應用的訪問請求,并向客戶端返回執行結果。Coordinator負責分解任務,并調度任務分片在DataNode上并行執行。

      CN:SQL語句的解析和任務規劃,把具體的任務下發給DN結構

      GTM:生成和維護全局事務ID、事務快照、時間戳等需要全局唯一的信息。

      DN:數據節點,負責存儲業務數據(支持行存、列存、混合存儲)、執行數據查詢任務以及向Coordinator返回執行結果。【不單存儲還負責計算】

      一臺物理機【2-4個DN】

      Coorinator做任務的規劃 分發,規劃完之后,把具體的任務拋給計算節點。

      Crew3 Worker1和Crew3 Worker2就是任務樹中的葉節點就是數據的掃描任務,接受下級任務的數據輸入,向上級任務輸出數據。

      Crew2 Worker1和Crew2 Worker2中間的節點就是各種數據運算任務,如Hash計算,Join操作,聚集操作和排序操作。接受下級任務的數據輸入,向上級任務輸出數據。

      在非阻塞的任務流程中,上級任務不需要等待下級完成全部任務返回整體結果級才啟動,下級任務生成一條結果記錄就可以傳遞給上級。

      阻塞情況下,上級任務需要等待下級任務完成所有數據處理工作。

      二、調優原則與流程

      說白了,就是少花錢,多辦事,資源利用最大化,比如我們在點查詢場景的時候盡量使用索引掃描。如果實在不能索引掃描,我們會讀取每一條元組和點查詢條件進行匹配。

      在沒有資源瓶頸的情況下,盡量充分利用資源,比如在數據排序的時候,盡量使數據不下盤,在內存進行排序。因為在磁盤中讀寫的速度,肯定是不如內存的。

      靜態調優一般架構師會根據業務特征確定集群部署方案,表定義,行列存,復制/哈希分布等設計的過程。方案和表一般確定下來,后期如果要改動,代價很大。

      可能作為有經驗的人來說,收集統計信息,sql改寫,數據庫參數配置,plan hint等手段基本都做過,它屬于執行態調優。但是沒有經驗的人可能只知道理論,不知道如何操作,久而久之,理論都忘記了。

      防止單點(單個DN)數據多, 導致整個集群有效容量下降。

      防止單點掃描,壓力過大。

      通過,分區,索引,局部聚簇實現。(后面會有實踐操作)

      選擇關聯列,做為分布列,比如用id關聯,將id做為分布列,這樣查詢的時候,避免跨計算接點的數據流動,減少網絡壓力。

      局部聚簇是列存儲下獨有的手段,通過把表數據按照指定列排序后存儲,配合稀疏索引,可以實現表數據的快速掃描。【華為獨有的科技】

      三、伴隨場景介紹

      發現一個犯罪嫌疑人,還有他的車輛,我怎么通過數據挖掘來找到犯罪團伙的場景。

      四、調優實踐

      Plan Information:在sql語句執行的時候,perf語句會包含非常多的執行動作,也會消耗很多的資源,我們通過perf把這些信息都記錄下來。常用的是前2個。Plan 執行過程中每個算子的執行概要信息。比如:scan,join等。另外一個是算子,with信息。

      Predicate Information: 算子信息,每條數據掃描,伴隨的filter條件,join伴隨的關聯字段。

      會對數據類似于分區,然后進行局部排序

      并通過元數據信息記錄這個區間的最大值和最小值。

      CUNone:0我忽略了多少個數據段

      CUSome:6我需要掃描多少個數據段

      Scan的性能提升的兩個主要策略

      1)減少實際IO

      a)索引

      b)pck

      c)分區

      2)Scan壓力均衡

      a)調整分布列

      PB級數據倉庫性能調優

      數據批量入庫的時候,按字段做一些排序。排完序之后,再入庫。

      導入表數據和統計信息。

      Time:10.422ms

      不包含PCK大概花了23.902ms

      pck建立的場景和索引的建立場景是有點像的。

      nestloop的在特定場景下,性能會非常好,比如小表join大表的時候,

      hashjoin在大多數場景下,性能最優。大表join大表

      hash join一般期望數據量小的表做內表,

      hash join:137ms

      merge join:775ms

      nestloop:1137.9ms

      問題總結:

      1.truncate和delete快

      答:?truncate 整個文件都不讀? delete標記元組 刪除

      2.PCK對入庫的數據做局部排序影響較小。

      3.MPP數據庫性能瓶頸在哪些?

      答:數據庫性能瓶頸在具體數據處理業務場景,分布式架構場景下,業務CPU吃滿了,瓶頸在CPU,內存吃滿了,瓶頸在內存。

      采集于華云數據倉庫GaussDB DWS_數據倉庫性能調優-version 5.0-華哥

      數據倉庫服務 GaussDB(DWS) 應用性能調優

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

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

      上一篇:excel批量建立副本的方法(excel怎么建立多個副本)
      下一篇:excel安裝包在哪里找(excel表格安裝包在哪)
      相關文章
      国产亚洲精品第一综合| 亚洲成av人片在线天堂无| 亚洲AV无码成H人在线观看| 亚洲欧美日韩中文字幕一区二区三区| 亚洲天堂一区在线| 亚洲综合一区二区精品久久| 亚洲Av无码专区国产乱码DVD| 国产乱辈通伦影片在线播放亚洲| jlzzjlzz亚洲乱熟在线播放| 在线a亚洲v天堂网2018| www亚洲精品少妇裸乳一区二区| 日日摸日日碰夜夜爽亚洲| 香蕉视频亚洲一级| 女bbbbxxxx另类亚洲| 久久久久久久久无码精品亚洲日韩| 国产精品无码亚洲一区二区三区| 亚洲Av永久无码精品黑人| 亚洲av无码专区在线观看下载| 美国毛片亚洲社区在线观看 | 久久久久亚洲Av无码专| 久久亚洲精品人成综合网| 亚洲视频在线不卡| 亚洲中文字幕在线无码一区二区| 亚洲一区二区三区不卡在线播放| 香蕉大伊亚洲人在线观看| 亚洲熟妇无码八V在线播放| 亚洲国产欧洲综合997久久| 香蕉视频亚洲一级| 亚洲五月午夜免费在线视频| 亚洲伊人色欲综合网| 亚洲成色在线综合网站| 91亚洲国产成人精品下载| 亚洲videos| 久久亚洲精品无码av| 亚洲人成网站18禁止一区| 国产亚洲成av人片在线观看| 亚洲乱亚洲乱淫久久| 亚洲人成电影院在线观看| 亚洲av无码成人精品区一本二本 | 亚洲国产V高清在线观看| 亚洲国产精品第一区二区三区|