すべてのプロダクト
Search
ドキュメントセンター

DataHub:ApsaraDB RDS、ApsaraDB RDS for MySQL、およびAnalyticDB for MySQL V3.0へのデータ同期

最終更新日:Jan 12, 2025

ApsaraDB RDSへのデータ同期

準備

1. ApsaraDB RDSインスタンスを作成し、そのインスタンスにテーブルを作成します。ApsaraDB RDSコンソールで操作します。ApsaraDB RDSインスタンスは、クラシックネットワークまたは仮想プライベートクラウド(VPC)に作成できます。DataConnectorを作成するときは、ApsaraDB RDSインスタンスと同じネットワークタイプを選択する必要があります。データは、DataHubとApsaraDB RDSのフィールドのデータ型間のマッピングに基づいて同期されます。次の表に、DataHubとApsaraDB RDSのデータ型マッピングを示します。

DataHub

ApsaraDB RDS

TINYINT

TINYINT

SMALLINT

SMALLINT

INTEGER

INT

BIGINT

BIGINT

STRING

VARCHAR

BOOLEAN

BOOLEANまたはTINYINT

FLOAT

FLOAT

DOUBLE

DOUBLE

TIMESTAMP

TIMESTAMPまたはBIGINT

DECIMAL

DECIMAL

DataHubのTINYINT、SMALLINT、INTEGER、およびFLOATデータ型は、DataHub SDK for Java V2.16.1-public以降でサポートされています。2. DataHubからApsaraDB RDSにデータを同期するには、DataHubがApsaraDB RDSインスタンスにアクセスできるように、ApsaraDB RDSコンソールでIPアドレスホワイトリストを設定する必要があります。ApsaraDB RDSのIPアドレスホワイトリストの詳細については、「FAQ」をご参照ください。インスタンスが接続できるようにするには、DataConnectorを作成するときにApsaraDB RDSの内部エンドポイントを入力する必要があります。3.次の点に注意してください。 (1) DataHubからApsaraDB RDSに同期できるのは、TUPLEトピックのデータのみです。(2) デフォルトでは、DataHubのタイムスタンプはマイクロ秒精度に基づいてApsaraDB RDSのタイムスタンプに変換されます。データの精度に注意してください。(3) 同じ主キーのデータに対する同時読み取りおよび書き込みによって発生するロック競合を防ぐために、同じ主キーのデータを同じシャードに書き込む必要があります。(4) VPCを使用する場合は、同期するデータを含むトピックと、同期先のApsaraDB RDSインスタンスが同じリージョンにあることを確認してください。

DataConnectorの作成

  1. DataHubコンソールの左側のナビゲーションペインで、[プロジェクトマネージャー] をクリックします。[プロジェクト一覧] ページで、プロジェクトを見つけて、[操作] 列の [表示] をクリックします。プロジェクトの詳細ページで、トピックを見つけて、[操作] 列の [表示] をクリックします。

  2. トピックの詳細ページで、右上隅にある Connector をクリックします。[コネクタの作成] パネルで、必要に応じてDataConnectorを作成します。

    rds_01

次の部分では、DataHubコンソールでDataConnectorを作成するために使用される一部のパラメーターについて説明します。DataConnectorの設定の詳細については、SDKの説明をご参照ください。

  1. ホスト: ApsaraDB RDSのエンドポイント。インスタンスが接続できるようにするには、内部エンドポイントを入力する必要があります。

  2. インポートフィールド: ApsaraDB RDSに同期されるフィールド。ビジネス要件に基づいて、DataHubトピックのすべてまたは一部のフィールドを同期できます。

  3. 書き込みモード: データの書き込みモード。有効な値:

    • IGNORE: 重複データを無視します。INSERT IGNORE INTO ステートメントを実行してデータを書き込みます。

    • OVERWRITE: 重複データを更新します。REPLACE INTO ステートメントを実行してデータを書き込みます。

  4. VPC ID: VPCのID。インスタンスID: ApsaraDB RDSインスタンスのID。ApsaraDB RDSインスタンスがVPCにある場合は、VPC IDパラメーターとインスタンスIDパラメーターを設定する必要があります。

  5. ApsaraDB RDSコンソールで、次の図に示すように、ApsaraDBインスタンスを作成し、そのApsaraDBインスタンスにテーブルを作成します。

    bb449fc93770f40a41b68a693dcab2b1

  6. DataHubコンソールでトピックを作成します。この例では、作成されたトピックはTUPLE型です。次の図は、作成されたトピックの [スキーマの詳細] タブを示しています。rds_02

  7. [コネクタの作成] パネルでDataConnectorを作成します。[書き込みモード] ドロップダウンリストから [IGNORE] を選択し、[インポートフィールド] ドロップダウンリストからすべてのフィールドを選択します。

    rds_04

  8. 作成したTUPLEトピックにデータを書き込みます。次の図は、書き込まれたデータを示しています。4つのデータレコードが書き込まれています。rds_05

  9. MySQLクライアントでApsaraDB RDSに接続して、同期されたデータを表示します。次の図を参照してください。

