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

遷移StarRocks數據

遷移StarRocks數據到云數據庫 SelectDB 版的方式主要有Catalog和X2Doris兩種。您可依據遷移的數據量和業務場景,選擇合適的方式完成數據遷移。本文為您介紹StarRocks的離線數據遷移到云數據庫 SelectDB 版的各個方式以及方式選擇規則。

方式選擇

根據不同的業務場景,選擇合適您的遷移方式。具體的方式選擇可以參考如下規則:

方式

適用場景

推薦原因

具體操作

Catalog

數據存儲在阿里云平臺。

說明

包括阿里云EMR集群等場景。

  • 可避免遷移使用的流量費用。

    說明

    StarRocks與SelectDB在同一個Region內,遷移使用的是內網流量。

  • 不需要依賴其他外部組件。

通過Catalog遷移數據

X2Doris

  • 期望遷移過程中使用盡可能少的SelectDB內部資源。

  • 期望進行一站式的庫表結構遷移。

  • 遷移使用可視化平臺,簡單易用。

  • 使用內置的Spark,減少了遷移過程中SelectDB內部資源占用。

  • 遷移過程中允許進行庫表結構定義。

X2Doris導入非Hive源的數據

本文將以Catalog方式,詳細介紹如遷移StarRocks的離線數據到SelectDB

通過Catalog遷移數據

前提條件

  • 已將StarRocks實例IP添加至SelectDB的白名單。具體操作,請參見設置白名單

  • 了解什么是Catalog,以及Catalog的基本操作。更多詳情,請參見湖倉一體

示例環境

本示例為將StarRocks的數據庫starRocks_db中表SR_t的數據遷移到SelectDB 數據庫test_db中表test_SR2SelectDB中。在實際使用中,請根據您的實際情況修改對應參數。示例環境如下:

  • 目標庫:test_db

  • 目標表:test_SR2SelectDB

  • 源數據庫:starRocks_db

  • 源數據表:SR_t

源數據準備示例

登錄您的源數據StarRocks,進行以下操作。

  1. 創建數據庫。

    CREATE DATABASE starRocks_db;
  2. 創建表。

    CREATE TABLE SR_t
    (
        id int,
        name string,
        age int
    )
    DISTRIBUTED BY HASH(id) BUCKETS 4
    PROPERTIES("replication_num" = "1");
  3. 插入數據。

    INSERT INTO SR_t VALUES
    (1, 'Alice', 25),
    (2, 'Bob', 30),
    (3, 'Charlie', 35),
    (4, 'David', 40),
    (5, 'Eve', 45);

