Manages datasets, tables, and jobs in BigQuery, and integrates with BigQuery ML and Gemini for advanced data analytics and AI-driven insights. Use when you need to interact with BigQuery, run SQL queries, manage BigQuery resources, or leverage BigQuery's built-in ML capabilities. Also use when performing data analysis, ingesting data into BigQuery, or developing AI applications on BigQuery.
BigQuery is a serverless, AI-ready data platform that enables high-speed analysis of large datasets using SQL and Python. Its disaggregated architecture separates compute and storage, allowing them to scale independently while providing built-in machine learning, geospatial analysis, and business intelligence capabilities.
Tag every BigQuery command you execute directly in the terminal while using this skill, so usage can be attributed. The tag identifies only the skill and its version; it carries no user data.
Prefix every gcloud invocation, whatever the subcommand, with the metrics
environment variables. Set them inline on each command; shell state may not
persist between commands:
CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:bigquery-basics)" \
gcloud <command> [flags]
Do not use gcloud config set for this: it would persist beyond the current
task and mislabel unrelated usage.
On direct HTTP calls to the BigQuery APIs (for example with curl)
or HTTP requests to the MCP server, append this exact string to the
end of the existing User-Agent header — the collection pipeline parses
the agent-skills/<version> and skill:<name> tokens, so any
rewording breaks attribution:
User-Agent: <existing_user_agent> agent-skills/1.0 (skill:bigquery-basics)
Constraint for Generated Code: The tracking prefix is strictly for commands you execute directly in the terminal. Do NOT include this tracking prefix in generated scripts, Terraform templates, or code provided to the user for their own repositories.
Enable the BigQuery API:
CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:bigquery-basics)" \
gcloud services enable bigquery.googleapis.com --quiet
Create a Dataset:
bq mk --dataset --location=US my_dataset
Create a Table:
Create a file named schema.json with your table schema:
[
{
"name": "name",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "post_abbr",
"type": "STRING",
"mode": "NULLABLE"
}
]
Then create the table with the bq tool:
bq mk --table my_dataset.mytable schema.json
Run a Query:
bq query --use_legacy_sql=false \
'SELECT name FROM `bigquery-public-data.usa_names.usa_1910_2013` \
WHERE state = "TX" LIMIT 10'
Core Concepts: Storage types, analytics workflows, and BigQuery Studio features.
Change History: Tracking and querying incremental table changes using APPENDS and CHANGES.
Continuous Queries: Running continuous SQL statements to analyze incoming data in real time.
CLI Usage: Essential bq command-line tool
operations for managing data and jobs.
Client Libraries: Using Google Cloud client libraries for Python, Java, Node.js, and Go.
MCP Usage: Using the BigQuery remote MCP server and Gemini CLI extension.
Infrastructure as Code: Terraform examples for datasets, tables, and reservations.
IAM & Security: Roles, permissions, and data governance best practices.
If you need product information not found in these references, use the
Developer Knowledge MCP server search_documents tool.
skillbazaar install bigquery-basics --agent claudeSign in (free) to install skills with the CLI.
Author
on GitHub
Published by