Google Cloud Platform で大量の住所確認を行うための設計パターン

目標

High Volume Address Validation のチュートリアルでは、大量の Address Validation を使用できるさまざまなシナリオについて説明しました。このチュートリアルでは、大量の Address Validation を実行するための Google Cloud Platform 内のさまざまな設計パターンを紹介します。

まず、Google Cloud Platform で Cloud Run、Compute Engine、または Google Kubernetes Engine を使用して 1 回限りの実行として、大量の Address Validation を実行する方法の概要を説明します。次に、この機能をデータ パイプラインの一部として含める方法について説明します。

この記事を読めば、Google Cloud 環境で Address Validation を大量に実行するためのさまざまなオプションについて理解を深められるはずです。

Google Cloud Platform 上のリファレンス アーキテクチャ

このセクションでは、Google Cloud Platform を使用した High Volume Address Validation のさまざまな設計パターンについて詳しく説明します。Google Cloud Platform で実行することで、既存のプロセスやデータ パイプラインと統合できます。

Google Cloud Platform で 1 回だけ大量の Address Validation を実行する

以下は、1 回限りのオペレーションやテストに適した、Google Cloud Platform で統合を構築する方法のリファレンス アーキテクチャです。

画像

この場合は、CSV ファイルを Cloud Storage バケットにアップロードすることをおすすめします。大量の住所検証スクリプトは、Cloud Run 環境から実行できます。ただし、Compute EngineGoogle Kubernetes Engine などの他のランタイム環境で実行することもできます。出力 CSV は Cloud Storage バケットにアップロードすることもできます。

Google Cloud Platform データ パイプラインとして実行する

前のセクションで説明したデプロイ パターンは、1 回限りの使用で大量の Address Validation を迅速にテストする場合に最適です。ただし、データ パイプラインの一部として定期的に使用する必要がある場合は、Google Cloud Platform のネイティブ機能をより有効に活用して、堅牢性を高めることができます。たとえば、次のような変更を行うことができます。

画像

  • この場合、CSV ファイルを Cloud Storage バケットにダンプできます。
  • Dataflow ジョブは、処理するアドレスを取得して BigQuery にキャッシュに保存できます。
  • Dataflow Python ライブラリを拡張して、大量の住所検証のロジックを追加し、Dataflow ジョブの住所を検証できます。

長時間の反復処理としてデータ パイプラインからスクリプトを実行する

別の一般的なアプローチとして、ストリーミング データ パイプラインの一部として、住所のバッチを定期的なプロセスとして検証する方法があります。住所は BigQuery データストアに保存することもできます。このアプローチでは、(日次、週次、月次にトリガーされる必要がある)繰り返しデータ パイプラインを構築する方法について説明します。

画像

  • 最初の CSV ファイルを Cloud Storage バケットにアップロードします。
  • Memorystore を永続データストアとして使用して、長時間実行プロセスの中間状態を維持します。
  • 最終的な住所を BigQuery データストアのキャッシュに保存する。
  • スクリプトを定期的に実行するように Cloud Scheduler を設定します。

このアーキテクチャには、次のメリットがあります。

  • Cloud Scheduler を使用すると、住所の検証を定期的に行うことができます。アドレスは月単位で再検証するか、新しいアドレスは月単位または四半期単位で検証することをおすすめします。このアーキテクチャは、そのようなユースケースの解決に役立ちます。
  • 顧客データが BigQuery にある場合は、検証済みの住所または検証フラグを BigQuery に直接キャッシュに保存できます。注: キャッシュに保存できる内容と方法については、大量の住所の検証に関する記事をご覧ください。

  • Memorystore を使用すると、復元性が向上し、より多くの住所を処理する能力が得られます。このステップでは、非常に大規模な住所データセットの処理に必要な状態を処理パイプライン全体に追加します。Cloud SQL[https://cloud.google.com/sql] などの他のデータベース テクノロジーや、Google Cloud Platform が提供する他のデータベース フレーバーも使用できます。ただし、Memorystore はスケーリングとシンプルさのニーズを完璧にバランスさせているため、最初に選択すべきです。

まとめ

ここで説明するパターンを適用することで、Google Cloud Platform でさまざまなユースケースに Address Validation API を使用できます。

上記のユースケースの開始を支援するために、オープンソースの Python ライブラリを作成しました。コンピュータのコマンドラインから呼び出すことも、Google Cloud Platform や他のクラウド プロバイダから呼び出すこともできます。

ライブラリの使用方法について詳しくは、こちらの記事をご覧ください。

次のステップ

確実な住所で購入手続き、配送、オペレーションを改善する ホワイトペーパーをダウンロードし、Address Validation で購入手続き、配送、オペレーションを改善する ウェブセミナーをご覧ください。

関連情報:

寄稿者

この記事は Google が管理します。以下は、このガイドを最初に作成したコントリビューターです。
主な作成者:

Henrik Valve | ソリューション エンジニア
Thomas Anglaret | ソリューション エンジニア
Sarthak Ganguly | ソリューション エンジニア