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

通過DTS將數(shù)據(jù)庫數(shù)據(jù)同步到阿里云ES Serverless

重要

本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業(yè)務(wù)造成影響,請務(wù)必仔細閱讀。

如果您需要將關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)實時同步到阿里云Elasticsearch Serverless(簡稱ES Serverless)中進行搜索分析,可通過數(shù)據(jù)傳輸服務(wù)DTS快速創(chuàng)建源庫到目標庫ES Serverless的實時同步作業(yè),適用于對實時同步要求較高的同步場景。本文以源庫為RDS MySQL為例,介紹全量和增量同步數(shù)據(jù)到ES Serverless的方法。

前提條件

源數(shù)據(jù)庫支持的數(shù)據(jù)庫類型:

背景信息

  • 數(shù)據(jù)傳輸服務(wù)DTS是一種集數(shù)據(jù)遷移、數(shù)據(jù)訂閱及數(shù)據(jù)實時同步于一體的數(shù)據(jù)傳輸服務(wù),詳細信息請參見數(shù)據(jù)傳輸服務(wù)DTS。DTS支持同步的SQL操作包括Insert、Delete和Update,支持同步的數(shù)據(jù)源版本要求請參見同步方案概覽

    說明

    支持同步到ES Serverless的源庫包括MySQL、PolarDB for MySQL、PolarDB-X 1.0、PolarDB-X 2.0。

  • 通過在DTS中配置從源(MySQL)同步到目標(ES Serverless),可實現(xiàn)全量、增量數(shù)據(jù)同步。適用于對實時同步要求較高的關(guān)系型數(shù)據(jù)庫中數(shù)據(jù)的同步場景或需要將關(guān)系型數(shù)據(jù)庫中的全量或增量數(shù)據(jù)同步到ES Serverless的場景。

注意事項

  • 同步入門版應(yīng)用的數(shù)據(jù)需要您自行控制DTS數(shù)據(jù)同步速率,否則可能出現(xiàn)同步任務(wù)執(zhí)行失敗的情況。

  • DTS不支持同步DDL操作,如果源庫中待同步的表在同步的過程中已經(jīng)執(zhí)行了DDL操作,您需要先移除同步對象,然后在ES Serverless應(yīng)用中移除該表對應(yīng)的索引,最后新增同步對象。詳情請參見移除同步對象新增同步對象

  • 如果源庫中待同步的表需要執(zhí)行增加列的操作,您只需先在Serverless應(yīng)用中修改對應(yīng)表的mapping,然后在源庫中執(zhí)行相應(yīng)的DDL操作,最后暫停并啟動DTS增量數(shù)據(jù)同步任務(wù)。

  • DTS在執(zhí)行全量數(shù)據(jù)初始化時將占用源庫和目標庫一定的讀寫資源,可能會導(dǎo)致數(shù)據(jù)庫的負載上升,在數(shù)據(jù)庫性能較差、規(guī)格較低或業(yè)務(wù)量較大的情況下(例如源庫有大量慢SQL、存在無主鍵表或目標庫存在死鎖等),可能會加重數(shù)據(jù)庫壓力,甚至導(dǎo)致數(shù)據(jù)庫服務(wù)不可用。因此您需要在執(zhí)行數(shù)據(jù)同步前評估源庫和目標庫的性能,同時建議您在業(yè)務(wù)低峰期執(zhí)行數(shù)據(jù)同步(例如源庫和目標庫的CPU負載在30%以下)。

    • 在業(yè)務(wù)高峰期全量同步數(shù)據(jù),可能造成全量數(shù)據(jù)同步失敗,重啟全量同步任務(wù)即可。

    • 在業(yè)務(wù)高峰期增量同步數(shù)據(jù),可能出現(xiàn)數(shù)據(jù)同步延遲的情況。

操作步驟

步驟一:準備待同步數(shù)據(jù)

文本以將RDS MySQL 8.0版本實例中的數(shù)據(jù)同步到阿里云ES Serverless應(yīng)用中為例。

  1. 創(chuàng)建RDS MySQL 8.0版本實例。具體操作,請參見創(chuàng)建RDS MySQL實例

  2. 創(chuàng)建賬號和數(shù)據(jù)庫test_mysql。具體操作,請參見創(chuàng)建數(shù)據(jù)庫和賬號

  3. 在數(shù)據(jù)庫test_mysql中,新建表es_test并插入數(shù)據(jù)。使用的建表語句及數(shù)據(jù)如下:

    -- create table
    CREATE TABLE `es_test` (
        `id` bigint(32) NOT NULL,
        `name` varchar(32) NULL,
        `age` bigint(32) NULL,
        `hobby` varchar(32) NULL,
        PRIMARY KEY (`id`)
    ) ENGINE=InnoDB
    DEFAULT CHARACTER SET=utf8;
    
    -- insert data
    INSERT INTO `es_test` (`id`,`name`,`age`,`hobby`) VALUES (1,'user1',22,'music');
    INSERT INTO `es_test` (`id`,`name`,`age`,`hobby`) VALUES (2,'user2',23,'sport');
    INSERT INTO `es_test` (`id`,`name`,`age`,`hobby`) VALUES (3,'user3',43,'game');
    INSERT INTO `es_test` (`id`,`name`,`age`,`hobby`) VALUES (4,'user4',24,'run');
    INSERT INTO `es_test` (`id`,`name`,`age`,`hobby`) VALUES (5,'user5',42,'basketball');

