| bq_create_table |
function |
py |
infra |
1.0.0 |
impure |
def bq_create_table(client: BQClient, dataset_id: str, table_id: str, schema: list[dict], partitioning: dict | None = None, clustering: list[str] | None = None, description: str = '', labels: dict | None = None) -> dict |
Crea una tabla en BigQuery con schema, particionamiento opcional y clustering. Usa client._client.create_table() del SDK oficial. |
| bigquery |
| gcp |
| table |
| create |
| google-cloud |
| python |
|
|
|
|
false |
error_go_core |
|
| name |
desc |
| client |
cliente autenticado BQClient obtenido con bq_auth |
|
| name |
desc |
| dataset_id |
ID del dataset de BigQuery donde crear la tabla |
|
| name |
desc |
| table_id |
nombre (ID) de la tabla a crear |
|
| name |
desc |
| schema |
lista de dicts con definicion de columnas: [{name, type, mode, description}]. Tipos: STRING, INTEGER, FLOAT, BOOLEAN, DATE, TIMESTAMP, RECORD, etc. |
|
| name |
desc |
| partitioning |
dict opcional con tipo y campo de particion: {type: DAY|MONTH|YEAR|HOUR, field: nombre_col}. None = sin particion |
|
| name |
desc |
| clustering |
lista de hasta 4 columnas para clustering (ordenacion fisica). None = sin clustering |
|
| name |
desc |
| description |
descripcion legible de la tabla (vacio = sin descripcion) |
|
| name |
desc |
| labels |
etiquetas clave-valor para la tabla, ej: {env: prod, team: data} |
|
|
dict con metadata de la tabla creada: table_id, dataset_id, project, full_id, schema, num_rows, num_bytes, created, modified, type, partitioning, clustering, description, labels |
false |
|
|
python/functions/bigquery/tables.py |