ApsaraDB RDS for MySQLへのデータ同期

準備

1. ApsaraDB RDS for MySQLコンソールで、ApsaraDB RDS for MySQLインスタンスを作成し、そのインスタンスにテーブルを作成します。

データは、DataHubとApsaraDB RDS for MySQLのフィールドのデータ型間のマッピングに基づいて同期されます。次の表に、DataHubとApsaraDB RDS for MySQLのデータ型マッピングを示します。

DataHub

MySQL

TINYINT

TINYINT

SMALLINT

SMALLINT

INTEGER

INT

BIGINT

BIGINT

STRING

VARCHAR

BOOLEAN

BOOLEAN / TINYINT

FLOAT

FLOAT

DOUBLE

DOUBLE

TIMESTAMP

TIMESTAMP / BIGINT

DECIMAL

DECIMAL

DataHubのTINYINT、SMALLINT、INTEGER、およびFLOATデータ型は、DataHub SDK for Java V2.16.1-public以降でサポートされています。

2.次の点に注意してください。 (1) DataHubからApsaraDB RDS for MySQLに同期できるのは、TUPLEトピックのデータのみです。(2) デフォルトでは、DataHubのタイムスタンプはミリ秒精度に基づいてApsaraDB RDS for MySQLのタイムスタンプに変換されます。データの精度に注意してください。(3) 同じ主キーのデータに対する同時読み取りおよび書き込みによって発生するロック競合を防ぐために、同じ主キーのデータを同じシャードに書き込む必要があります。

DataConnectorの作成

  1. DataHubコンソールの左側のナビゲーションペインで、[プロジェクトマネージャー] をクリックします。[プロジェクト一覧] ページで、プロジェクトを見つけて、[操作] 列の [表示] をクリックします。プロジェクトの詳細ページで、トピックを見つけて、[操作] 列の [表示] をクリックします。

  2. トピックの詳細ページで、右上隅にある Connector をクリックします。[コネクタの作成] パネルで、必要に応じてDataConnectorを作成します。

rds_01

次の部分では、DataHubコンソールでDataConnectorを作成するために使用される一部のパラメーターについて説明します。DataConnectorの設定の詳細については、SDKの説明をご参照ください。

  1. ホスト: ApsaraDB RDS for MySQLのエンドポイント。インスタンスが接続できるようにするには、内部エンドポイントを入力する必要があります。

  2. インポートフィールド: ApsaraDB RDS for MySQLに同期されるフィールド。ビジネス要件に基づいて、DataHubトピックのすべてまたは一部のフィールドを同期できます。

  3. 書き込みモード: データの書き込みモード。有効な値:

    • IGNORE: 重複データを無視します。INSERT IGNORE INTO ステートメントを実行してデータを書き込みます。

    • OVERWRITE: 重複データを更新します。REPLACE INTO ステートメントを実行してデータを書き込みます。

  1. ApsaraDB RDS for MySQLコンソールで、ApsaraDB RDS for MySQLインスタンスを作成し、そのインスタンスにテーブルを作成します。

  2. DataHubコンソールでトピックを作成します。この例では、作成されたトピックはTUPLE型です。次の図は、作成されたトピックの [スキーマの詳細] タブを示しています。

