Queries Google Professional Data Engineer GCP
- BigQuery supports two types of queries:
- Interactive queries
 - Batch queries
 
 - By default, BigQuery runs interactive queries, or query is executed as soon as possible.
 - BigQuery queues each batch query on behalf and starts the query as soon as idle resources are available
 - Run queries by
- Query editor in the Cloud Console
 - Compose Query option in the BigQuery web UI
 - BigQuery command-line tool’s bq query command
 - BigQuery REST API to programmatically call the jobs.query or query-type jobs.insert methods
 - BigQuery client libraries
 
 - Query execution involves root servers which interpret the query and send it to intermediate servers, which orchestrate the execution to many leaf servers. Leaf servers read from disk and execute.
 - Analytical window functions:
- Aggregate – sum, count
 - Navigation – lead, lag
 - Ranking, numbering – rank, cume_dist
 - “Partition by” is similar to “group by” but doesnt aggregate. This is different from bq partitions how data is stored.
 
 - Data Types – struct, array, timestamp, int64, float64, string
 - Inner table can be using WITH
 - ARRAY_AGG – creates array. UNNEST – break array.
 - STRUCT – creates struct
 - User defined functions – sql udf as well as javascript udfs is possible
 - Udf has constraints – size of udf output is limited, native javascript not supported
 - Unnest – takes an array and returns table
 
Query jobs
- Jobs are actions that BigQuery runs on behalf to
- load data
 - export data
 - query data
 - copy data.
 
 - With Cloud Console, the classic BigQuery web UI, or the CLI for above jobs, a job resource is automatically created, scheduled, and run.
 - If create a job programmatically, BigQuery schedules and runs the job for you.
 - jobs execute asynchronously
 - jobs can be polled for their status.
 
Saving and sharing queries
- If save a query, it can be
- private (visible only to you)
 - shared at the project level (visible to project members)
 - public (anyone can view it).
 
 
Google Professional Data Engineer (GCP) Free Practice TestTake a Quiz
		