Google BigQuery

What is BigQuery?

Querying massive datasets can be time consuming and expensive without the right hardware and infrastructure. Google BigQuery solves this problem by enabling super-fast, SQL-like queries against append-only tables, using the processing power of Google's infrastructure. Simply move your data into BigQuery and let us handle the hard work. You can control access to both the project and your data based on your business needs, such as giving others the ability to view or query your data.

You can access BigQuery by using a web UI or a command-line tool, or by making calls to the BigQuery REST API using a variety of client libraries such as Java, PHP or Python. There are also a variety of third-party tools that you can use to interact with BigQuery, such as visualizing the data or loading the data.

Get started now with creating an app, running a web query or using the command-line tool, or read on for more information about BigQuery fundamentals and how you can work with the product.


BigQuery fundamentals


Projects are top-level containers in Google Cloud Platform. They store information about billing and authorized users, and they contain BigQuery data. Each project has a friendly name and a unique ID.

BigQuery bills on a per-project basis, so it’s usually easiest to create a single project for your company that’s maintained by your billing department. For more information on how to grant access to your project, see Access Control.


Tables contain your data in BigQuery, along with a corresponding table schema that describes field names, types, and other information. BigQuery also supports views, virtual tables defined by a SQL query.

BigQuery creates tables in one of the following ways:


Datasets allow you to organize and control access to your tables. Because tables are contained in datasets, you'll need to create at least one dataset before loading data into BigQuery.

You share BigQuery data with others by setting ACLs on datasets, not on the tables within them. For more information, see Access Control.


Jobs are actions you construct and BigQuery executes on your behalf to load data, export data, query data, or copy data. Since jobs can potentially take a long time to complete, they execute asynchronously and can be polled for their status. BigQuery saves a history of all jobs associated with a project, accessible via the Google Developers Console.

Back to top

Interacting with BigQuery

There are three main ways to interact with BigQuery.

Loading and exporting data

Before you can query any data, you'll need to load it into BigQuery. If you want to get the data back out of BigQuery, you can export the data.

Querying and viewing data

Once you load your data into BigQuery, there are a few ways to query or view the data in your tables:

Querying data

Viewing data

Managing data

In addition to querying and viewing data, you can manage data in BigQuery by using functions that enable the following tasks:

  • Listing projects, jobs, tables and datasets
  • Getting information about jobs, tables and datasets
  • Updating or patching tables and datasets
  • Deleting tables and datasets

For more information, see the API reference.

Back to top