步驟二:創(chuàng)建同步任務(wù)

  1. 進入創(chuàng)建同步任務(wù)頁面。

    1. 登錄Elasticsearch Serverless服務(wù)控制臺

    2. 在頂部菜單欄,選擇目標應(yīng)用所在地域。

    3. 在左側(cè)導(dǎo)航欄,單擊應(yīng)用管理

    4. 應(yīng)用管理頁面,在應(yīng)用列表中單擊應(yīng)用名稱。

    5. 在左側(cè)導(dǎo)航欄,單擊數(shù)據(jù)遷移與同步

    6. 單擊前往同步

    7. 數(shù)據(jù)同步頁簽,單擊創(chuàng)建同步任務(wù)

  2. 配置源庫及目標庫向?qū)ы撁妫渲迷磶旒澳繕藥臁?/p>

    重要參數(shù)說明如下:

    項目

    參數(shù)

    描述

    源庫信息

    數(shù)據(jù)庫類型

    選擇源數(shù)據(jù)庫的數(shù)據(jù)庫類型。

    接入方式

    接入方式支持:

    • 云實例

    • 專線/VPN網(wǎng)關(guān)/智能網(wǎng)關(guān)

    • ECS自建數(shù)據(jù)庫

    • 云企業(yè)網(wǎng)CEN

    • 數(shù)據(jù)庫網(wǎng)關(guān)DG

    如果您的源數(shù)據(jù)庫為RDS MySQL,接入方式選擇云實例。

    實例地區(qū)

    選擇源RDS MySQL實例所在地域。

    RDS實例ID

    選擇源RDS MySQL實例。

    數(shù)據(jù)庫賬號

    填入源RDS MySQL實例的數(shù)據(jù)庫賬號。

    數(shù)據(jù)庫密碼

    填入數(shù)據(jù)庫賬號對應(yīng)的密碼。

    連接方式

    根據(jù)需求選擇非加密連接SSL安全連接。如果設(shè)置為SSL安全連接,您需要提前開啟RDS MySQL實例的SSL加密功能,詳情請參見使用云端證書快速開啟SSL鏈路加密

    目標庫信息

    數(shù)據(jù)庫賬號

    Serverless應(yīng)用的用戶名,在應(yīng)用詳情頁面的基本信息區(qū)域查看、復(fù)制。

    數(shù)據(jù)庫密碼

    Serverless應(yīng)用的用戶密碼,創(chuàng)建應(yīng)用時輸入的密碼。如果您忘記了密碼,可以在應(yīng)用詳情頁面的基本信息區(qū)域,單擊用戶密碼后的修改,修改應(yīng)用密碼。

  3. 單擊測試連接以進行下一步,在對象配置向?qū)ы撁妫?span data-tag="cmd" id="cmd-n4c-hht-cu1" class="cmd">配置任務(wù)對象及高級配置。

    配置

    說明

    同步類型

    固定選中增量同步。默認情況下,您還需要同時選中庫表結(jié)構(gòu)同步全量同步。預(yù)檢查完成后,DTS會將源實例中待同步對象的全量數(shù)據(jù)在目標集群中初始化,作為后續(xù)增量同步數(shù)據(jù)的基線數(shù)據(jù)。

    索引名稱

    • 表名:在目標ES Serverless應(yīng)用中創(chuàng)建的索引名稱和表名一致。

    • 庫名_表名:在目標ES Serverless應(yīng)用中創(chuàng)建的索引名稱由庫名、下劃線(_)和表名按順序拼接而成。

    說明

    索引名稱映射配置會在所有表中生效。

    目標已存在表的處理模式

    • 預(yù)檢查并報錯攔截:檢查目標數(shù)據(jù)庫中是否有同名的表。如果目標數(shù)據(jù)庫中沒有同名的表,則通過該檢查項目;如果目標數(shù)據(jù)庫中有同名的表,則在預(yù)檢查階段提示錯誤,數(shù)據(jù)同步任務(wù)不會被啟動。

      說明

      如果目標庫中同名的表不方便刪除或重命名,您可以更改該表在目標庫中的名稱,請參見庫表列名映射

    • 忽略報錯并繼續(xù)執(zhí)行:跳過目標數(shù)據(jù)庫中是否有同名表的檢查項。

      警告

      選擇為忽略報錯并繼續(xù)執(zhí)行,可能導(dǎo)致數(shù)據(jù)不一致,給業(yè)務(wù)帶來風(fēng)險,例如:

      • 表結(jié)構(gòu)一致的情況下,如在目標庫遇到與源庫主鍵或唯一鍵的值相同的記錄:

        • 全量期間,DTS會保留目標集群中的該條記錄,即源庫中的該條記錄不會同步至目標數(shù)據(jù)庫中。

        • 增量期間,DTS不會保留目標集群中的該條記錄,即源庫中的該條記錄會覆蓋至目標數(shù)據(jù)庫中。

      • 表結(jié)構(gòu)不一致的情況下,可能會導(dǎo)致無法初始化數(shù)據(jù)、只能同步部分列的數(shù)據(jù)或同步失敗,請謹慎操作。

    目標庫對象名稱大小寫策略

    您可以配置目標實例中同步對象的庫名、表名和列名的英文大小寫策略。默認情況下選擇DTS默認策略,您也可以選擇與源庫、目標庫默認策略保持一致。更多信息,請參見目標庫對象名稱大小寫策略

    源庫對象

    源庫對象框中單擊待同步對象,然后單擊向右將其移動至已選擇對象框。

    說明

    同步對象選擇的粒度為庫、表。若選擇的同步對象為表,其他對象(如視圖、觸發(fā)器、存儲過程)不會被同步至目標庫。

    已選擇對象

    如果您需要修改同步后的字段名稱,可在已選擇對象區(qū)域框中,右鍵單擊對應(yīng)的表名,設(shè)置該表在目標ES Serverless中的索引名稱、Type名稱等信息,然后單擊確定。更多信息,請參見庫表列名單個映射

    說明

    您可以設(shè)置SQL過濾條件,過濾待同步的數(shù)據(jù),只有滿足過濾條件的數(shù)據(jù)才會被同步到目標實例,詳情請參見通過SQL條件過濾任務(wù)數(shù)據(jù)

    單擊高級配置,展開高級配置項進行高級配置。參數(shù)說明,請參見高級配置

  4. 單擊下一步配置庫表字段,在配置庫表字段向?qū)ы撁妫渲脦毂碜侄巍?/p>

    單擊全部設(shè)置為非_routing策略,在彈出的對話框中單擊確認,表示用_id進行路由。關(guān)于_routing的更多信息,請參見_routing

  5. 單擊下一步保存任務(wù)并預(yù)檢查

    說明
    • 在同步作業(yè)正式啟動之前,會先進行預(yù)檢查。只有預(yù)檢查通過后,才能成功啟動同步作業(yè)。

    • 如果預(yù)檢查失敗,請單擊失敗檢查項后的查看詳情,并根據(jù)提示修復(fù)后重新進行預(yù)檢查。

    • 如果預(yù)檢查產(chǎn)生警告:

      • 對于不可以忽略的檢查項,請單擊失敗檢查項后的查看詳情,并根據(jù)提示修復(fù)后重新進行預(yù)檢查。

      • 對于可以忽略無需修復(fù)的檢查項,您可以依次單擊點擊確認告警詳情確認屏蔽確定重新進行預(yù)檢查,跳過告警檢查項重新進行預(yù)檢查。如果選擇屏蔽告警檢查項,可能會導(dǎo)致數(shù)據(jù)不一致等問題,給業(yè)務(wù)帶來風(fēng)險。

  6. 單擊下一步購買,在購買頁面,選擇數(shù)據(jù)同步實例的計費方式、鏈路規(guī)格。

    類別

    參數(shù)

    說明

    信息配置

    計費方式

    • 預(yù)付費(包年包月):在新建實例時支付費用。適合長期需求,價格比按量付費更實惠,且購買時長越長,折扣越多。

    • 后付費(按量付費):按小時扣費。適合短期需求,用完可立即釋放實例,節(jié)省費用。

    資源組配置

    實例所屬的資源組,默認為default resource group。更多信息,請參見什么是資源管理

    鏈路規(guī)格

    DTS為您提供了不同性能的同步規(guī)格,同步鏈路規(guī)格的不同會影響同步速率,您可以根據(jù)業(yè)務(wù)場景進行選擇。更多信息,請參見數(shù)據(jù)同步鏈路規(guī)格說明

    訂購時長

    在預(yù)付費模式下,選擇包年包月實例的時長和數(shù)量,包月可選擇1~9個月,包年可選擇1年、2年、3年和5年。

    說明

    該選項僅在付費類型為預(yù)付費時出現(xiàn)。

  7. 配置完成后,閱讀并勾選《數(shù)據(jù)傳輸(按量付費)服務(wù)條款》

  8. 單擊購買并啟動,同步任務(wù)正式開始,您可在數(shù)據(jù)同步界面查看具體任務(wù)進度。

