DataHub データ同期機能
DataHub データ同期機能は、データソースおよびシンク機能を提供します。これにより、Topic から他の Alibaba Cloud プロダクトへデータを リアルタイム/ニアリアルタイムで同期し、サービス間のデータ交換を容易にすることができます。現在、サポートされているサービスには、MaxCompute (旧 ODPS)、AnalyticDB for MySQL (ADS)、ApsaraDB RDS、Tablestore、Object Storage Service (OSS)、Elasticsearch、および Function Compute が含まれます。DataHub に一度データを書き込み、データ同期を構成することで、サポートされているすべてのクラウドサービスでデータを使用できます。これにより、エンドツーエンドのデータループが作成されます。
DataHub がサポートする Alibaba Cloud サービス
注:
MaxCompute の場合:同期は 5 分ごと、またはバッチサイズが 64 MB に達したときに発生します。
Tablestore、OSS、Elasticsearch、Function Compute、および Hologres の場合:同期は 20 秒ごと、またはバッチサイズが 4 MB に達したときに発生します。
MySQL、RDS、および ADS 3.0 の場合:同期は 20 秒ごと、またはバッチサイズが 512 KB に達したときに発生します。
ターゲットサービス | サポートされているトピックタイプ | 適時性 | VPC をサポート |
MaxCompute | TUPLE / BLOB | ニアリアルタイム、最大 5 分のレイテンシー | いいえ |
AnalyticDB for MySQL | TUPLE | リアルタイム | いいえ |
ApsaraDB RDS | TUPLE | リアルタイム | はい |
Tablestore | TUPLE | リアルタイム | いいえ |
Object Storage Service (OSS) | TUPLE / BLOB | リアルタイム | いいえ |
Elasticsearch | TUPLE | リアルタイム | はい |
Function Compute | TUPLE / BLOB | リアルタイム | いいえ |
Hologres | TUPLE | リアルタイム | いいえ |
注意事項
可能な限り、同じリージョン内の Alibaba Cloud サービス間でデータを同期し、リージョン間のネットワーク接続の問題を回避し、ネットワーク遅延を削減してください。
Alibaba Cloud のネットワーク隔離のため、エンドポイントを構成する際は、ターゲットサービスの内部エンドポイント (クラシックネットワーク) のみを使用してください。パブリックエンドポイントはサポートされていません。
DataHub データ同期は、少なくとも1回保証のセマンティクスを使用します。ネットワークまたはサービス障害などのまれなケースでは、重複するレコードが宛先に表示されることがあります。必要に応じてデータを重複排除してください。
同期タスクを作成する際、DataHub は DataHub Topic からの読み取りオフセットを追跡するためにサブスクリプション ID を自動的に作成します。このサブスクリプション ID を変更しないでください。
DataHub Topic の所有者または作成者のみがコネクタ (同期タスク) を作成できます。
同期タイプごとに最大 2 つの同期タスクを作成できます。
IP ホワイトリスト
IP ホワイトリストは時間とともに変化し、固定ではありません。ここに記載されている IP を追加した後でも、エラー「'xxx' はホワイトリストにありません」が表示される場合、最新の IP ホワイトリストを取得するためにチケットを送信してください。
リージョン | クラシックネットワークのホワイトリスト | VPC ホワイトリスト |
中国 (杭州) | 10.130.203.0/24 10.130.208.0/24 10.130.210.0/24 10.130.213.0/24 10.186.213.0/24 10.32.103.0/24 10.32.104.0/24 10.32.177.0/24 10.32.94.0/24 10.32.95.0/24 10.32.96.0/24 10.32.97.0/24 10.32.98.0/24 10.32.99.0/24 10.5.35.0/24 11.115.89.0/24 11.194.216.0/24 11.194.217.0/24 11.194.247.0/24 11.194.248.0/24 11.197.14.0/24 11.223.199.0/24 | 100.104.191.0/24 |
中国 (上海) | 11.199.218.0/24 11.199.219.0/24 26.76.154.0/24 26.76.155.0/24 | 100.104.136.0/24 |
中国 (北京) | 11.204.155.0/24 11.204.158.0/24 11.204.161.0/24 11.204.162.0/24 11.218.245.0/24 11.220.203.0/24 11.220.204.0/24 11.220.216.0/24 11.220.217.0/24 11.220.237.0/24 11.220.238.0/24 11.220.240.0/24 11.220.242.0/24 11.223.107.0/24 | 100.104.33.0/24 |
中国 (深セン) | 10.58.213.0/24 10.58.219.0/24 11.114.243.0/24 26.41.109.0/24 26.41.119.0/24 26.74.38.0/24 | 100.104.55.0/24 |
Asia Pacific SE 1 (Singapore) | 11.112.208.0/24 11.195.209.0/24 11.197.63.0/24 26.53.11.0/24 26.59.42.0/24 26.77.111.0/24 26.79.102.0/24 26.79.92.0/24 | 100.104.163.0/24 |
Alibaba Gov Cloud (北京) | 11.199.246.0/24 11.199.247.0/24 | 100.104.254.0/24 |
中国 (張家口) | 10.2.165.0/24 10.93.87.0/24 11.113.55.0/24 11.114.126.0/24 11.196.52.0/24 11.196.53.0/24 11.207.155.0/24 11.57.215.0/24 | 100.104.195.0/24 |
アジア太平洋地域 (東南アジア 3) (クアラルンプール、マレーシア) | 11.204.39.0/24 11.204.40.0/24 11.204.41.0/24 11.48.249.0/24 11.48.250.0/24 | 100.104.13.0/24 |
中国 (香港) | 11.119.176.0/24 26.49.143.0/24 26.49.144.0/24 26.53.105.0/24 26.53.112.0/24 26.55.135.0/24 26.73.76.0/24 | 100.104.166.0/24 |
Finance Cloud (上海) | 10.0.4.0/24 10.0.5.0/24 10.130.163.0/24 11.197.111.0/24 11.197.120.0/24 | 100.104.220.0/24 |
ヨーロッパ中部 1 (フランクフルト) | 10.250.235.0/24 10.254.223.0/24 10.254.224.0/24 10.71.0.0/24 11.195.132.0/24 26.78.19.0/24 | 100.104.100.0/24 |
米国 (シリコンバレー) | 11.199.218.0/24 11.199.219.0/24 26.76.154.0/24 26.76.155.0/24 | 100.104.235.0/24 |
サービスホワイトリスト
MaxCompute はプロジェクトレベルの IP ホワイトリストをサポートしています。IP ホワイトリストを有効にすると、DataHub は MaxCompute にデータを同期できません。これを解決するには、MaxCompute はサービスホワイトリストを提供します。データの同期を成功させるため、DataHub サービス名を MaxCompute サービスホワイトリストに追加してください。
現在の DataHub サービス名は DataHub です。SDK または odpscmd を使用して構成できます。
次の例は、SDK を構成する方法を示しています。
public static void setServiceName() throws OdpsException {
String endpoint = "";
String project = "";
String accessId = "";
String accessKey = "";
Account account = new AliyunAccount(accessId, accessKey);
Odps odps = new Odps(account);
odps.setEndpoint(endpoint);
odps.setDefaultProject(project);
Map<String, String> prop = new HashMap<>();
// DataHub サービス名を MaxCompute サービスホワイトリストに追加します。
// 複数の名前をカンマで区切ります。更新するたびに以前の設定が上書きされます。
prop.put("odps.security.ip.whitelist.services", "DataHub");
Group group = new Groups(odps).get("groupName");
group.updateProject(project, null, null, prop);
// 現在のサービスホワイトリスト設定を確認します。
prop = odps.projects().get(project).getAllProperties();
System.out.println("current service list: " + prop.get("odps.security.ip.whitelist.services"));
}odpscmd の設定については、次の例をご参照ください。
odpscmd を起動し、次のコマンドを入力します。
setproject odps.security.ip.whitelist.services=DataHub;設定が完了したら、次の方法で成功を確認できます。
setproject;
## 出力に odps.security.ip.whitelist.services=DataHub が含まれている場合、設定は成功しています。