используя опцию обновления схемы в beam.io.writetobigquery
Я загружаю кучу файлов журнала в BigQuery, используя поток данных Apache Beam. Формат файла может меняться с течением времени, добавляя к файлам новые столбцы. Я вижу вариант обновления схемы ALLOW_FILED_ADDITION.
кто-нибудь знает, как его использовать, вот как выглядит мой шаг WriteToBQ.
| 'write to bigquery' >> beam.io.WriteToBigQuery('project:datasetId.tableId', ,write_disposition=beam.io.BigQueryDisposition.WRITE_APPEND)
1 ответ
На самом деле я еще не пробовал это, но копаясь в документации, кажется, вы можете передать любую конфигурацию, которая вам нравится, в задание загрузки BigQuery, используя
| 'write to bigquery' >> beam.io.WriteToBigQuery(
'project:datasetId.tableId',
write_disposition=beam.io.BigQueryDisposition.WRITE_APPEND,
additional_bq_parameters={
'schemaUpdateOptions': [
'ALLOW_FIELD_ADDITION',
'ALLOW_FIELD_RELAXATION',
]
}
)
Как ни странно, это на самом деле есть в Java SDK, но, похоже, не дошло до Python SDK.