※ 本記事は、Deniz Sendilによる”Connecting OCI GoldenGate to Snowflake Private Endpoints“を翻訳したものです。
2023年9月28日
Oracle Cloud Infrastructure (OCI) GoldenGateは、リアルタイムで大規模にデータを移動するフルマネージドのネイティブ・クラウド・サービスです。GoldenGate for Big Dataのコア機能に加えて、自動スケーリング、柔軟なデータ・スループット・ベースのライセンス、ユーザー・エクスペリエンスの向上など、フルマネージド・サービスの追加の利点をもたらします。
OCI GoldenGateを使用して、Snowflakeへの初期データ・ロードおよびリアルタイム・データ・レプリケーションを実行できます。このブログでは、プライベート・エンドポイントで実行されているSnowflakeをターゲットとするOCI GoldenGate Snowflakeレプリケーションの構成に必要な設定について説明します。興味がある場合は、OCI GoldenGateおよびSnowflakeに関する次のリソースを参照してください:
- PostgreSQLからSnowflakeへのReplicatデータ – クイック・スタート
- Snowflake初期ロードとリアルタイム・データ同期にOCI GoldenGateを使用
- American Airlines顧客ケース
- OCI GoldenGateドキュメント
OCI GoldenGateは、内部ステージングと外部ステージングの両方をサポートしています。このブログ投稿では、OCI GoldenGate Snowflakeと内部ステージング・レプリケーションのステップについて説明しています。
前提条件:
次の前提条件を完了するには、ネットワーク・チームおよびSnowflakeチームとの連携が必要な場合があります。
- OCI GoldenGateを使用してSnowflakeプライベート・エンドポイントにレプリケートするには、OCIとターゲット・クラウド・サービス・プロバイダ間のIPSec VPNまたはインターコネクトが必要です。次のステップに進む前に、接続が成功したことを確認してください。
- IPSec VPN/インターコネクトが設定されたら、ターゲット・クラウド・サービス・プロバイダでスノーフレーク・プライベート・エンドポイントおよびDNS設定を構成してください。DNS設定を構成する際は、privatelink-account-url (<account_name>.<region>.privatelink.snowflakecomputing.com)とprivatelink-ocsp-url (ocsp.<account_name>.<region>.privatelink.snowflakecomputing.com)の両方のレコードを作成してください
Snowflakeプライベート・エンドポイントの構成については、次のSnowflakeドキュメントを参照してください: - ターゲット・クラウド・サービス・プロバイダでDNS設定を構成した後、OCIでDNS設定を構成します。OCIでは、ネットワーキング/DNS管理/プライベート・ビューでDNSレコードを構成できます。ターゲットのサード・パーティ・クラウドに接続されているVCN名で指定したプライベート・ビューを使用していることを確認してください。DNS設定を構成する際は、privatelink-account-url (<account_name>.<region>.privatelink.snowflakecomputing.com)とprivatelink_ocsp-url (ocsp.<account_name>.<region>.privatelink.snowflakecomputing.com)の両方のレコードを作成してください
- プライベート・ビューで、ゾーン名がprivatelink.snowflakecomputing.comのゾーンを作成します
- 前のステップで作成したゾーンに2つのレコードを追加します。
名前の入力:
(1) SnowflakeアカウントURLの場合: <account_name>.<region>
(2) Snowflake OCSP URLの場合: ocsp.<account_name>
タイプ:
Select A – IPv4 address
アドレス
ターゲット・クラウド・サービス・プロバイダのプライベート・エンドポイントによって生成されたPrivateIPを指定
- 「Add Record」および「Publish Changes」をクリック


- OCIとターゲット・クラウドの両方でネットワーク・レコードとDNSレコードを構成した後、ターゲット・クラウドに接続されているサブネットを使用して、OCIで実行されているコンピュートVMから接続をテストできます。次のコマンドでテストできます。成功すると、HTTPレスポンスに「> Accept: */*」と表示されます。失敗した場合は、ネットワーキングおよびDNS設定を確認してください。
curl -v -I https:< your_privatelink_account_URL>
例えば: curl -v -I https:<account_name>.<region>.privatelink.snowflakecomputing.com

OCI GoldenGate接続の作成:
3つの異なるOCI GoldenGate接続を作成する必要があります。Snowflakeタイプの接続とGoldenGateタイプの接続が2つあります。
- Snowflake接続:
Snowflake接続を作成するには、OCI GoldenGateドキュメントのステップに従います。Snowflake接続でSnowflake privatelink接続URLを使用していることを確認してください。

- GoldenGate接続:
2つの異なるOCI GoldenGate接続を作成する必要があります。Snowflakeアカウント接続を解決するための接続と、Snowflake OCSPを解決するための接続です。Snowflakeは、Online Certificate Status Protocol (OCSP)を使用して最大限のセキュリティを提供し、SnowflakeクライアントがHTTPSを介してエンドポイントに接続しようとしたときに証明書が取り消されるかどうかを判断します。それがないと、Snowflakeレプリケーションを実行できなくなります。
GoldenGate Connection-1:
- 「Create Connection」をクリックし、「Name」を指定して「Type」にGoldenGateを選択します。「Next」をクリックします。
- Host: Snowflake Privatelink-Account-url (<account_name>.<region>.privatelink.snowflakecomputing.com)
- Port: 443
- 「Network Connectivity」で、「Customer Assigned Subnet」を選択し、ターゲット・クラウド・サービス・サブネットに接続されているサブネットを選択します。
- 「Private IP address」フィールドで、ターゲット・クラウド・サービス・プロバイダのプライベート・エンドポイントによって生成されたPrivateIPを指定します
- 「Create」をクリック
- 接続が作成されたら、それをOCI GoldenGate Big Dataデプロイメントに割り当てます。


GoldenGate Connection-2:
この接続は、Snowflake OCSP URLに対して作成します。
- 「Create Connection」をクリックし、「Name」を指定して「Type」にGoldenGateを選択します。「Next」をクリックします。
- Host: Snowflake Privatelink-Account-url (ocsp.<account_name>.<region>.privatelink.snowflakecomputing.com)
- Port: 443
- 「Network Connectivity」で、「Customer Assigned Subnet」を選択し、ターゲット・クラウド・サービス・サブネットに接続されているサブネットを選択します。
- 「Private IP address」フィールドで、ターゲット・クラウド・サービス・プロバイダのプライベート・エンドポイントによって生成されたPrivateIPを指定
- 「Create」をクリック
- 接続が作成されたら、それをOCI GoldenGate Big Dataデプロイメントに割り当てます。


ノート: 3つすべての接続が同じOCI GoldenGate Big Dataデプロイメントに割り当てられていることを確認してください。

3. replicatを作成:
接続を作成し、デプロイメントに割り当てた後、replicatを構成できます。Replicatを構成する前に、ターゲットのSnowflake表が配置されていることを確認してください。
replicatを作成するには:
- OCI GoldenGateコンソールで、「Add Replicat」をクリック
- Classic Replicatを選択
- Replicat Detailsの指定:
- Process Nameの入力
- 「Trail Name」に、抽出からの証跡の名前を入力
- 「Target」で、ドロップダウンからターゲットSnowflake接続を選択
- 「Available Aliases」ドロップダウンからAliasを選択
- 「Next」をクリック
- 「Replicat Parameters」ページで、必要なマッピングを追加し、「Next」をクリック
- Properties Fileページで、プロパティを確認し、「Create and Run」をクリック
- 「Action/ Details/ Statistics」をクリックして、replicat統計をレビュー
OCI Snowflake Replicaailsの詳細は、OCI GoldenGateドキュメントを参照してください。
