| D s ed|
BigQuery is a scalable cloud data warehouse integrated with the Google Cloud Platform for storage of a wide range of datasets. In some use cases, your transformation jobs can be executed completely in BigQuery. If all of your source datasets and outputs are in BigQuery locations, then transferring the execution steps from the to BigQuery yields the following benefits:
- A minimum of data (recipe steps and associated metadata) is transferred between systems. Everything else remains in BigQuery.
- Recipe steps are converted into SQL that is understandable and native to BigQuery. Execution times are much faster.
- Depending on your environment, total cost of executing the job may be lower in BigQuery.
NOTE: BigQuery is not a running environment that you explicitly select or specify as part of a job. If all of the requirements are met, then the job is executed in BigQuery when you select .
NOTE: Datasources that require conversion are not supported for execution in BigQuery.
- For any job to be executed in BigQuery, all datasources must be located in BigQuery or or , and all outputs must be located within BigQuery.
- must be selected as running environment.
All recipe steps, including all functions in the recipe, must be translatable to SQL.
NOTE: When attempting to execute a job in BigQuery, executes each recipe in BigQuery, until it reaches a step that cannot be executed there. At that point, data is transferred to , where the remainder of the job is executed.
BigQuery imposes a limit of 1 MB for all submitted SQL queries. If this limit is exceeded during job execution, falls back to submitting the job through .
If the schemas have changed for your datasets, pushdown execution on BigQuery is not supported. falls back to submitting the job through .
- Some transformations and functions are not currently supported for execution in BigQuery. See below.
- Upserts, merges, and deletes are not supported for full execution in BigQuery.
- If your recipe includes data quality rules, the job cannot be fully executed in BigQuery.
- BigQuery does not permit partitioned tables to be replaced. As a result, the Drop and Load publishing action is not supported when writing to a partitioned table during BigQuery execution. For more information, see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#create_table_statement.
- In BigQuery, escaped whitespace characters (
\s) match a broader set of Unicode space characters than , due to differences in implementation of regular expressions between the two running environments. Depending on your dataset, this difference may result in mismatches between rows in your results when running the same job across different running environments.
- Some uncommon date formats are not supported for pushdown.
- Publication of complex arrays to BigQuery is not supported for jobs executed in the BigQuery running environment. To publish these arrays as non-String values, you must disable all flow optimizations and run the job in .
CSV. CSV files that fail to meet the following requirements may cause job failures when executed in BigQuery, even though they can be imported into . Requirements:
- JSON (newline-delimited)
Compressed Files (gz and bz)
NOTE: Snappy and bz2 file formats are not supported for pushdown execution in BigQuery. When these file formats are encountered as datasources, the job automatically reverts to run on .
Supported file encodings: