Шаблоны проектирования для массовой проверки адресов на Google Cloud Platform

Цель

Учебное пособие по проверке больших объемов адресов провело вас через различные сценарии, в которых можно использовать проверку больших объемов адресов. В этом руководстве мы познакомим вас с различными шаблонами проектирования в Google Cloud Platform для проведения массовой проверки адресов.

Мы начнем с обзора запуска массовой проверки адресов в Google Cloud Platform с Cloud Run, Compute Engine или Google Kubernetes Engine для однократного выполнения. Затем мы увидим, как эту возможность можно включить в конвейер данных.

К концу этой статьи вы должны иметь хорошее представление о различных вариантах запуска проверки адреса в больших объемах в вашей среде Google Cloud.

Эталонная архитектура на Google Cloud Platform

В этом разделе более подробно рассматриваются различные шаблоны проектирования для массовой проверки адресов с использованием Google Cloud Platform . Используя Google Cloud Platform, вы можете интегрироваться с существующими процессами и конвейерами данных.

Однократное выполнение массовой проверки адреса на Google Cloud Platform

Ниже показана эталонная архитектура построения интеграции с Google Cloud Platform, которая больше подходит для разовых операций или тестирования.

изображение

В этом случае мы рекомендуем загрузить CSV-файл в корзину Cloud Storage . Затем сценарий крупномасштабной проверки адресов можно запустить из среды Cloud Run . Однако вы можете выполнить его в любой другой среде выполнения, например Compute Engine или Google Kubernetes Engine . Выходной CSV-файл также можно загрузить в корзину Cloud Storage .

Работа в качестве конвейера данных Google Cloud Platform

Схема развертывания, показанная в предыдущем разделе, отлично подходит для быстрого тестирования проверки больших объемов адресов при однократном использовании. Однако если вам необходимо регулярно использовать его как часть конвейера данных, вы можете лучше использовать собственные возможности Google Cloud Platform, чтобы сделать его более надежным. Некоторые из изменений, которые вы можете внести, включают:

изображение

  • В этом случае вы можете сохранять файлы CSV в сегментах Cloud Storage .
  • Задание Dataflow может получать адреса для обработки, а затем кэшировать их в BigQuery .
  • Библиотеку Dataflow Python можно расширить, добавив в нее логику для проверки больших объемов адресов для проверки адресов из задания потока данных.

Запуск сценария из конвейера данных как длительный повторяющийся процесс.

Другой распространенный подход — проверка пакета адресов как части конвейера потоковых данных в виде повторяющегося процесса. У вас также могут быть адреса в хранилище данных bigquery. В этом подходе мы увидим, как построить повторяющийся конвейер данных (который необходимо запускать ежедневно/еженедельно/ежемесячно).

изображение

  • Загрузите исходный CSV-файл в корзину Cloud Storage .
  • Используйте Memorystore в качестве постоянного хранилища данных для поддержания промежуточного состояния для длительного процесса.
  • Кэшируйте конечные адреса в хранилище данных BigQuery .
  • Настройте Cloud Scheduler для периодического запуска сценария.

Эта архитектура имеет следующие преимущества:

  • Используя Cloud Scheduler , проверку адреса можно выполнять периодически. Возможно, вы захотите проверять адреса ежемесячно или проверять любые новые адреса ежемесячно/ежеквартально. Эта архитектура помогает решить этот вариант использования.
  • Если данные о клиентах находятся в BigQuery , то проверенные адреса или флаги проверки могут кэшироваться непосредственно там. Примечание. Что и как можно кэшировать, подробно описано в статье «Высокообъемная проверка адреса».

  • Использование Memorystore обеспечивает более высокую отказоустойчивость и возможность обработки большего количества адресов. Эти шаги добавляют отслеживание состояния всему конвейеру обработки, что необходимо для обработки очень больших наборов адресных данных. Здесь также можно использовать другие технологии баз данных, такие как облачный SQL[https://cloud.google.com/sql] или любой другой вариант базы данных , предлагаемый облачной платформой Google. Однако мы считаем, что Memorystore Perfectless сочетает в себе потребности в масштабировании и простоте, поэтому должен быть первым выбором.

Заключение

Применяя описанные здесь шаблоны, вы можете использовать API проверки адреса для разных вариантов использования и из разных вариантов использования Google Cloud Platform.

Мы написали библиотеку Python с открытым исходным кодом, которая поможет вам начать работу с описанными выше вариантами использования. Его можно вызвать из командной строки на вашем компьютере или из Google Cloud Platform или других поставщиков облачных услуг.

Подробнее о том, как использовать библиотеку, вы узнаете из этой статьи .

Следующие шаги

Загрузите документ «Улучшение оформления, доставки и операций с помощью надежных адресов» и просмотрите веб-семинар «Улучшение оформления, доставки и операций с помощью проверки адресов» .

Рекомендуемое дальнейшее чтение:

Авторы

Google поддерживает эту статью. Первоначально его написали следующие участники.
Основные авторы:

Хенрик Валв | Инженер по решениям
Томас Англарет | Инженер по решениям
Сартак Гангули | Инженер по решениям