當您需要一站式完成PolarDB分布式版資料同步與管理時,可以在PolarDB分布式版執行個體中開通列存引擎並繫結目標企業版及湖倉版叢集。相較於其他資料同步方案,一站式方案同步資料成本低、簡單易用、能即時同步資料,可實現真正的即時分析。本文主要介紹如何一站式將PolarDB分布式版執行個體的資料同步至AnalyticDB for MySQL企業版及湖倉版叢集。
前提條件
企業版及湖倉版叢集與PolarDB-X 2.0執行個體位於同一地區且所屬同一VPC。具體操作,請參見建立企業版或湖倉版叢集和建立PolarDB-X 2.0執行個體。
PolarDB-X 2.0執行個體的系列為企業版,版本為5.4.19-16989811及以上。
說明如何查看並升級執行個體版本,請參見查看和升級執行個體版本。
企業版及湖倉版叢集核心版本需為3.2.0.0及以上。
說明如何查看叢集核心版本,請參見如何查看執行個體版本資訊。如需升級核心版本,請聯絡支援人員。
已建立企業版及湖倉版叢集的資料庫帳號。
如果是通過阿里雲帳號訪問,只需建立高許可權帳號。具體操作,請參見建立高許可權帳號。
如果是通過RAM使用者訪問,需要建立高許可權帳號和普通帳號並且將RAM使用者綁定到普通帳號上。具體操作,請參見建立資料庫帳號和綁定或解除綁定RAM使用者與資料庫帳號。
背景資訊
AnalyticDB for MySQL是基於湖倉一體架構打造的即時數倉,可以對海量資料進行高效能的查詢。PolarDB-X是高效能雲原生分散式資料庫,可支撐千萬級並發規模及百PB級海量儲存。PolarDB-X 2.0執行個體開通列存引擎,綁定企業版及湖倉版叢集後,企業版及湖倉版叢集會自動建立中繼資料發現任務,PolarDB-X 2.0執行個體列存表的中繼資料資訊會自動同步到企業版及湖倉版叢集,您可以直接在企業版及湖倉版叢集中進行資料分析。
一站式同步PolarDB-X 2.0執行個體資料的優點如下:
即時同步:您在PolarDB-X 2.0中修改資料後,會秒級同步到企業版及湖倉版叢集,在企業版及湖倉版叢集中可以秒級查詢資料的變化,實現真正的即時分析。
簡單易用:PolarDB-X 2.0中的資料和表結構修改後會自動同步到企業版及湖倉版叢集,您無需做任何管理。
高性價比、成本低:PolarDB-X 2.0開通列存引擎,無需額外費用。在企業版及湖倉版叢集中進行資料分析時,可以使用Job型資源群組進行SQL開發,Job型資源群組計算和儲存資源按需彈性,成本低。
應用情境
一站式同步PolarDB-X 2.0資料主要適用於以下情境:
PolarDB-X 2.0資料即時分析:對PolarDB-X 2.0中資料進行即時分析,同時不影響線上業務。
多資料來源關聯分析:需要把PolarDB-X 2.0的資料和其它資料來源資料關聯分析。
多PolarDB-X 2.0執行個體資料分析:對多個PolarDB-X 2.0中的資料進行關聯分析。
注意事項
同步資料時,會在企業版及湖倉版叢集中建立與PolarDB-X 2.0執行個體中資料庫和表同名的庫表,因此在同步資料時需注意以下內容:
若企業版及湖倉版叢集中已經存在同名庫和同名表,則會導致資料同步失敗。
若企業版及湖倉版叢集僅存在同名庫,則不會建立新的資料庫,表會同步至已存在的同名庫中。
資料準備
本樣本的PolarDB-X 2.0資料庫名為test_adb
,並在該庫中建立了一張名為person
的表,樣本如下:
CREATE DATABASE test_adb MODE='AUTO'
CREATE TABLE person (
`id` bigint NOT NULL AUTO_INCREMENT,
`age` int(11) NOT NULL DEFAULT '0',
`name` char(60) NOT NULL DEFAULT '',
`city` char(60) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
INDEX `age_1` (`age`)
) PARTITION BY KEY(`id`) PARTITIONS 4;
向person
表中插入資料,樣本如下:
INSERT INTO person VALUES (1,23,'Bob','Hangzhou'),(2,33,'Make','Wuhan');
為person
表的id
列建立列存索引,索引名為person_col_index
。
CREATE clustered columnar INDEX `person_col_index` ON person(`id`) PARTITION BY hash(`id`) partitions 4;
操作步驟
步驟一:開通PolarDB-X 2.0列存引擎功能
在頁面左上方選擇目標執行個體所在地區。
在執行個體列表頁,單擊PolarDB-X 2.0頁簽。單擊目標執行個體ID。
在左側導覽列,單擊列存引擎。
單擊建立列存引擎。在彈出的建立列存引擎對話方塊中,單擊確定。
說明您可以單擊頁面右上方按鈕查看建立列存引擎的任務進度,當拓撲資訊地區的節點狀態為使用中時,表示開通完成。
在頁面右上方,單擊開通ADB湖倉。
在彈出的ADB湖倉叢集列表對話方塊中,選擇目標企業版及湖倉版叢集,單擊確定。
說明綁定成功後,目標企業版及湖倉版叢集會自動建立對應的中繼資料發現任務。
步驟二:在企業版及湖倉版叢集中進行資料分析
登入雲原生資料倉儲AnalyticDB MySQL控制台,在左上方選擇叢集所在地區。在左側導覽列,單擊集群清單,在湖倉版頁簽下,單擊目的地組群ID。
在左側導覽列,單擊
。在工作清單地區,查看自動產生的目標中繼資料發現任務的運行情況。
任務運行成功(即最近運行狀態顯示為成功)後,可以在 頁面,查看同步到企業版及湖倉版叢集的資料庫和表。
SELECT * FORM test_adb.person;
返回結果:
+--------+---------+----------+----------+ | id | name | age | city | +--------+---------+----------+----------+ | 1 | 23 | Bob | Hangzhou | +--------+---------+----------+----------+ | 2 | 33 | Make | Wuhan | +--------+---------+----------+----------+