Mailchimp のデータを BigQuery に読み込む

Mailchimp から BigQuery にデータを読み込むには、BigQuery Data Transfer Service for Mailchimp コネクタを使用します。BigQuery Data Transfer Service を使用すると、Mailchimp から BigQuery に最新のデータを追加する定期的な転送ジョブをスケジュール設定できます。Mailchimp コネクタは、Standard と Express の両方の Mailchimp アカウントを含む、複数アカウントのサポートを備えています。

制限事項

  • Mailchimp マーケティング API は、ユーザーごとに最大 10 件の同時接続のみをサポートしています。この上限を超えると、429: TooManyRequests: You have exceeded the limit of 10 simultaneous connections エラーが発生します。
    • このレート上限に達しないように、Mailchimp アカウントごとに 1 回のデータ転送のみを実行することをおすすめします。
    • 詳細については、エラー用語集をご覧ください。
  • Mailchimp の Integer データ型の最大サポート値は、すべてのオブジェクトで 2,147,483,647 です。
    • ただし、EcommerceOrderLinesEcommerceCartLinesQuantity フィールドなど、一部の Mailchimp フィールドではより大きな値がサポートされています。

配列フィールドの制限事項

Mailchimp コネクタは、次の Mailchimp オブジェクトの ARRAY フィールドをサポートしていません。

Mailchimp オブジェクト サポートされていない ARRAY フィールド
Campaigns VariateSettings_SubjectLines
VariateSettings_SendTimes
VariateSettings_FromNames
VariateSettings_ReplyToAddresses
VariateSettings_Contents
VariateSettings_Combinations
EcommerceCarts Lines
EcommerceProducts Variants
ListMembers TagsAggregate
ListMergeFields Options_Choices
Lists Modules
AuthorizedApps Users
AutomationEmails Settings_AutoFbPost
CampaignOpenEmailDetails Opens
EcommerceProductImages VariantIds
ListSignupForms ContentsStyles
ReportEmailActivity Activity
Reports Timewarp

始める前に

以降のセクションでは、Mailchimp のデータ転送を作成する前に必要な前提条件について説明します。

Mailchimp の前提条件

Mailchimp から BigQuery へのデータ転送を有効にするには、認証とアクセス用の Mailchimp API キーが必要です。API キーの取得については、API キーを生成するをご覧ください。

BigQuery の前提条件

必要な BigQuery のロール

BigQuery Data Transfer Service データ転送の作成に必要な権限を取得するには、プロジェクトに対する BigQuery 管理者roles/bigquery.admin)IAM ロールを付与するよう管理者に依頼します。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

この事前定義ロールには、BigQuery Data Transfer Service のデータ転送の作成に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

BigQuery Data Transfer Service のデータ転送を作成するには、次の権限が必要です。

  • BigQuery Data Transfer Service の権限
    • bigquery.transfers.update
    • bigquery.transfers.get
  • BigQuery の権限
    • bigquery.datasets.get
    • bigquery.datasets.getIamPolicy
    • bigquery.datasets.update
    • bigquery.datasets.setIamPolicy
    • bigquery.jobs.create

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

詳細については、bigquery.admin のアクセス権を付与するをご覧ください。

Pub/Sub の転送実行通知を設定する場合は、pubsub.topics.setIamPolicy IAM 権限があることを確認します。メール通知のみを設定する場合は、Pub/Sub の権限は必要ありません。詳細については、BigQuery Data Transfer Service の実行通知をご覧ください。

Mailchimp のデータ転送を設定する

次のいずれかのオプションを使用して転送構成を設定し、Mailchimp データを BigQuery に追加します。