操作步驟

  1. 連接SelectDB實例。具體操作,請參見通過MySQL客戶端連接云數據庫SelectDB版實例

  2. 創建StarRocks JDBC Catalog。更多操作,請參見JDBC數據源

    CREATE CATALOG starrocks_catalog PROPERTIES (
        "type"="jdbc",
        "user"="root",
        "password"="123456",
        "jdbc_url" = "jdbc:mysql://127.0.0.1:3306/demo",
        "driver_url" = "mysql-connector-java-8.0.25.jar",
        "driver_class" = "com.mysql.cj.jdbc.Driver",
        "checksum" = "fdf55dcef04b09f2eaf42b75e61ccc9a"
    )

    參數說明

    參數

    必選

    默認值

    說明

    user

    StarRocks數據庫的賬號。

    password

    StarRocks數據庫的密碼。

    jdbc_url

    JDBC連接串。需要包含StarRocks數據庫的連接地址。

    driver_url

    JDBC Driver的Jar包名稱。

    說明
    • 推薦使用mysql-connector-java-8.0.25.jar

    • 若期望使用其他Jar包,支持工單咨詢。

    driver_class

    JDBC Driver的Class名稱。

    推薦設置為com.mysql.cj.jdbc.Driver

    lower_case_table_names

    (4.0版本改名為lower_case_meta_names)

    "false"

    指定是否以小寫的形式同步JDBC外部數據源的庫名和表名。

    true:通過維護小寫名稱到遠程系統中實際名稱的映射,能夠查詢非小寫的數據庫和表。此時,庫表列名都會被轉換為小寫。

    false:不能查詢非小寫的數據庫和表。

    重要
    • 對于SelectDB 3.0版本。

      • 當 FE 參數的lower_case_table_names設置為12時, Catalog 的lower_case_table_names參數必須設置為true

      • 當 FE 參數的lower_case_table_names設置為0,則 Catalog 的參數可以為truefalse

    • 對于SelectDB 4.0版本。

      • 當 FE 的lower_case_table_names參數為02時,庫名表名列名都不會被轉換。

      • 當 FE 的lower_case_table_names參數為1時,表名會被轉換為小寫,庫名和列名不會被轉換。

    only_specified_database

    "false"

    指定是否只同步指定的Database。

    true:只同步JDBC URL中指定的數據源的 Database。

    false:同步JDBC URL中所有的Database。

    include_database_list

    ""

    only_specified_database=true時,指定同步多個Database,以英文逗號分隔。Database名稱大小寫敏感。

    exclude_database_list

    ""

    only_specified_database=true時,指定不需要同步的多個Database,以英文逗號分隔。Database名稱大小寫敏感。

    meta_names_mapping

    ""

    如果外部數據源存在名稱相同只有大小寫不同的情況,例如 DORIS 和 doris,Doris 由于歧義而在查詢 Catalog 時報錯,此時需要配置meta_names_mapping參數來解決沖突。

    具體操作,請參見小寫名稱同步

    重要

    此參數僅適用于SelectDB4.0版本。

  3. 查看Catalog。

    SHOW CATALOGS; --查看CATALOG是否創建成功

    查詢結果如下。

    +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+
    | CatalogId    | CatalogName  | Type     | IsCurrent | CreateTime              | LastUpdateTime      | Comment                |
    +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+
    | 436009309195 | SR_catalog | jdbc      |           | 2024-08-06 17:09:08.058 | 2024-07-19 18:04:37 |                        |
    |            0 | internal     | internal | yes       | UNRECORDED              | NULL                | Doris internal catalog |
    +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+
  4. 可選)切換至External Catalog SR_catalog目錄下。

    您可以像使用Internal Catalog一樣,對External Catalog SR_catalog的數據進行查看和訪問。

    說明

    目前,云數據庫 SelectDB 版對External Catalog中的數據只支持讀操作。

    SWITCH SR_catalog;
  5. 可選)切換內部的catalog internal目錄下。

    如果您沒有執行第4步,跳過此步驟。

    SWITCH internal;
  6. 可選)創建數據。

    如果您已經創建了目標數據庫,可跳過此步驟。

    CREATE database test_db;
  7. 切換至目標數據庫。

    USE test_db;
  8. 創建表。

    如果您已經有了目標表,請檢查目標列類型與StarRocks源數據列類型是否一一對應。

    如果您還沒有目標表,創建表時,目標列類型需與StarRocks源數據列類型一一對應。

    列映射詳情,請參見類型映射

    CREATE TABLE test_SR2SelectDB
    (
        id int,
        name string,
        age int
    )
    DISTRIBUTED BY HASH(id) BUCKETS 4
    PROPERTIES("replication_num" = "1");
  9. 遷移數據。

    INSERT INTO test_SR2SelectDB SELECT *  FROM doris_catalog.SR_db.SR_t;
  10. 查看數據導入情況。

    SELECT *  FROM test_SR2SelectDB;

遷移增量數據

實際生產環境中,StarRocks數據主要分為離線數據和增量數據。由于StarRocks數據遷移到SelectDB,通常的使用場景是拷貝一份數據到數據倉庫進行查詢加速,因此對于增量數據的遷移,可以考慮以下兩種方式:

  • 在生產SelectDB數據時并行寫入一份數據到SelectDB

  • 通過周期性作業讀取StarRocks中的分區數據寫入SelectDB