日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

從自建StarRocks集群向Serverless StarRocks的遷移方案

本文將介紹StarRocks遷移至EMR Serverless的整體解決方案及具體遷移步驟。該遷移方案僅供參考,您需要結合實際業務情況進行調整與優化,以更好地滿足您的需求。

遷移流程

整體遷移流程如下圖所示,涵蓋了作業改寫、作業雙跑、數據校驗、業務校驗以及割接等多個步驟。

image

前期評估

確認當前集群情況

請確認當前集群的基本情況,包括集群的版本,FE規格和數量,BE規格和數量,以及負載等信息。

集群信息

集群信息

配置示例

FE配置

機型配置

通用型ecs.g7.4xlarge 16 Core 64 GB

系統盤:ESSD PL1 云盤 100 GB * 1塊

數據盤:ESSD PL1 云盤 100 GB * 1塊

節點數量

3臺

BE配置

機型配置

通用型ecs.g7.4xlarge 16 Core 64 GB

系統盤:ESSD PL1 云盤 100 GB * 1塊

數據盤:ESSD PL1 云盤 1000 GB * 4塊

節點數量

3臺

StarRocks版本號

-

例如:2.5.13

集群負載

CPU負載

高峰:82.9%

低峰:50.3%

image

MEM負載

高峰:82.9%

低峰:50.3%

image

磁盤IOPS負載

高峰:10504

低峰:1003

image

磁盤IO負載

高峰:514 MB/s

低峰:15 MB/s

image

確認業務使用情況

說明

以下信息僅為配置示例,實際應用時需根據具體情況調整。

  • 數據導入方式

    數據導入方式

    數據寫入分類

    每日數據增量

    每日新行數

    任務數

    實時寫入(Flink)

    實時數據

    10 GB

    1 億行

    80

    Kafka + Routine

    實時數據

    10 GB

    1 億行

    20

    離線導入(Spark Connector、DataX)

    離線數據

    10 GB

    1 億行

    120

  • 物化視圖使用情況

    物化視圖

    任務數

    同步頻率

    同步物化視圖

    12個

    異步物化視圖

    89個

    大部分為每小時更新

    Insert Overwrite

    120個

    大部分為每半小時更新

  • 確認業務能夠接受的停服時間

    為了確保業務連續性,必須提前評估業務能夠接受的停服時間。整個遷移的停服時間取決于具體方案,通常在30分鐘至半天左右不等。因此,務必提前與業務方進行充分溝通,明確預期停服時間。

新建目標集群

說明

建議目標集群與源集群的配置盡量保持一致,待業務文檔運行后再根據負載情況靈活進行擴縮容。

根據您的業務需求,選擇適當的實例類型創建Serverless StarRocks實例。您也可以通過釘釘群24010016636聯系我們進行評估。參考文檔如下:

數據遷移

1、安裝遷移工具

該工具基于兩個集群的元數據以及文件元數據對比,會定期將源集群的元數據以及數據增量同步到目標集群中。它作為遷移過程的一環,主要解決存量數據同步,元數據同步以及離線部分增量數據更新。

  • 遷移工具的使用限制、安裝、使用等信息,請參見StarRocks跨集群數據遷移工具

  • 遷移工具速率說明:

    • 參考經驗值:約1 TB/小時。

    • 具體遷移速率受以下因素影響:同步的庫表數量、表數據量、表分區數量以及桶的數量。對于單表來說,tablet數量越多,遷移速率會越慢。

    • 遠距離跨地域或跨VPC的遷移速率主要受網絡穩定性影響。遷移過程中需要在兩個集群之間建立大量連接,若網絡不穩定或速率較慢,遷移速率也會受到顯著影響。

  • 遷移工具測試:在完成安裝并正確配置了源集群與目標集群的詳細信息后,進行工具的功能驗證,確保其能夠順暢運作。

2、表結構&存量數據同步

