Limitations#
key_columns: 内に列挙できる key の数は最大32まで#
yml ファイルにおいて、tables:
における各テーブル内で指定できる key_columns:
内の key 数は最大32までとなる。
tables:
- database: prod
table: pageviews
key_columns:
- {column: td_client_id, key: td_client_id}
# 最大32まで列挙
- database: brand2
table: pageviews
as: brand2_pageviews
key_columns:
- {column: td_client_id, key: td_client_id}
- {column: td_global_id, key: td_global_id}
- {column: email, key: email}
# 最大32まで列挙
tables: に列挙できる table の数は最大255まで#
tables:
内で列挙できる table の数は最大255までとなる。
tables: 内での key の登場回数は最大32回まで#
yml ファイルにおいて、tables:
内で登場できる回数が 32 までとなる。
keys:
- name: td_client_id
invalid_texts: ['']
- name: td_global_id
valid_regexp: "3rd_*"
invalid_texts: ['']
- name: email
valid_regexp: ".*@.*"
invalid_texts: ['']
# td_client_id, td_global_id, email が 33回登場しているのでエラーとなる!
tables:
- database: db1
table: pageviews
key_columns:
- {column: td_client_id, key: td_client_id}
- {column: td_global_id, key: td_global_id}
- {column: email, key: email}
- database: db2
table: pageviews
key_columns:
- {column: td_client_id, key: td_client_id}
- {column: td_global_id, key: td_global_id}
- {column: email, key: email}
...
- database: db33
table: pageviews
key_columns:
- {column: td_client_id, key: td_client_id}
- {column: td_global_id, key: td_global_id}
- {column: email, key: email}
do_not_merge_key: 使用時の merge_by_keys: の順番の制約#
do_not_merge_key:
使用時には、merge_by_keys:
の先頭 (優先度が最も高い位置) に do_not_merge_key:
に設定した key を指定する必要がある。そうでないと、以下のエラーメッセージを受け取ることになる。
400 Bad Request: {"canonical_ids[0].do_not_merge_key" :[ "must be the first element of merge_by_keys"]}