步驟三:驗證數(shù)據(jù)同步結(jié)果

  1. 登錄目標ES Serverless應(yīng)用的Kibana控制臺。

    登錄Kibana控制臺,請參見通過Kibana使用Serverless應(yīng)用

  2. 在Kibana頁面的左上角,選擇菜單.png > Management > Dev Tools

  3. Console中,執(zhí)行如下命令查看全量數(shù)據(jù)同步結(jié)果。

    GET /es_test/_search
    說明

    es_test需要替換為同步后的索引名稱。

    預(yù)期結(jié)果如下:

    {
      "took" : 3,
      "timed_out" : false,
      "_shards" : {
        "total" : 12,
        "successful" : 12,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : {
          "value" : 5,
          "relation" : "eq"
        },
        "max_score" : 1.0,
        "hits" : [
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "5",
            "_score" : 1.0,
            "_source" : {
              "id" : 5,
              "name" : "user5",
              "age" : 42,
              "hobby" : "basketball"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "2",
            "_score" : 1.0,
            "_source" : {
              "id" : 2,
              "name" : "user2",
              "age" : 23,
              "hobby" : "sport"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "3",
            "_score" : 1.0,
            "_source" : {
              "id" : 3,
              "name" : "user3",
              "age" : 43,
              "hobby" : "game"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "4",
            "_score" : 1.0,
            "_source" : {
              "id" : 4,
              "name" : "user4",
              "age" : 24,
              "hobby" : "run"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "1",
            "_score" : 1.0,
            "_source" : {
              "id" : 1,
              "name" : "user1",
              "age" : 22,
              "hobby" : "music"
            }
          }
        ]
      }
    }
    
  4. 在RDS MySQL中插入一條數(shù)據(jù),在Serverless應(yīng)用中查看增量數(shù)據(jù)同步結(jié)果。

    例如,通過以下SQL語句在RDS MySQL中插入一條數(shù)據(jù)。

    INSERT INTO `test_mysql`.`es_test` (`id`,`name`,`age`,`hobby`) VALUES (6,'user6',30,'dance');

    預(yù)期結(jié)果如下:

    {
      "took" : 8,
      "timed_out" : false,
      "_shards" : {
        "total" : 12,
        "successful" : 12,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : {
          "value" : 6,
          "relation" : "eq"
        },
        "max_score" : 1.0,
        "hits" : [
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "5",
            "_score" : 1.0,
            "_source" : {
              "id" : 5,
              "name" : "user5",
              "age" : 42,
              "hobby" : "basketball"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "2",
            "_score" : 1.0,
            "_source" : {
              "id" : 2,
              "name" : "user2",
              "age" : 23,
              "hobby" : "sport"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "3",
            "_score" : 1.0,
            "_source" : {
              "id" : 3,
              "name" : "user3",
              "age" : 43,
              "hobby" : "game"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "4",
            "_score" : 1.0,
            "_source" : {
              "id" : 4,
              "name" : "user4",
              "age" : 24,
              "hobby" : "run"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "1",
            "_score" : 1.0,
            "_source" : {
              "id" : 1,
              "name" : "user1",
              "age" : 22,
              "hobby" : "music"
            }
          },
          {
            "_index" : "es_test",
            "_type" : "es_test",
            "_id" : "6",
            "_score" : 1.0,
            "_source" : {
              "name" : "user6",
              "id" : 6,
              "age" : 30,
              "hobby" : "dance"
            }
          }
        ]
      }
    }
    

相關(guān)文檔

您還可以參考以下文檔進行數(shù)據(jù)同步: