Contents:
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 Alteryx node 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.
In this scenario, the recipe steps are converted to SQL, which is sequentially executed on the Datasets and Tables of your source data into temporary tables, from which the results that you have defined for your output are written.
Tip: When running a job in BigQuery, your data never leaves BigQuery.
Tip: For jobs that are executed in BigQuery, you can optionally enable the execution of the visual profile in BigQuery, too. This option is enabled for individual flows. For more information, see Flow Optimization Settings Dialog.
Requirements
- This feature must be enabled by the project owner. See Configure Running Environments.
- In your flow, you must enable all general and BigQuery-specific flow optimizations. When all of these optimizations are enabled, the job can be pushed down to BigQuery for execution. For more information, see Flow Optimization Settings Dialog.
If the requirements and limitations are met, the Dataprep by Trifacta application automatically executes the job in BigQuery.
Limitations
BigQuery as a running environment requires that pushdowns be enabled for the project and for the specific flow for which the job is executed. If the flow and the project are properly configured, the job is automatically executed 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 Dataflow.
- All datasources and all outputs specified in a job must be located within BigQuery.
- Dataflow must be selected as running environment.
- Custom SQL datasets are not supported.
All recipe steps, including all Wrangle functions in the recipe, must be translatable to SQL.
NOTE: When attempting to execute a job in BigQuery, Dataprep by Trifacta application executes each recipe in BigQuery, until it reaches a step that cannot be executed there. At that point, data is transferred to Dataflow, where the remainder of the job is executed.
- 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.
- Sampling jobs are not supported for execution in BigQuery.
- If your recipe includes data quality rules, the job cannot be fully executed in BigQuery.
NOTE: In the new BigQuery console, you may not be able to see the SQL that was used to execute your job in BigQuery. This is a known issue with the new BigQuery console.
Unsupported Wrangle for BigQuery Execution
The following transformations and functions are not currently supported for execution in BigQuery.
NOTE: If your recipe contains any of the following transformations or functions, full job execution in BigQuery is not possible at this time. These transformations are expected to be supported and removed from this list in future releases.
General limitations
- Regex patterns used must be valid RE2. Operations on non-RE2 regex patterns are not pushed down.
- For more information on limitations on specific push-downs, see Flow Optimization Settings Dialog.
Unsupported data types
The following data types are not supported for execution in BigQuery.
- Arrays
- Objects (Maps)
Unsupported transformations
The following transformations are not supported for execution in BigQuery.
Legend:
- Search term: the value you enter in the Transform Builder
- Transform: name of the underlying transform
Search term | Transform |
---|---|
Unnest elements | unnest |
Expand Array to rows | flatten |
Extract between delimiters | extractbetweendelimiters |
Unpivot | unpivot |
Standardize column | standardize |
Nest columns | nest |
Extract matches to Array | extractlist |
Replace between delimiters | replacebetweenpatterns |
Scale to min max | scaleminmax |
Scale to mean | scalestandardize |
Convert key/value to Object | extractkv |
For more information, see Transformation Reference.
Unsupported functions
The following Wrangle functions are not currently supported for execution in BigQuery.
Aggregate functions
KTHLARGEST
KTHLARGESTIF
KTHLARGESTUNIQUE
KTHLARGESTUNIQUEIF
LIST
LISTIF
MODE
MODEIF
UNIQUE
QUARTILE
APPROXIMATEMEDIAN
APPROXIMATEPERCENTILE
APPROXIMATEQUARTILE
For more information, see Aggregate Functions.
Math functions
LCM
NUMVALUE
Partially supported:
NUMFORMAT: Only supported when used for rounding.
For more information, see Math Functions.
Date functions
WEEKNUM
NETWORKDAYS
NETWORKDAYSINTL
MODEDATE
WORKDAY
WORKDAYINTL
CONVERTFROMUTC
CONVERTTOUTC
CONVERTTIMEZONE
MODEDATEIF
KTHLARGESTDATE
KTHLARGESTUNIQUEDATE
KTHLARGESTUNIQUEDATEIF
KTHLARGESTDATEIF
EOMONTH
SERIALNUMBER
Partially supported:
DATEDIF: Only day, hour, minute, second and millisecond are supported as units.
For more information, see Date Functions.
String functions
SUBSTITUTE
PROPER
REMOVESYMBOLS
RIGHTFIND
EXACT
STRINGGREATERTHAN
STRINGGREATERTHANEQUAL
STRINGLESSTHAN
STRINGLESSTHANEQUAL
DOUBLEMETAPHONE
DOUBLEMETAPHONEEQUALS
TRANSLITERATE
For more information, see String Functions.
Nested functions
ARRAYCONCAT
ARRAYCROSS
ARRAYINTERSECT
ARRAYLEN
ARRAYSTOMAP
ARRAYUNIQUE
ARRAYZIP
FILTEROBJECT
KEYS
ARRAYELEMENTAT
LISTAVERAGE
LISTMAX
LISTMIN
LISTMODE
LISTSTDEV
LISTSUM
LISTVAR
ARRAYSORT
ARRAYINDEXOF
ARRAYMERGEELEMENTS
ARRAYRIGHTINDEXOF
ARRAYSLICE
For more information, see Nested Functions.
Window functions
SESSION
For more information, see Window Functions.
Other functions
IPTOINT
IPFROMINT
For more information, see Other Functions.
Verify Execution
To verify execution in BigQuery, please do the following:
Steps:
- In the left nav bar, click the Jobs link.
- In the Jobs page, select the job that you executed.
- In the Overview tab, the value for Environment under the Execution summary should be:
BigQuery
.
For more information, see Job Details Page.
This page has no comments.