Query jobs

When you use the GCP Console, the classic BigQuery web UI, or the CLI to load, export,
query, or copy data, a job resource is automatically created, scheduled, and run. You can also
programmatically create a load, export, query, or copy job. When you create a job
programmatically, BigQuery schedules and runs the job for you.

Because jobs can potentially take a long time to complete, they execute asynchronously and can be
polled for their status. Shorter actions, such as listing resources or getting metadata are not
managed by a job resource.

Saving and sharing queries

When you save a query, it can be private (visible only to you), shared at the
project level (visible to project members), or public (anyone can view it). For
more information, see saving and sharing queries.

Query pricing

Query pricing refers to the cost of running your SQL commands and user-defined
functions. BigQuery charges for queries by using one metric: the
number of bytes processed. You are charged for the number of bytes processed
whether the data is stored in BigQuery or in an external data
source such as Cloud Storage, Google Drive, or Cloud Bigtable.

The first 1 TB of data processed per month is free of charge (per billing
account). Beyond your first 1 TB of data processed in a month, you are charged
according to the On-demand pricing model.

BigQuery also offers Flat-rate pricing
for high-volume or enterprise customers who prefer a stable monthly cost for
queries. For more information, see Query pricing.

Quotas and query cost controls

BigQuery enforces project-level quotas on running queries. For
information on query quotas, see Quotas and limits.

To control query costs, BigQuery provides several options
including custom quotas and billing alerts. For more information, see
Creating custom cost controls.