通過上述遷移工具可以實現表結構以及存量數據的同步。您可以參考遷移工具的速率,同時結合實際測試情況來合理評估同步時間。通過配置遷移工具的以下2個參數,可以合理控制期望同步的表和數據的范圍。

說明

如果您需要遷移集群中所有數據庫和表,則無須配置以下參數。

參數

說明

include_data_list

需要遷移的數據庫和表,多個對象時使用逗號(,)分隔。例如,db1,db2.tbl2,db3。該參數優先于 exclude_data_list生效。

exclude_data_list

不需要遷移的數據庫和表,多個對象時使用逗號(,)分隔。例如,db1,db2.tbl2,db3include_data_list優先于該參數生效。

3、實時任務遷移

如果您正在執行Flink或Kafka的實時寫入任務,建議進行雙寫配置,以便同時將數據寫入目標集群和源集群,從而確保數據一致性。

  • 停止遷移工具:首先,停止當前的遷移工具,并調整配置,以排除對正在實時更新的表數據的同步。可通過exclude_data_list參數進行控制。

  • Flink作業:在Flink作業的平臺上,復制現有任務,并修改數據源配置,指向目標集群。

  • Stream Load作業:在目標集群中手動創建相應的Stream Load作業,以實現對Kafka數據的雙寫同步。

說明

在業務數據導入時,通常會有明確的offset或時間戳標識。例如,若同步任務于13:00啟動并于13:30結束,目標集群表中至少應包含13:00之前的數據。同步任務結束后,可以將雙寫的Flink或Kafka任務設置到13:00之前的offset,以便完成遷移窗口期的數據追平工作。

4、離線任務遷移

  • 離線任務啟動:去掉實時更新的相關表后,繼續啟動離線任務,保持對離線更新數據的持續同步。

  • 離線任務復制:復制離線任務實現對目標集群的更新,但在割接階段之前暫時不啟動相關任務。

說明
  • 確保提交離線任務的機器與目標集群之間的網絡連接穩定,避免因網絡問題導致任務失敗。

  • 選擇1~2個任務進行驗證,以確認離線任務流程的準確性和順暢性。

5、(可選)物化視圖遷移

請參考以下社區命令,以獲取相關的物化視圖或普通視圖的定義。然后,在目標集群中逐個創建相應的視圖。

6、(可選)外表遷移

3.x及之后版本,建議使用Catalog對StarRocks的外表進行統一管理。更多Catalog信息,請參見Catalog概述

如果需要獲取源表的DDL,可以通過SHOW CREATE TABLE命令,但不推薦在新集群中采用這種方式進行外表管理,建議優先使用Catalog。

根據您的具體需求,選擇合適的方法在目標集群中創建外表,并測試外表功能是否正常。

7、(可選)UDF遷移

請參考SHOW FUNCTIONS命令,獲取相關FUNCTION內容,并在目標集群中逐個創建相應的UDF。

說明

在EMR Serverless StarRocks中,您的JAR等文件應存儲在阿里云OSS中,使用以oss:為前綴的文件路徑進行替換。

數據校驗

1、數據一致性校驗

數據一致性校驗主要目的是驗證同步數據的準確性,通過對源表與目標集群進行比較。可以從以下幾個維度進行檢查:

  • 庫或表數量對比

  • 表記錄數對比

  • 每行記錄的匯總或去重計數對比

說明

如果源表與目標表存在輕微差異,可能是由于同步工具存在延遲導致的。建議結合業務場景,添加合適的時間戳,以進行更精準的校驗。

2、下游業務校驗

下游業務校驗主要從業務角度出發,對結果進行驗證,以確保源表、物化視圖及其他預處理數據的正確性。具體校驗方式如下:

  • 有下游測試系統:可切換數據源至目標集群,從業務角度對查詢結果和報表數據進行驗證。

  • 無下游測試系統,可采取以下兩種方法:

    • 業務SQL復現:手動挑選關鍵業務SQL,執行查詢并比對結果,以進行校驗。

    • 生產環境驗證:利用業務系統進行驗證,此過程需與業務方提前協商,驗證完成后應盡快切換回源集群。

說明

如果業務結果數據存在輕微差異,建議結合業務場景,添加合適的時間戳,以進行更精準的校驗。

3、性能驗證

性能驗證的關鍵在于復現實際生產業務的各種壓力,包括數據導入、業務查詢以及物化視圖的處理。同時,必須確保實時數據的雙跑、離線任務的同步處理以及物化視圖的正常運行,以模擬真實的生產環境。以下是需要驗證的要點:

  • 集群負載:確保CPU、內存、磁盤IO、IOPS及磁盤利用率等各項指標均在預期范圍內。

  • 業務查詢:驗證業務查詢的響應時間,確保其在業務需求的合理范圍內。

  • 數據導入:檢查數據導入的延遲情況,確保其在業務需求的合理范圍內。

業務割接

1、確認停服時間

由于業務割接將導致短暫停服,我們需要提前評估停服時間,并與業務方確認。建議在業務低峰期進行停服,以最小化對業務的影響。

通常情況下,割接的中斷時間主要集中在第五步(即業務系統切換至目標集群)。此步驟預計耗時較短,預計30分鐘至1小時。具體時間會根據項目情況進行實際評估。

2、終止源集群的離線數據同步

為確保割接時目標集群能夠追平源集群的數據,請在割接前停止離線同步任務。這意味著需要選擇適當的更新間隔期,并停止新數據的寫入,確保源集群不再增加新的離線數據。

3遷移工具持續同步,直至追平源集群

遷移工具將保持實時同步狀態,直至與源集群數據完全一致。

說明
  • 觀察時間至少10分鐘,若此期間無新數據同步,則算追平源集群。

  • 請確認所有離線寫入任務已終止,避免遷移工具因持續更新而無法追平。

4、離線同步任務寫入目標集群

在之前的遷移步驟中,已配置好離線任務寫入目標集群。本步驟僅需啟動這些任務,并觀察其運行情況,重點校驗:

  • 同步任務是否正常運行。

  • 目標集群的數據是否正常更新。

說明

請確保同步任務的開始周期與原停止周期能夠無縫對接。例如,如果上次停止更新的時間為2024年02月01日 00:00,則新任務應從該時間點的下一個周期啟動。

5、業務系統切換為目標集群

將下游使用StarRocks的業務系統數據源配置切換為目標集群的配置,并驗證業務系統的查詢功能,確保查詢耗時符合預期。

說明

若業務系統需要進行大量配置修改,建議提前準備修改腳本,以縮短配置修改時間。

6、割接驗證

割接后,對業務系統進行驗證,主要從下游進行檢驗,驗證項包括:

  • 業務系統查詢結果是否正確。

  • 業務系統查詢耗時是否符合預期。

如驗證中發現問題,請參考回滾方案

7、終止實時雙跑任務

驗證通過后,可以停止源集群的實時寫入任務,正式完成割接。

回滾方案

如果割接后驗證存在問題,請首先聯系阿里云EMR團隊協同解決相關問題。如果問題無法解決,再考慮回滾方案。回滾流程如下:

  1. 保持實時任務雙跑,避免執行數據校驗階段的第7步操作(即終止實時雙跑任務)。

  2. 將業務系統切換回源集群地址,驗證業務系統是否正常運行。

  3. 從上次停止的周期開始,恢復離線任務對源集群的寫入。

  4. 停止向目標集群寫入離線數據。

常見問題

Schema Change的影響有哪些?

盡管遷移工具已支持了Schema Change,但是Schema Change后,工具會對該表進行全量同步,會大幅增加同步所需的時間。具體的時間影響需結合表的數據量進行評估。

遷移過程通常需要多長時間?

遷移時間通常在1至4周之間,具體時長需根據您的實際業務情況進行評估。主要耗時環節包括實時任務雙跑、離線任務復制以及業務驗證。如果您的調度工具平臺支持快速任務復制,可顯著縮短遷移時間。