google/bigtable-basics
>- Assists in provisioning instances/tables, designing performant schemas, and querying data in Bigtable. Use when designing Bigtable row keys, configuring column families, writing SQL queries or client library code (Java, Go, Python) for Bigtable, or diagnosing performance/hotspotting issues. Also use when provisioning Bigtable clusters using gcloud or cbt CLIs. Don't use for generic Cloud SQL administration.
npx skills add https://github.com/google/skills --skill bigtable-basics
This skill provides core workflows and guidance for administering and developing
with Google Bigtable.
gcloud for Control Plane operations: Manage Instances,Clusters, App Profiles, Backups and IAM. Create Tables, Logical Views,
Materialized Views and Authorized Views.
cbt for Data Plane operations: Update Tables, Column Families,and reading/writing data.
Row Key design. Always warn about Full Table Scans.
for their superior performance and feature coverage compared to other
languages.
mention Key Visualizer (via Cloud Console) as the primary diagnostic
tool because it provides the most granular view of access patterns across
row keys. This should be followed by the hot-tablets tool and table stats
in gcloud CLI and include-stats=full option under cbt read to diagnose
slow queries.
> [!IMPORTANT] Safety Rule: You MUST obtain explicit user confirmation before
> making non-emulator database changes. You MUST mention this safety requirement
> when providing commands or instructions that modify the database structure or
> data.
Use SQL for complex transforms or aggregations and key-value APIs for simpler
query patterns. *Note: Use exact match, prefix (_key LIKE 'myprefix%'), or
range predicates on _key to avoid expensive unbounded scans. Recommend
explicit row ranges (_key BETWEEN 'start' AND 'end') as a more performant
alternative to prefix matches where possible.*
If expensive scans (either unbounded or prefix or range queries scanning a large
range) are unavoidable due to multiple access patterns that can’t all be
accommodated in a single schema, consider one of these two options:
applications, use continuous materialized views with keys optimized for the
additional access patterns.
model training or analytical read-only tasks, use Bigtable Data Boost
instead.
Use key-value APIs for insert, update, increment and delete operations. SQL API
is read-only.
SQL API doesn't support DDL operations. Table creation, deletion, updates should
be made using gcloud CLI. Logical Views and Continuous Materialized Views are
defined as SQL queries but they must be created using gcloud CLI.
Provisioning instances, clusters, and table schemas.
data via the cbt CLI.
keys and performance with tables and continuous materialized views.
assets.
via SQL and CLI.
high-performance Go/Java/Python code.
data loss.
cbt changes, first check the existing state by listing the table's column families and GC policies before proposing any modifications: cbt ls {table}
If modifications are needed, create the family or update the GC policy:
cbt createfamily {table} {family}
cbt setgcpolicy {table} {family} "maxversions=5 AND maxage=30d"
infrastructure_management.md for
full syntax.
Take google/bigtable-basics from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.