Skip to content

Terminology

The following definitions are used consistently across all functions and development activity. These definitions may override some of the standard Google definitions which can be inconsistent across different system functions, views and user interfaces.

Resource Types

Resource Type
Description Docs
TABLE The collective terminology for a resource of type BASE TABLE, PARTITIONED TABLE, SHARDED TABLE, EXTERNAL TABLE, SNAPSHOT or VIEW Introduction to tables
BASE TABLE A native BigQuery table, for which the data is physically stored within BigQuery Standard BigQuery tables
PARTITIONED TABLE A native BigQuery table where the data is stored in physically separate partitions (typically using a DATE column), enabling efficient and performant query execution Partitioned tables
DATE-PARTITIONED TABLE (DPT) A partitioned table which is partitioned by a specific date column. Partitioned tables
SHARDED TABLE A set of tables with a common schema and prefix, but with distinct suffixes (e.g. [prefix]_YYYYMMDD for date-based sharding) Partitioning versus sharding
DATE-SHARDED TABLE (DST) A sharded table which is sharded by date, with table names in the format [prefix]_YYYYMMDD Partitioning versus sharding
EXTERNAL TABLE A BigQuery table where the data is stored externally, either within the Google ecosystem (Google Sheets, files on Google Cloud Storage) or externally (Amazon S3, Azure Blob Storage) External tables
SNAPSHOT An efficient mechanism for recording point-in-time table contents Introduction to table snapshots
VIEW An ephemeral table-like logical resource defined by a SQL query Views
ROUTINE The collective terminology for a resource of type FUNCTION, PROCEDURE, TABLE FUNCTION or REMOTE FUNCTION Manage Routines
FUNCTION User-defined code (SQL, native Javascript or packaged Javascript libraries) which wraps logic into a reusable and shareable function, taking zero or more type-specific arguments and returning a single value User-defined functions
PROCEDURE A set of statements which takes zero or more type-specific arguments and enables complex logic and actions to be packaged into a single, reusable and shareable resource SQL stored procedures
TABLE FUNCTION (TF) A parameterized VIEW which can support more complex, optimized query patterns Table functions
DATE-BOUNDED TABLE FUNCTION (DBTF) A table function with precisely two DATE parameters as arguments: start_date and end_date Table functions
REMOTE FUNCTION A Cloud Function written in one of a variety of languages which can be called like a BigQuery FUNCTION, enabling interaction with external APIs and libraries from BigQuery queries and workflows Work with remote functions
SCHEDULED QUERY An arbitrary SQL statement which can be scheduled to run periodically Scheduling Queries

Naming Conventions

Term
Data Type Description
project_id STRING The globally unique identifier for each project
dataset_name STRING The name for each dataset, unique in each project
dataset_id STRING The globally unique identifier for each dataset, composed as project_id.dataset_name
resource_name STRING The single name for each resource (TABLE, VIEW, FUNCTION, TABLE FUNCTION or PROCEDURE)
resource_id STRING The globally unique identifier for an individual TABLE, VIEW, FUNCTION, TABLE FUNCTION or PROCEDURE, composed as project_id.dataset_name.resource_name
date_id STRING A STRING representantion of a date in the format YYYYMMDD
shard_id STRING A STRING representantion of a table shard date in the format YYYYMMDD
shard_date DATE A DATE representantion of a table shard date
partition_id STRING A STRING representantion of a table partition date in the format YYYYMMDD
partition_date DATE A DATE representantion of a table partition date

Language Types

Language Type
Description Docs
GoogleSQL An ANSI compliant superset of Structured Query Language (SQL) SQL in BigQuery
Procedural Language The core language which enables programmatic execution of arbitrary logic Procedural Language
Data Definition Language Statements which enable creation and modification of BigQuery resources DDL Statements
Data Manipulation Language Statements which enable insertion, deletion and modification of data DML Statements
Data Control Language Statements which enable access control to BigQuery resources DCL Statements