コンソール

  1. Google Cloud コンソールの [データ転送] ページに移動します。

    [データ転送] に移動

  2. [転送を作成] をクリックします。

  3. [ソースタイプ] セクションの [ソース] で、[Mailchimp - プレビュー] を選択します。

  4. [データソースの詳細] セクションで、次のようにします。

    • [API Key] に Mailchimp API キーを入力します。詳細については、Mailchimp の前提条件をご覧ください。
    • 省略可: [開始日] で、データ転送に含める新しいレコードの開始日を指定します。この日付以降に作成されたレコードのみがデータ転送に含まれます。
      • YYYY-MM-DD 形式でデータを入力します。最小値は 2001-01-01 です。
    • [Mailchimp objects to transfer] で、[参照] をクリックして、BigQuery 宛先データセットに転送するオブジェクトを選択します。このフィールドには、データ転送に含めるオブジェクトを手動で入力することもできます。
  5. [転送先の設定] セクションの [データセット] で、データを保存するために作成したデータセットを選択します。

  6. [転送構成名] セクションの [表示名] に、データ転送の名前を入力します。

  7. [スケジュール オプション] セクションで:

    • [繰り返しの頻度] リストで、この転送の実行頻度を指定するオプションを選択します。カスタムの繰り返しの頻度を指定するには、[カスタム] を選択します。[オンデマンド] を選択した場合、手動で転送をトリガーすると、この転送が実行されます。
    • 必要に応じて、[すぐに開始] を選択するか、[設定した時刻に開始] を選択して開始日と実行時間を指定します。
  8. 省略可: [通知オプション] セクションで、次のようにします。

    • メール通知を有効にするには、[メール通知] をクリックします。このオプションを有効にした場合、転送の実行が失敗すると転送管理者にメール通知が送信されます。
    • この転送の Pub/Sub 転送実行通知を有効にするには、[Pub/Sub 通知] をクリックします。トピック名を選択するか、[トピックを作成] をクリックしてトピックを作成します。
  9. [保存] をクリックします。

bq

bq mk コマンドを入力して、転送作成フラグ --transfer_config を指定します。

bq mk
    --transfer_config
    --project_id=PROJECT_ID
    --data_source=DATA_SOURCE
    --display_name=NAME
    --target_dataset=DATASET
    --params='PARAMETERS'

次のように置き換えます。

  • PROJECT_ID(省略可): Google Cloud プロジェクト ID。--project_id で特定のプロジェクトを指定しない場合は、デフォルトのプロジェクトが使用されます。
  • DATA_SOURCE: データソース - mailchimp
  • NAME: データ転送構成の表示名。転送名には、後で修正が必要になった場合に識別できる任意の名前を使用できます。
  • DATASET: 転送構成のターゲット データセット。
  • PARAMETERS: 作成される転送構成のパラメータを JSON 形式で指定します。例: --params='{"param":"param_value"}'。Mailchimp データ転送のパラメータは次のとおりです。

    • assets: BigQuery に転送する Mailchimp オブジェクトのパス。
    • connector.authentication.apiKey: Mailchimp API キー。
    • connector.startDate:(省略可)データ転送に含める新しいレコードの開始日(YYYY-MM-DD 形式)。この日付以降に作成されたレコードのみがデータ移行に含まれます。

次のコマンドは、デフォルト プロジェクトに Mailchimp データ転送を作成します。

    bq mk
        --transfer_config
        --target_dataset=mydataset
        --data_source=mailchimp
        --display_name='My Transfer'
        --params='{"assets": "Lists",
            "connector.authentication.apiKey":"1234567",
            "connector.startDate":"2025-01-01"}'
転送構成を保存すると、Mailchimp コネクタはスケジュール オプションに従って転送実行を自動的にトリガーします。転送が実行されるたびに、Mailchimp コネクタは Mailchimp から BigQuery に利用可能なすべてのデータを転送します。

定期的なスケジュール外でデータ転送を手動で実行するには、バックフィル実行を開始します。

データ型マッピング

次の表に、Mailchimp のデータ型と対応する BigQuery データ型のマッピングを示します。

Mailchimp のデータ型 BigQuery のデータ型 説明
String STRING
Integer INT64
Number BIGNUMERIC Mailchimp の Number データ オブジェクトは、PriceOrderTotal などの財務関連フィールドの場合は BIGNUMERIC データ型に、Stats_OpenRateLocation_Latitude などのその他のフィールドの場合は FLOAT64 データ型にマッピングされます。
Number FLOAT64
Boolean BOOLEAN
日時形式の String TIMESTAMP STRING データ型のうち、日時形式のものは ISO 8601 形式で表されます。例: 2019-08-24T14:15:22Z

料金

この機能のプレビュー版では、Mailchimp データを BigQuery に転送する際に費用は発生しません。

転送の設定に関するトラブルシューティング

データ転送の設定で問題が発生した場合は、Mailchimp の転送に関する問題をご覧ください。

次のステップ

  • BigQuery Data Transfer Service の概要については、BigQuery Data Transfer Service とはをご覧ください。
  • 転送構成に関する情報の取得、転送構成の一覧表示、転送の実行履歴の表示など、転送の使用方法については、転送の管理をご覧ください。