GitHub user joshfg opened a pull request:
https://github.com/apache/beam/pull/2474
[BEAM-1908] Allow setting CREATE_NEVER when using a tablespec in BigQueryIO
Currently, the BigQueryIO.Write transform doesn't allow
CreateDisposition.CREATE_NEVER to be set when using a tablespec to determine
the BigQuery table name dynamically at runtime.
This check was originally put in because it was assumed that BigQueryIO
would need to create a new table every time the tablespec returns a table name
that hasn't been seen before. Since then a new BigQuery feature was released
which enables date partitioning within a single table, and is now the preferred
way to shard data by date (instead of having a table per date). It should
therefore be possible to use tablespec to write to a specific partition e.g.
`my-project:dataset.my_table$20170407`, while setting
CreateDisposition.CREATE_NEVER since we never need to create a new table.
This PR removes the check so that CreateDisposition.CREATE_NEVER can be
used with a tablespec.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/joshfg/beam beam-1908
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/beam/pull/2474.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2474
----
commit 41dc5921891ed256632d257e412a03357476524f
Author: Josh <[email protected]>
Date: 2017-04-07T18:24:41Z
[BEAM-1908] Allow setting CREATE_NEVER when using a tablespec in BigQueryIO
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---