Conversions APIを使用してサーバーイベントを共有する広告主は、Meta Events ManagerでEvent Match Qualityスコアを確認できます。ただし、これは個別ベースでのみ機能するため、技術プロバイダーパートナー、代理店パートナー、または広告主が数百から数千のMeta Pixelをビジネスで管理している場合、拡張が困難です。Dataset Quality(旧称Integration Quality)APIは、データセット品質メトリクスをプログラムで大規模に統合することで、この問題の解決に役立ちます。
このコネクタは、Event Match Quality、イベントカバレッジ、イベント重複排除、追加レポート済みコンバージョンを含む、Conversions APIのメトリクスのインポートを支援します。
- Treasure Dataに関する基本的な知識があること
- Meta Conversionに関する基本的な知識があること
- Metaアクセストークンとデータセットidを持っていること(詳細はこちらのページを参照してください https://developers.facebook.com/docs/marketing-api/conversions-api/dataset-quality-api)
セキュリティポリシーで IP ホワイトリストが必要な場合は、接続を成功させるために Treasure Data の IP アドレスを許可リストに追加する必要があります。
リージョンごとに整理された静的 IP アドレスの完全なリストは、次のリンクにあります: https://api-docs.treasuredata.com/en/overview/ip-addresses-integrations-result-workers/
例1: データセット別のマッチキーカバレッジ
以下のヒートマップは、複数のデータセットにわたる異なるマッチキー(メール、電話、external_id、fbp、fbcなど)のカバレッジ率(%)を示しています。
- 行: マッチキー(イベントマッチングに使用される識別子)
- 列: データセットID(異なる統合ソースまたはキャンペーンを表す)
- セル: カバレッジパーセンテージ — つまり、特定のマッチキーを含むデータセット内のイベントの割合

このダッシュボードの使用方法:
- 各データセット内の弱いマッチキーを特定する(例: dataset_Bは電話のカバレッジが低い)。
- データセット間で最も大きなギャップがあるマッチキーの改善を優先する。カバレッジが高いほど、Event Match Quality(EMQ)が直接改善されます。
- このビューをEMQトレンドおよび重複排除統計と組み合わせて使用し、データセット品質の全体像を構築します。
最初のステップは、認証情報のセットを使用して新しい認証を作成することです。
Integrations Hubを選択します。
Catalogを選択します。

Catalogで連携を検索し、アイコンの上にマウスを置いてCreate Authenticationを選択します。

Credentialsタブが選択されていることを確認し、連携の認証情報を入力します。
| パラメータ | 説明 |
|---|---|
| Authentication Method | OAuth認証方式 |

「Click here to start the OAuth authentication」のリンクをクリックし、Facebookでのログインが成功すると、TD consoleのウェブサイトにリダイレクトされます。その後、Continueボタンをクリックします。

| パラメータ | 説明 |
|---|---|
| Authentication | Access Token認証方式 |
| Access Token | MetaアクセストークN |
| App Secret | Metaアプリシークレット |
- 認証の名前を入力し、Doneを選択します。
TD Consoleを開きます。
Integrations Hub > Authenticationsに移動します。
新しい認証を見つけて、New Sourceを選択します。
| パラメータ | 説明 |
|---|---|
| Data Transfer Name | 転送の名前を入力できます。 |
| Authentication | 転送に使用される認証名。 |
Data Transfer Nameフィールドにソース名を入力します。
Nextを選択します。
Create Sourceページが表示され、Source Tableタブが選択されています。

| パラメータ | 説明 |
|---|---|
| Dataset ID | 品質データを取得するデータセット(Pixel)のID。 |
| Agent Name | partner_agentフィールドの正規化された値。partner_agentで送信されたイベントのみをフィルタリングするために使用されます。 |
| Event Type | イベントのタイプ。現在はウェブサイトイベントのみをサポートしています。 |
| Website Metric Type | ウェブサイトのイベントメトリクスで、以下の値をサポートしています - Event Match Quality - Additional Conversions Reported for Parameters - Event Match Quality Diagnostics - Event Coverage - Additional Conversions Reported for Event Coverage - Event Deduplication - Data Freshness - Additional Conversions Reported for Event - Additional Conversions Reported |
Nextを選択します。

| パラメータ | 説明 |
|---|---|
| Retry Limit | 最大リトライ制限。 |
| Initial Retry Wait | 最初のリトライまでの待機時間(秒)。 |
| Maximum Retry Wait | リトライの最大待機時間(秒)。 |
| HTTP Connection Timeout | 接続タイムアウト設定(秒)。 |
| HTTP Read Timeout | 読み取りタイムアウト設定(秒)。 |
Nextを選択します。
インポートを実行する前に、Generate Preview を選択してデータのプレビューを表示できます。Data preview はオプションであり、選択した場合はダイアログの次のページに安全にスキップできます。
- Next を選択します。Data Preview ページが開きます。
- データをプレビューする場合は、Generate Preview を選択します。
- データを確認します。
データの配置について、データを配置したいターゲット database と table を選択し、インポートを実行する頻度を指定します。
Next を選択します。Storage の下で、インポートされたデータを配置する新しい database を作成するか、既存の database を選択し、新しい table を作成するか、既存の table を選択します。
Database を選択 > Select an existing または Create New Database を選択します。
オプションで、database 名を入力します。
Table を選択 > Select an existing または Create New Table を選択します。
オプションで、table 名を入力します。
データをインポートする方法を選択します。
- Append (デフォルト) - データインポートの結果は table に追加されます。 table が存在しない場合は作成されます。
- Always Replace - 既存の table の全体の内容をクエリの結果出力で置き換えます。table が存在しない場合は、新しい table が作成されます。
- Replace on New Data - 新しいデータがある場合のみ、既存の table の全体の内容をクエリの結果出力で置き換えます。
Timestamp-based Partition Key 列を選択します。 デフォルトキーとは異なるパーティションキーシードを設定したい場合は、long または timestamp 列をパーティショニング時刻として指定できます。デフォルトの時刻列として、add_time フィルターで upload_time を使用します。
データストレージの Timezone を選択します。
Schedule の下で、このクエリを実行するタイミングと頻度を選択できます。
- Off を選択します。
- Scheduling Timezone を選択します。
- Create & Run Now を選択します。
- On を選択します。
- Schedule を選択します。UI では、@hourly、@daily、@monthly、またはカスタム cron の 4 つのオプションが提供されます。
- Delay Transfer を選択して、実行時間の遅延を追加することもできます。
- Scheduling Timezone を選択します。
- Create & Run Now を選択します。
転送が実行された後、Data Workbench > Databases で転送の結果を確認できます。
Workflowのtd_load>:オペレータを使用して、Meta Datasetからデータをインポートできます。すでにSOURCEを作成している場合は実行できます。SOURCEを作成したくない場合は、ymlファイルを使用してインポートできます。
- ソースを特定します。
- 一意のIDを取得するには、ソースリストを開き、Meta Dataset Qualityでフィルタリングします。
- メニューを開き、Copy Unique IDを選択します。

- td_load>オペレータを使用してワークフロータスクを定義します。
+load:
td_load>: unique_id_of_your_source
database: ${td.dest_db}
table: ${td.dest_table}- ワークフローを実行します。
- ymlファイルを特定します。ymlファイルを作成する必要がある場合は、Amazon S3 Import Integration Using CLIを参照してください。
- td_load>オペレーターを使用してワークフロータスクを定義します。
+load:
td_load>: config/daily_load.yml
database: ${td.dest_db}
table: ${td.dest_table}- ワークフローを実行します
| Name | Description | Value | Default Value | Required |
|---|---|---|---|---|
| type | コネクタタイプ | meta_dataset_quality | Yes | |
| access_token | Metaアクセストークン | Yes | ||
| app_secret | Meta OAuth appシークレット。 | No | ||
| dataset_id | 品質データを取得するデータセット(Pixel)のID。 | Yes | ||
| agent_name | partner_agentフィールドの正規化された値で、partner_agentで送信されたイベントのみをフィルタリングするために使用されます | No | ||
| event_type | イベントのタイプ。現在はウェブサイトイベントのみサポートしています。 | WEBSITE | Yes | |
| web_metric_type | ウェブサイトのイベントメトリックで、以下の値をサポートしています。 | サポートされる値: - EVENT_MATCH_QUALITY - ADDITIONAL_CONVERSIONS_REPORTED_FOR_PARAMETERS - EVENT_MATCH_QUALITY_DIAGNOSTICS - EVENT_COVERAGE - ADDITIONAL_CONVERSIONS_REPORTED_FOR_EVENT_COVERAGE - EVENT_DEDUPLICATION - DATA_FRESHNESS - ADDITIONAL_CONVERSIONS_REPORTED_FOR_EVENT - ADDITIONAL_CONVERSIONS_REPORTED | EVENT_MATCH_QUALITY | Yes |
| retry_limit | 最大リトライ制限。 | 7 | No | |
| initial_retry_wait | 最初のリトライまでの待機時間(秒)。 | 2秒 | No | |
| max_retry_wait | リトライの最大待機時間(秒)。 | 240秒 | No | |
| connection_timeout | タイムアウト接続設定(秒)。 | 300秒 | No | |
| read_timeout | 読み取りタイムアウト設定(秒)。 | 120秒 | No |
サンプルワークフローコードについては、Treasure Boxesを参照してください。
コネクタをセットアップする前に、最新のTD Toolbeltをインストールしてください。
in:type: meta_dataset_quality
access_token: token
app_secret: 9111...
dataset_id: 1234567901
agent_name:
event_type: WEBSITE
web_metric_type: EVENT_MATCH_QUALITY
retry_limit: 7
initial_retry_wait: 2
max_retry_wait: 240
connection_timeout: 300
read_timeout: 120
out:
mode: append| Name | Description | Value | Default Value | Required |
|---|---|---|---|---|
| type | コネクタタイプ | meta_dataset_quality | Yes | |
| access_token | Metaアクセストークン | Yes | ||
| app_secret | Meta OAuth appシークレット。 | No | ||
| dataset_id | 品質データを取得するデータセット(Pixel)のID。 | Yes | ||
| agent_name | partner_agentフィールドの正規化された値で、partner_agentで送信されたイベントのみをフィルタリングするために使用されます | No | ||
| event_type | イベントのタイプ。現在はウェブサイトイベントのみサポートしています。 | WEBSITE | Yes | |
| web_metric_type | ウェブサイトのイベントメトリックで、以下の値をサポートしています。 | サポートされる値: - EVENT_MATCH_QUALITY - ADDITIONAL_CONVERSIONS_REPORTED_FOR_PARAMETERS - EVENT_MATCH_QUALITY_DIAGNOSTICS - EVENT_COVERAGE - ADDITIONAL_CONVERSIONS_REPORTED_FOR_EVENT_COVERAGE - EVENT_DEDUPLICATION - DATA_FRESHNESS - ADDITIONAL_CONVERSIONS_REPORTED_FOR_EVENT - ADDITIONAL_CONVERSIONS_REPORTED | EVENT_MATCH_QUALITY | Yes |
| retry_limit | 最大リトライ制限。 | 7 | No | |
| initial_retry_wait | 最初のリトライまでの待機時間(秒)。 | 2秒 | No | |
| max_retry_wait | リトライの最大待機時間(秒)。 | 240秒 | No | |
| connection_timeout | タイムアウト接続設定(秒)。 | 300秒 | No | |
| read_timeout | 読み取りタイムアウト設定(秒)。 | 120秒 | No |
データをプレビューするには、td connector:previewコマンドを使用します。
$ td connector:preview load.ymlguessコマンドは、ソースデータファイルから少なくとも3行2列以上を必要とします。これは、コマンドがソースデータのサンプル行を使用してカラム定義を評価するためです。
システムが予期しないカラム名またはカラムタイプを検出した場合は、load.ymlファイルを変更して再度プレビューしてください。
ロードジョブを送信します。 データのサイズによっては、数時間かかる場合があります。データを保存するTreasure Dataのデータベースとテーブルを必ず指定してください。
Treasure Dataのストレージは時間で分割されているため(データパーティショニングを参照)、--time-columnオプションの指定を推奨します。このオプションが指定されていない場合、データコネクタは最初のlongまたはtimestampカラムをパーティショニング時間として選択します。--time-columnで指定するカラムのタイプは、longまたはtimestampのいずれかである必要があります。
データに時間カラムがない場合は、add_timeフィルターオプションを使用して時間カラムを追加できます。詳細については、add_time Filter Functionを参照してください。
$ td connector:issue load.yml --database td_sample_db --table td_sample_table \
--time-column created_atconnector:issueコマンドは、database(td_sample_db)とtable(td_sample_table)がすでに作成されていることを前提としています。データベースまたはテーブルがTDに存在しない場合、このコマンドは失敗します。データベースとテーブルを手動で作成するか、td connector:issueコマンドで--auto-create-tableオプションを使用してデータベースとテーブルを自動作成してください。
$ td connector:issue load.yml --database td_sample_db --table td_sample_table
--time-column created_at --auto-create-tableデータコネクタはサーバー側でレコードをソートしません。時間ベースのパーティショニングを効果的に使用するには、事前にファイル内のレコードをソートしてください。
timeというフィールドがある場合は、--time-columnオプションを指定する必要はありません。
$ td connector:issue load.yml --database td_sample_db --table td_sample_tableload.yml ファイルの out セクションでファイルインポートモードを指定できます。out: セクションは、Treasure Data テーブルへのデータインポート方法を制御します。例えば、Treasure Data の既存テーブルにデータを追加したり、データを置き換えたりすることができます。
| モード | 説明 | 例 |
|---|---|---|
| Append | レコードがターゲットテーブルに追加されます。 | in: ... out: mode: append |
| Always Replace | ターゲットテーブルのデータを置き換えます。ターゲットテーブルに対して手動で行われたスキーマ変更はそのまま維持されます。 | in: ... out: mode: replace |
| Replace on new data | 新しいデータがインポートされる場合のみ、ターゲットテーブルのデータを置き換えます。 | in: ... out: mode: replace_on_new_data |
増分ファイルインポートのために、定期的なデータコネクター実行をスケジュールできます。Treasure Data は、高可用性を確保するためにスケジューラーを慎重に構成しています。
スケジュールされたインポートでは、指定されたプレフィックスに一致するすべてのファイルと、次のいずれかのフィールドを条件としてインポートできます:
- use_modified_time が無効の場合、最後のパスが次回の実行のために保存されます。2回目以降の実行では、コネクターはアルファベット順で最後のパスの後にあるファイルのみをインポートします。
- それ以外の場合、ジョブが実行された時刻が次回の実行のために保存されます。2回目以降の実行では、コネクターはその実行時刻以降にアルファベット順で変更されたファイルのみをインポートします。
td connector:create コマンドを使用して、新しいスケジュールを作成できます。
$ td connector:create daily_import "10 0 * * *" \
td_sample_db td_sample_table load.ymlTreasure Data のストレージは時間によってパーティション分割されているため (data partitioning も参照)、--time-column オプションを指定することも推奨されます。
$ td connector:create daily_import "10 0 * * *" \
td_sample_db td_sample_table load.yml \
--time-column created_atcron パラメータは、@hourly、@daily、@monthly の3つの特別なオプションも受け付けます。
デフォルトでは、スケジュールは UTC タイムゾーンで設定されます。-t または --timezone オプションを使用して、タイムゾーンでスケジュールを設定できます。--timezone オプションは、'Asia/Tokyo'、'America/Los_Angeles' などの拡張タイムゾーン形式のみをサポートします。PST、CST などのタイムゾーン略語はサポートされておらず、予期しないスケジュールにつながる可能性があります。
td connector:list コマンドを実行することで、現在スケジュールされているエントリのリストを確認できます。
$ td connector:list
+--------------+--------------+----------+-------+--------------+-----------------+---------------------------------------------+
| Name | Cron | Timezone | Delay | Database | Table | Config |
+--------------+--------------+----------+-------+--------------+-----------------+---------------------------------------------+
| daily_import | 10 0 * * * | UTC | 0 | td_sample_db | td_sample_table | {"in"=>{"type"=>"meta_dataset_quality",...} |
+--------------+--------------+----------+-------+--------------+-----------------+---------------------------------------------+td connector:show は、スケジュールエントリの実行設定を表示します。
% td connector:show daily_importName : daily_import
Cron : 10 0 * * *
Timezone : UTC
Delay : 0
Database : joe_db
Table : meta_dataset_quality_shed
Config
in:
access_token: "***"
app_secret: "***"
dataset_id: '1234567890'
event_type: WEBSITE
web_metric_type: EVENT_MATCH_QUALITY
retry_limit: 3
initial_retry_wait: 1
max_retry_wait: 240
connection_timeout: 300
read_timeout: 120
type: meta_dataset_quality
td connector:history は、スケジュールされたエントリの実行履歴を表示します。個々の実行の結果を調査するには、td job jobid を使用します。
% td connector:history daily_import
+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
| JobID | Status | Records | Database | Table | Priority | Started | Duration |
+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
| 578066 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-18 00:10:05 +0000 | 160 |
| 577968 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-17 00:10:07 +0000 | 161 |
| 577914 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-16 00:10:03 +0000 | 152 |
| 577872 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-15 00:10:04 +0000 | 163 |
| 577810 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-14 00:10:04 +0000 | 164 |
| 577766 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-13 00:10:04 +0000 | 155 |
| 577710 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-12 00:10:05 +0000 | 156 |
| 577610 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-11 00:10:04 +0000 | 157 |
+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
8 rows in settd connector:delete は、スケジュールを削除します。
$ td connector:delete daily_import