rds_02

    rds_04

      rds_05

        AnalyticDB for MySQL V3.0へのデータ同期

        準備

        1. AnalyticDB for MySQLコンソールで、AnalyticDB for MySQLインスタンスを作成し、そのインスタンスにテーブルを作成します。 AnalyticDB for MySQLインスタンスは、クラシックネットワークまたはVPCに作成できます。DataConnectorを作成するときは、AnalyticDB for MySQLインスタンスと同じネットワークタイプを選択する必要があります。データは、DataHubとAnalyticDB for MySQLのフィールドのデータ型間のマッピングに基づいて同期されます。次の表に、DataHubとAnalyticDB for MySQLのデータ型マッピングを示します。

        DataHub

        ADS

        TINYINT

        TINYINT

        SMALLINT

        SMALLINT

        INTEGER

        INT

        BIGINT

        BIGINT

        STRING

        VARCHAR

        BOOLEAN

        BOOLEAN / TINYINT

        FLOAT

        FLOAT

        DOUBLE

        DOUBLE

        TIMESTAMP

        TIMESTAMP / BIGINT

        DECIMAL

        DECIMAL

        DataHubのTINYINT、SMALLINT、INTEGER、およびFLOATデータ型は、DataHub SDK for Java V2.16.1-public以降でサポートされています。2. DataHubからAnalyticDB for MySQLにデータを同期するには、DataHubがAnalyticDB for MySQLインスタンスにアクセスできるように、AnalyticDB for MySQLコンソールでIPアドレスホワイトリストを設定する必要があります。AnalyticDB for MySQLのIPアドレスホワイトリストの詳細については、「FAQ」をご参照ください。インスタンスが接続できるようにするには、DataConnectorを作成するときにAnalyticDB for MySQLの内部エンドポイントを入力する必要があります。3.次の点に注意してください。 (1) DataHubからAnalyticDB for MySQLに同期できるのは、TUPLEトピックのデータのみです。(2) デフォルトでは、DataHubのタイムスタンプはマイクロ秒精度に基づいてAnalyticDB for MySQLのタイムスタンプに変換されます。データの精度に注意してください。(3) 同じ主キーのデータに対する同時読み取りおよび書き込みによって発生するロック競合を防ぐために、同じ主キーのデータを同じシャードに書き込む必要があります。(4) VPCを使用する場合は、同期するデータを含むトピックと、同期先のAnalyticDB for MySQLインスタンスが同じリージョンにあることを確認してください。

        DataConnectorの作成

        1. DataHubコンソールの左側のナビゲーションペインで、[プロジェクトマネージャー] をクリックします。[プロジェクト一覧] ページで、プロジェクトを見つけて、[操作] 列の [表示] をクリックします。プロジェクトの詳細ページで、トピックを見つけて、[操作] 列の [表示] をクリックします。

        2. トピックの詳細ページで、右上隅にある Connector をクリックします。[コネクタの作成] パネルで、必要に応じてDataConnectorを作成します。

          rds_01

        次の部分では、DataHubコンソールでDataConnectorを作成するために使用される一部のパラメーターについて説明します。DataConnectorの設定の詳細については、SDKの説明をご参照ください。

        1. ホスト: AnalyticDB for MySQLのエンドポイント。インスタンスが接続できるようにするには、内部エンドポイントを入力する必要があります。

        2. インポートフィールド: AnalyticDB for MySQLに同期されるフィールド。ビジネス要件に基づいて、DataHubトピックのすべてまたは一部のフィールドを同期できます。

        3. 書き込みモード: データの書き込みモード。有効な値:

          • IGNORE: 重複データを無視します。INSERT IGNORE INTO ステートメントを実行してデータを書き込みます。

          • OVERWRITE: 重複データを更新します。REPLACE INTO ステートメントを実行してデータを書き込みます。

        4. VPC ID: VPCのID。インスタンスID: AnalyticDB for MySQLインスタンスのID。IDは、AnalyticDB for MySQLコンソールで表示できます。次の図を参照してください。

        rds_06

        注: インスタンスIDには、-controllerを追加する必要があります。前の図では、クラスターIDはam-bp10732mzu7wd78x9です。この場合、インスタンスIDパラメーターをam-bp10732mzu7wd78x9-controlleram-bp10732mzu7wd78x9-controller

        1. AnalyticDB for MySQLインスタンスを作成し、そのインスタンスにテーブルを作成します。

        2. DataHubコンソールでトピックを作成します。この例では、作成されたトピックはTUPLE型です。次の図は、作成されたトピックの [スキーマの詳細] タブを示しています。

          rds_02

        3. [コネクタの作成] パネルでDataConnectorを作成します。[書き込みモード] ドロップダウンリストから [IGNORE] を選択し、[インポートフィールド] ドロップダウンリストからすべてのフィールドを選択します。rds_04

        4. 作成したTUPLEトピックにデータを書き込みます。次の図は、書き込まれたデータを示しています。4つのデータレコードが書き込まれています。

        rds_05

        1. MySQLクライアントでAnalyticDB for MySQLに接続して、同期されたデータを表示します。次の図を参照してください。