Bigquery Troubleshooting
GoogleOfficialPublished by Google
- Skill
- Workflow
- Cloud and DevOps
- Apache-2.0
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
BigQuery Troubleshooting provides a structured, step-by-step methodology for diagnosing and resolving issues with BigQuery jobs. It focuses on identifying root causes for performance degradation, unexpected cost increases, and system-level bottlenecks. The skill guides users through a diagnostic funnel, from initial symptom identification and baseline scanning to deep-dive analysis of execution graphs, reservation configurations, and resource contention. It is designed to work alongside companion skills for observability and optimization, ensuring a clear separation between incident diagnosis, raw telemetry retrieval, and proactive planning.
What it does
- Diagnoses performance bottlenecks in BigQuery jobs and execution stages.
- Investigates unexpected cost spikes related to on-demand usage, capacity commitments, and storage.
- Provides workflows for auditing reservation changes and autoscaling behavior.
- Analyzes system contention, including slot saturation and noisy neighbor scenarios.
- Guides users through comparative analysis to isolate shifts in performance or cost.
- Ensures proper attribution for all diagnostic commands executed via CLI or API.
When to use it
- When a BigQuery job is failing, running slower than expected, or hanging.
- When you observe an unexplained spike in BigQuery billing or resource consumption.
- When you need to investigate reservation autoscaling or capacity commitment issues.
- When you need to identify the root cause of a performance regression compared to a previous baseline.
- When you need to troubleshoot shuffle spills, join explosions, or data skew in query plans.
Advantages
- Standardizes the troubleshooting process for complex BigQuery environments.
- Prevents diagnostic overhead by using bounded baseline scans before deep-diving.
- Provides clear routing boundaries to avoid mixing incident response with proactive optimization.
- Ensures consistent and accurate usage attribution for all diagnostic operations.
- Facilitates data-driven root cause analysis through comparative metrics.
Usage examples
- “Why is my BigQuery job running so much slower today than it did last week?”
- The agent will initiate a performance diagnostic workflow, comparing the current job's execution statistics against a baseline from the previous week to identify shifts in data volume, slot contention, or configuration.
- “I noticed a massive spike in my BigQuery capacity costs. Can you help me find out why?”
- The agent will execute a 4-step cost diagnostic funnel to determine if the spike was caused by autoscaler thrashing, uncovered baseline penalties, or specific high-consumption queries.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/google/bigquery-troubleshooting/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip bigquery-troubleshooting.zip -d .agents/skills
Documentation by Google
BigQuery Troubleshooting
Attribution
MUST READ: Before executing any gcloud, REST API, or MCP command, you
MUST read Usage Attribution. For commands executed
directly in the terminal (never in generated scripts, Terraform, or user code),
prefix gcloud with
CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:bigquery-troubleshooting)"
and append agent-skills/1.0 (skill:bigquery-troubleshooting) to User-Agent headers.
Prerequisites & Environment Setup
Before running diagnostic queries or investigating incident telemetry:
Google Cloud SDK: Ensure the Google Cloud SDK is installed and configured.
Project Selection: Set the active Google Cloud project:
gcloud config set project {project_id}API Enablement: Ensure BigQuery and Cloud Monitoring APIs are enabled:
gcloud services enable bigquery.googleapis.com monitoring.googleapis.comAuthentication: Authenticate the environment:
CLI commands (
bq show -j):gcloud auth loginSDKs and automated diagnostic scripts:
gcloud auth application-default loginService accounts: Set
GOOGLE_APPLICATION_CREDENTIALS="/path/to/key.json"
Billing & IAM Roles:
Verify an active Google Cloud Billing account is attached to
{project_id}.Ensure appropriate IAM roles:
roles/bigquery.jobUser: Executing diagnostic queries.roles/bigquery.resourceViewerorroles/bigquery.admin: Inspecting reservation and job execution telemetry.roles/monitoring.viewer: Cloud Monitoring metrics.roles/billing.viewer: Cloud Billing reports and cost attribution.
Companion Skills Installation: This skill is part of a 3-pillar operations suite (
bigquery-observability,bigquery-optimization,bigquery-troubleshooting). If any companion skill is not yet installed in your environment, install the full suite:npx skills add google/skills --skill bigquery-observability --skill bigquery-optimization --skill bigquery-troubleshooting(If
bigquery-observabilityis not installed, use the self-contained baseline formulas and query templates provided directly in the reference sections below).
Workflow
Scope & Symptom Identification: Identify the primary symptom, target
project_id,region,reservation_id, orjob_id, and domain (Performance, Compute Cost, or Storage Cost). If the request falls outside incident diagnosis or asks for a sibling domain, follow Routing Boundaries below.Telemetry Tool Selection: Follow the tool-selection guidance in bigquery-observability (
bigquery_observability) to select the appropriate telemetry interface (REST APIbq show --location={location} -j {project_id}:{job_id}for single-job stage bottlenecks vs.INFORMATION_SCHEMAfor system-wide factors). Diagnostic workflows, symptom-to-cause mappings, key tables/fields, CLI triage commands, and remediation levers are fully defined in this skill. For pre-composed SQL query templates and full schema dictionaries, consultbigquery-observability.Open-Ended Triage (Stage 1 Baseline Scan & Conversational Gate): When the user inquiry is open-ended or vague (e.g. "Why is BigQuery slow today?" or "Why did my bill spike?"), execute a bounded high-level baseline scan to isolate the affected domain before drilling into deep-dive diagnostics:
Bounded Initial Scan: Follow the baseline scan guidance in the corresponding domain reference under Domain References. Ensure initial queries are strictly bounded (e.g. 7-day Period-over-Period with partition and job-type filters; for unspecified cost spikes, scan the 3 primary vectors: On-Demand TiB, Capacity slot-hours, and Storage GiB) to keep diagnostic telemetry overhead minimal.
Conversational Gate: Factually summarize high-level baseline findings first and propose 2–3 focused drill-down options rather than dumping downstream sub-vector queries unsolicited.
Domain Deep Dive & Comparative Analysis: Execute the step-by-step diagnostic workflow defined in the corresponding domain reference file listed under Domain References below, then run the corresponding query from bigquery-observability following its
INFORMATION_SCHEMAbest practices to isolate the root cause via comparative analysis against a normal baseline.
Performance Context: The Relativity of "Slow"
Performance is relative. Always approach performance troubleshooting as a comparative exercise: identify a comparable past execution, compare the statistics, and isolate which dimension shifted between a fast baseline and the slow execution:
Data Processed: Data volume increase, partition/cluster pruning changes, data skew, input record amplification.
Underlying Definitions: View changes, schema modifications.
System Contention: Noisy neighbors, saturated capacity (>95% slot utilization), idle slot availability, concurrent query spikes.
Configuration Changes: Slot capacity/autoscale max slots changes, expired capacity commitments, idle slot setting changes, or reservation reassignments.
Cost Context: The 4-Step Diagnostic Funnel
Cost troubleshooting requires tracing physical resource consumption (Slot-Hours, TiB Billed, GiB Stored) rather than fluctuating contract rates:
Gather: Determine scope and pull 7-day PoP (or explicit MoM / 180-day) baseline metrics.
Isolate: Pinpoint whether spend surged from query volume, a single "Bully Query", BQML 50x multipliers, uncovered PAYG baselines, autoscaling bursts, 90-day storage timer resets, or physical Fail-Safe retention drain.
Explain: Correlate with administrative events (
INFORMATION_SCHEMA.RESERVATION_CHANGES,INFORMATION_SCHEMA.CAPACITY_COMMITMENT_CHANGES_BY_PROJECT,INFORMATION_SCHEMA.SCHEMATA_OPTIONS, or actoruser_email/query_hash).Remediate: Deliver actionable levers (partition filter enforcement, query caps, commitment purchases, or Time Travel reduction).
Domain References
Performance Troubleshooting
Resource Contention & Performance Slowness (
references/performance_resource_contention.md): Diagnostic workflows for isolating single-job stage bottlenecks (slot_contention,spill_to_disk), cohort baseline comparisons (normalized_literals), incident window discovery, 1-second reservation slot saturation, timeframe contention comparisons, fleet performance variance, and table-level concurrency.Capacity & Configuration Changes (
references/performance_config_changed.md): Diagnostic workflows for auditing reservationslot_capacityandautoscale.max_slotsedits, tracking active capacity commitment timelines, diagnosing reservation assignment modifications, and evaluating autoscaling headroom saturation.Execution Graph & Query Plan Troubleshooting (
references/query_plan_execution_graph.md): Diagnostic workflows for investigating single-job stage bottlenecks (bq showpoint-lookups), isolating slowest stages (end_ms - start_ms), diagnosing join explosions (records_written >> records_read,high_cardinality_joins), shuffle spills (shuffle_output_bytes_spilled), and partition skew, substep intermediate variable disambiguation ($1,$2), mandatory bytes scanned vs records read corrections, and UI execution graph grounding concepts.
Cost Troubleshooting
On-Demand Compute Costs (
references/cost_compute_ondemand.md): Diagnostic workflows for unpartitioned runaway scans (the "Bully Query"), hidden Row-Level Security (RLS) redaction gaps, BigQuery ML (BQML) 50x model training rate multipliers, and user/service account query quotas.Capacity (Editions) Compute Costs (
references/cost_compute_capacity.md): Diagnostic workflows for uncovered baseline slot penalties (baseline > commitments), reservation baseline reductions triggering autoscale surges (RESERVATION_BASELINE_CHANGED), autoscaler thrashing from batch cron spikes, and serverless Apache Spark stored procedure slot-hours.Storage Footprint & Retention Costs (
references/cost_storage.md): Diagnostic workflows for historical partition 90-day timer resets (the DML trap), unpartitioned table active data traps, physical Time Travel and Fail-Safe churn on daily overwrites, and dropped table Fail-Safe drain periods.
Routing Boundaries
If a user request shifts outside incident diagnosis during troubleshooting, execute the corresponding handoff:
SQL Query Optimizations: When the user asks to optimize the SQL query (e.g., rewriting joins or eliminating
SELECT *), hand off tobigquery-optimization.Raw Telemetry & Schema Retrieval: When the user asks for standalone
INFORMATION_SCHEMAqueries without an active performance regression or incident (e.g. general telemetry queries), hand off tobigquery-observability.Proactive Capacity & Storage Planning: When the user requests future reservation sizing, commitment purchasing, or storage billing model evaluations, hand off to
bigquery-optimization.
Files
- ATTRIBUTION.mdAdded by AutoGineer866 B
- LICENSELicence file added by AutoGineer11.1 KiB
- SKILL.md10.3 KiB
- references/attribution.md1.9 KiB
- references/cost_compute_capacity.md16.2 KiB
- references/cost_compute_ondemand.md16.1 KiB
- references/cost_storage.md17.7 KiB
- references/performance_config_changed.md6.1 KiB
- references/performance_resource_contention.md11.0 KiB
- references/query_plan_execution_graph.md10.0 KiB
references/cost_storage.md
BigQuery Troubleshooting: Storage Footprint & Billing Models
<!-- disableFinding(LINK_RELATIVE_G3DOC) -->
This reference guide provides root-cause mapping and remediation strategies for
BigQuery storage cost increases, dataset footprint growth, and billing model
transitions. It focuses strictly on BigQuery Managed Storage billable usage
(Logical vs. Physical storage billing models, native tables, partitions, Time
Travel, and Fail-Safe; external data sources and Cloud Storage buckets are
excluded). Each section connects the observed symptom to potential root causes
and points to the corresponding query in bigquery-observability.
Table of Contents
1. 4-Step Diagnostic Funnel (Lines 25-101)
2. Diagnostic Workflows by Symptom & Root Cause (Lines 103-244)
Scenario 1: Historical Partition Timer Reset (The DML Trap) (Lines 105-132)
Scenario 2: The Unpartitioned Table Active Trap (Lines 134-157)
Scenario 3: Time Travel & Fail-Safe Churn on Physical Billing (Lines 159-185)
Scenario 4: Deleted Table / Dataset "Phantom Spend" & Long-Term Promotion (Lines 187-226)
Scenario 5: Table Clones and Snapshots Overestimation (Lines 228-244)
3. Execution Limitations & Footguns (Lines 246-278)
4. Telemetry & Data Retrieval Reference (Lines 280-297)
1. 4-Step Diagnostic Funnel
When investigating storage cost questions (e.g., "Why did my storage bill increase?", "Why is storage spend higher than expected?"):
Step 1: Context Resolution & Baseline Scan (Gather)
Scope Resolution: Identify the target
project_id,region, and dataset scope.Time Window & Baseline: Default to a standard 7-day Period-over-Period (PoP) window comparing the last 7 days against the preceding 7 days (
CURRENT_DATE() - 7toCURRENT_DATE() - 14) if unspecified; otherwise evaluate the user's requested timeframe against its corresponding prior baseline period (INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINEretains 180 days).Baseline Scan (Historical Trend vs. Current Snapshot):
Billing Trend & Invoice Audit: Query
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINEas the absolute source of truth for historical 7-day PoP / 30-day billing trends (calculates daily average GiB across Active vs. Long-Term tiers; note that physical Time Travel and Fail-Safe are integrated into total active physical usage).Physical Breakdown Snapshot: Query
INFORMATION_SCHEMA.TABLE_STORAGEfor a real-time point-in-time snapshot providing the detailed breakdown of physical storage components (current_physical_bytes,time_travel_physical_bytes,fail_safe_physical_bytes, anddeletedtable drain).
Zero-Row Test & Opt-In Status Check: If the baseline query returns 0 rows or fails with an enablement error, STOP. Do not compute aggregates over an empty set. Check whether the project has enabled storage collection by checking
enable_info_schema_storageinINFORMATION_SCHEMA.EFFECTIVE_PROJECT_OPTIONS(see Telemetry & Data Retrieval Reference below for schema and field definitions):If Enabled (
option_value = 'true'): Opt-in is active. If 0 rows returned fromINFORMATION_SCHEMA.TABLE_STORAGE, verify the target region and confirm that datasets exist in that location.If Not Enabled (0 rows returned or
option_value != 'true'): Storage metrics collection is disabled. Inform the user to enable it by setting the DDL optionregion-{location}.enable_info_schema_storage = TRUE(viaALTER PROJECTorALTER ORGANIZATION).Zero-Opt-In Fallback: Because full historical
INFORMATION_SCHEMA.TABLE_STORAGEdata takes ~24 hours to populate post-enablement, conduct immediate triage usingINFORMATION_SCHEMA.PARTITIONSandINFORMATION_SCHEMA.SCHEMATA_OPTIONS(which report partition byte sizes and dataset billing models without requiringenable_info_schema_storageopt-in).
Report Factually: State the baseline vs. current storage volume and percentage growth before diagnosing root causes.
Step 2: Vector Decomposition & Anomaly Isolation (Isolate)
Determine if growth stems from:
Active Logical Growth: Mature data failing to reach 90 unmutated days (unpartitioned table trap or unscoped DML timer resets).
Physical Retention Churn: Time Travel and Fail-Safe blocks accumulating from daily
WRITE_TRUNCATEor batch overwrites.Dropped Table Fail-Safe Drain: Deleted tables continuing to incur physical Fail-Safe charges during the 7-day drain period.
Step 3: Event & Configuration Correlation (Explain Root Cause)
Correlate the isolated sub-vector with lifecycle and DDL events:
Query
INFORMATION_SCHEMA.SCHEMATA_OPTIONSfor billing model switches (betweenLOGICALandPHYSICAL) or TTL changes.Query
INFORMATION_SCHEMA.PARTITIONSfor recentlast_modified_timeupdates on historical partitions.Query
INFORMATION_SCHEMA.TABLE_STORAGEwithWHERE deleted = TRUEto inspect deleted tables actively draining Fail-Safe bytes.
Step 4: Actionable Remediation & Customer Levers (Remediate)
Deliver concrete, immediate mitigation levers (e.g. reducing Time Travel to 48 hours, partitioning unpartitioned tables, isolating mutable columns, or switching billing models) as detailed in the matching scenario below.
2. Diagnostic Workflows by Symptom & Root Cause
Scenario 1: Historical Partition Timer Reset (The DML Trap)
When to Use / Symptoms: An abrupt doubling of storage spend on historical tables with zero data volume additions.
Potential Root Causes: BigQuery automatically discounts storage by 50% (Long-Term pricing) when a partition has not been modified for 90 consecutive days. If an unscoped
UPDATE,DELETE, orMERGEquery touches even a single row in an old partition, that partition'slast_modified_timeupdates to current timestamp, instantly resetting the 90-day timer back to day zero and reverting to full-price Active storage.Key Telemetry & Tables:
Table:
INFORMATION_SCHEMA.PARTITIONS.Filters:
table_name = 'TARGET_TABLE',last_modified_time >= TIMESTAMP_SUB(...).Key Fields:
partition_id,last_modified_time,total_logical_bytes,storage_tier(ACTIVE,LONG_TERM).
Diagnostic Procedure & Telemetry: Inspect
INFORMATION_SCHEMA.PARTITIONSfor partitions older than 90 days wherelast_modified_timewas updated within the last 7 days (following guidance in Telemetry & Data Retrieval Reference below). Sort bytotal_logical_bytesdescending to isolate high-impact tables.Remediation & Actions:
Add partition pruning predicates (e.g.,
WHERE _PARTITIONDATE >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)) to all recurring ETL pipelines.Isolate frequently mutated columns (e.g.,
status,updated_at) into a separate unpartitioned lookup table so historical fact partitions remain unmutated.
Scenario 2: The Unpartitioned Table Active Trap
When to Use / Symptoms: Multi-year-old historical datasets remain billed at 100% Active rates with 0% Long-Term discount.
Potential Root Causes: Unpartitioned tables track a single table-level
last_modified_time. When daily ETL appends or inserts new rows, BigQuery updates the timestamp for the entire table. As a result, no historical data ever reaches 90 unmutated days.Key Telemetry & Tables:
Table:
INFORMATION_SCHEMA.TABLE_STORAGE.Filters:
creation_time < TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 90 DAY).Key Fields:
table_name,active_logical_bytes,long_term_logical_bytes.
Diagnostic Procedure & Telemetry: Inspect
INFORMATION_SCHEMA.TABLE_STORAGEfor mature tables wherecreation_timeis >90 days old (following guidance in Telemetry & Data Retrieval Reference below). Flag tables wherelong_term_logical_bytes = 0andactive_logical_bytes > 0.Remediation & Actions:
Partition the table by ingestion time or date/timestamp (
CREATE TABLE ... PARTITION BY DATE(event_timestamp)).Once partitioned, all partitions older than 90 days immediately drop to the 50% discounted Long-Term rate.
Scenario 3: Time Travel & Fail-Safe Churn on Physical Billing
When to Use / Symptoms: Physical storage costs are significantly higher than logical storage despite good data compression.
Potential Root Causes: Under Physical storage billing, billable storage includes active data plus Time Travel (1–7 days) and Fail-Safe (7 days non-configurable). If the workload runs daily
WRITE_TRUNCATE,CREATE OR REPLACE TABLE, or heavy batch updates, replaced physical blocks accumulate in Time Travel and Fail-Safe billed at active physical rates.Key Telemetry & Tables:
Table:
INFORMATION_SCHEMA.TABLE_STORAGE.Key Fields:
active_physical_bytes,time_travel_physical_bytes,fail_safe_physical_bytes.
Diagnostic Procedure & Telemetry: See Telemetry & Data Retrieval Reference below to compare active physical bytes against total restorable churn (
time_travel_physical_bytes + fail_safe_physical_bytes) and flag datasets where the churn ratio(time_travel + fail_safe) / activeexceeds 1.0.Remediation & Actions:
Reduce dataset Time Travel to 2 days (
ALTER SCHEMA {dataset_id} SET OPTIONS (max_time_travel_hours = 48);).Avoid full-table truncates; use partition-level drops (
DROP PARTITION) or incremental merges.If churn remains >1.0 and compression is below 2x, switch the dataset back to
LOGICALbilling in the Cloud Console Dataset Details Page (after the 14-day lock-in expires).
Scenario 4: Deleted Table / Dataset "Phantom Spend" & Long-Term Promotion
When to Use / Symptoms: A user deletes a large table or dataset in a physical storage billing dataset, but storage charges continue or even increase on the Cloud Billing invoice.
Potential Root Causes:
Time Travel & Fail-Safe Retention: In physical billing, deleted data is retained for the duration of the configured Time Travel window (2–7 days) plus an additional 7 days for Fail-Safe recovery. During this entire retention window, deleted blocks contribute to billable active physical storage even though the table no longer appears in the console or
INFORMATION_SCHEMA.TABLE_STORAGE.Long-Term to Active Promotion: If the deleted data was in long-term physical storage, deletion causes this data to move into active physical storage during the Time Travel and Fail-Safe windows. Because active physical storage costs approximately 2 times more than long-term physical storage, deleting a dataset or table in physical billing model can cause a temporary spike in daily storage charges.
Logical Billing Contrast: Under logical storage billing, dropped tables never incur charges for Time Travel or Fail-Safe; billable logical storage drops to 0 immediately upon deletion.
Key Telemetry & Tables:
Tables:
INFORMATION_SCHEMA.SCHEMATA_OPTIONS,INFORMATION_SCHEMA.TABLE_STORAGE.Filters:
deleted = TRUE.Key Fields:
table_name,table_deletion_time,fail_safe_physical_bytes,time_travel_physical_bytes.
Diagnostic Procedure & Telemetry: Check
INFORMATION_SCHEMA.SCHEMATA_OPTIONSforstorage_billing_model. IfPHYSICAL, queryINFORMATION_SCHEMA.TABLE_STORAGEwithWHERE deleted = TRUEto view all deleted tables currently draining Time Travel and Fail-Safe bytes (see Telemetry & Data Retrieval Reference below). QueryINFORMATION_SCHEMA.JOBSwithstatement_type IN ('DROP_TABLE', 'DROP_SCHEMA')to confirm drop execution timestamp and actor.Remediation & Actions:
Explain the 9–14 day drain window factually to the user; charges will terminate once the Time Travel plus 7-day Fail-Safe window elapses.
To minimize deletion costs for physical billing model datasets in the future, lower the dataset Time Travel window to 2 days (
max_time_travel_hours = 48) before deleting large tables.
Scenario 5: Table Clones and Snapshots Overestimation
When to Use / Symptoms: Raw table size queries report massive storage volumes that do not match the lower billed amount on the invoice.
Potential Root Causes: Table clones and snapshots report storage bytes equal to the full base table size in
INFORMATION_SCHEMA.TABLE_STORAGE. However, BigQuery only bills for modified or added delta blocks.Key Telemetry & Tables:
Tables:
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE,INFORMATION_SCHEMA.TABLE_SNAPSHOTS.Key Fields:
billable_total_logical_usage,base_table_name.
Diagnostic Procedure & Telemetry: See Telemetry & Data Retrieval Reference below to query true billed storage deltas in
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE, and checkINFORMATION_SCHEMA.TABLE_SNAPSHOTSto verify base table lineage.Remediation & Actions:
Reassure the customer that unmutated cloned blocks are free of charge.
3. Execution Limitations & Footguns
Timeline View Delay (48–72h):
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINEhas a 48–72 hour settlement lag. UseINFORMATION_SCHEMA.TABLE_STORAGEfor real-time investigation, and useINFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINEfor historical 30-day billing reconciliation (ignoring the last 3 days).14-Day Cooldown (Hard Lock-in): Once a dataset's storage billing model is changed between
LOGICALandPHYSICAL, it cannot be changed again for 14 days. Always verify compression ratios and churn rates over a full 7-day cycle before switching.Opt-In & Access Requirements:
INFORMATION_SCHEMA.TABLE_STORAGEviews require explicit opt-in (ALTER PROJECT `{project_id}` SET OPTIONS (`region-{region}.enable_info_schema_storage` = TRUE)) on non-grandfathered projects/orgs androles/bigquery.adminorroles/bigquery.resourceAdminIAM permissions (bigquery.config.update). Historical data takes ~24 hours to populate post-enablement. For immediate triage without waiting for backfill, useINFORMATION_SCHEMA.PARTITIONSandINFORMATION_SCHEMA.SCHEMATA_OPTIONS, which do not require opt-in.BigLake Managed Storage: BigLake Apache Iceberg table metadata appears in
INFORMATION_SCHEMA.TABLE_STORAGEwithtable_type = 'BASE TABLE', but actual file storage resides in customer Cloud Storage buckets and is excluded from BigQuery billable storage usage. To strictly isolate native BigQuery billable storage, join withINFORMATION_SCHEMA.TABLESand filterWHERE managed_table_type IS NULL OR managed_table_type = 'NATIVE'.Monthly Proration & Short Month Effect (February Daily Spikes): BigQuery storage is priced at a fixed monthly rate per GiB. Google Cloud Billing calculates daily charges by prorating the monthly rate over the exact number of days in that calendar month (
daily_rate = monthly_rate / days_in_month). For constant storage volume, daily billed spend appears ~10.7% higher in a 28-day February than in 31-day months. Always inspect underlying storage byte volume inINFORMATION_SCHEMAbefore diagnosing an apparent daily cost jump.
4. Telemetry & Data Retrieval Reference
If the bigquery-observability skill is available in your workspace, refer to
its shared telemetry references for canonical query templates and schema
dictionaries. All essential diagnostic workflows, formulas, and remediation
levers are self-contained within this guide.
Table, Storage & Dataset Schemas: See the
bigquery-observabilityskill (references/schema_storage.md, section "3. Storage Footprint, Partitions & Table Metadata Views" and section "4. Datasets, Replication & Sharing Views") forINFORMATION_SCHEMA.TABLE_STORAGE,INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE,INFORMATION_SCHEMA.PARTITIONS, andINFORMATION_SCHEMA.SCHEMATA_OPTIONSschemas.Project Option Schemas: See the
bigquery-observabilityskill (references/schema_others.md, section "10. Project & Organization Configuration Views") forINFORMATION_SCHEMA.EFFECTIVE_PROJECT_OPTIONSfield definitions.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs a command-line tool, Needs Node.js
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- Publisher
- Google (Official)
- Source
- google/skills · skills/cloud/bigquery-troubleshooting · commit 2194d3b
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Google or Google.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download bigquery-troubleshooting.zip