En esta página, se explica cómo etiquetar los recursos de BigQuery.
Agrega etiquetas de conjunto de datos
Una etiqueta se puede agregar a un conjunto de datos de BigQuery cuando se crea mediante el comando bq
de la herramienta de línea de comandos de bq mk
o mediante una llamada al método datasets.insert
de la API. En la actualidad, no puedes agregar una etiqueta a un conjunto de datos cuando este se crea con Cloud Console.
Esta página explica cómo agregar una etiqueta a un conjunto de datos después de crearla. Para obtener más información sobre cómo agregar una etiqueta cuando creas un conjunto de datos, consulta Crea un conjunto de datos.
Se puede agregar una etiqueta después de la creación de un conjunto de datos de las formas siguientes:
- Usa Cloud Console.
- Usar el comando
bq update
de la herramienta de línea de comandos debq
- Llamar al método de la API
datasets.patch
- Usar bibliotecas cliente
Cuando agregas una etiqueta a un conjunto de datos, no se propaga a los recursos dentro de este. Las tablas ni las vistas heredan las etiquetas del conjunto de datos. Además, una etiqueta se incluye en tus datos de facturación de almacenamiento cuando la agregas a un conjunto de datos, pero no verás etiquetas de conjuntos de datos en los datos de facturación relacionados con el trabajo.
Permisos necesarios
Como mínimo, para poder agregar una etiqueta a un conjunto de datos existente, debes tener permisos bigquery.datasets.update
. Las siguientes funciones predefinidas de IAM incluyen los permisos bigquery.datasets.update
:
bigquery.dataOwner
bigquery.admin
Además, si un usuario tiene permisos bigquery.datasets.create
, se le otorga el acceso bigquery.dataOwner
cuando crea un conjunto de datos.
El acceso bigquery.dataOwner
le da al usuario la capacidad de agregar etiquetas a sus conjuntos de datos.
Para obtener más información sobre las funciones y los permisos de IAM en BigQuery, consulta Funciones y permisos predefinidos.
Agrega una etiqueta a un conjunto de datos
Sigue estos pasos para agregar una etiqueta a un conjunto de datos después de crearla:
Console
En Cloud Console, selecciona el conjunto de datos.
En la página de detalles del conjunto de datos, haz clic en el ícono de lápiz a la derecha de Etiquetas (Labels).
En el diálogo Editar etiquetas, haz lo siguiente:
- Haz clic en Agregar etiqueta (Add label).
- Ingresa la clave y el valor para agregar una etiqueta. Para aplicar etiquetas adicionales, haz clic en Agregar etiqueta (Add label). Se puede usar cada clave solo una vez por conjunto de datos, pero puedes usar la misma clave en otros conjuntos de datos del mismo proyecto.
- Modifica las claves o valores existentes para actualizar una etiqueta.
- Haz clic en Actualizar para guardar los cambios.
bq
Para agregar una etiqueta a un conjunto de datos existente, envía el comando bq update
con la marca set_label
. Repite la marca para agregar varias etiquetas.
Si el conjunto de datos está en un proyecto que no es el predeterminado, agrega el ID del proyecto al conjunto de datos en el siguiente formato: PROJECT_ID:DATASET
.
bq update --set_label KEY:VALUE PROJECT_ID:DATASET
Reemplaza lo siguiente:
KEY:VALUE
: Es un par clave-valor para una etiqueta que deseas agregar. La clave debe ser única.PROJECT_ID
: Es el ID de tu proyecto.DATASET
: Es el conjunto de datos que deseas etiquetar.
Ejemplos:
Si deseas agregar una etiqueta para realizar un seguimiento de los departamentos, ingresa el comando bq update
y especifica department
como la clave de la etiqueta. Por ejemplo, para agregar una etiqueta department:shipping
a mydataset
en tu proyecto predeterminado, ingresa lo siguiente:
bq update --set_label department:shipping mydataset
Si deseas agregar varias etiquetas a un conjunto de datos, repite la marca set_label
y especifica una clave única para cada etiqueta. Por ejemplo, a fin de agregar una etiqueta department:shipping
y una etiqueta cost_center:logistics
a mydataset
en tu proyecto predeterminado, ingresa lo siguiente:
bq update \
--set_label department:shipping \
--set_label cost_center:logistics \
mydataset
API
Para agregar una etiqueta a un conjunto de datos existente, llama al método datasets.patch
y propaga la propiedad labels
para el recurso de conjunto de datos.
Debido a que, con el método datasets.update
se reemplaza todo el recurso del conjunto de datos, es preferible usar el método datasets.patch
.
Go
Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Go de BigQuery.
Java
En este ejemplo, se usa la biblioteca cliente HTTP de Google para Java a fin de enviar una solicitud a la API de BigQuery.
Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de BigQuery para Java.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración para Node.js que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la Documentación de referencia de la API de Node.js de BigQuery.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración para Python incluidas en la Guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Python de BigQuery.
Agrega etiquetas de tabla y vista
Se puede agregar una etiqueta a una tabla o vista cuando se crea mediante alguna de estas acciones:
- Usar el comando
bq mk
de la herramienta de línea de comandos debq
- Llamar al método de la API
tables.insert
Esta página explica cómo agregar una etiqueta a una tabla o vista existente. Para obtener más información sobre cómo agregar una etiqueta cuando creas una tabla o vista, consulta cómo crear una tabla o crear una vista.
Se puede agregar una etiqueta cuando se crea una tabla o vista mediante estas acciones:
- Usa Cloud Console.
- Usar el comando
bq update
de la herramienta de línea de comandos debq
- Llamar al método de la API
tables.patch
- Usar bibliotecas cliente
Debido a que las vistas se tratan como recursos de tabla, debes usar el método tables.patch
para modificar las vistas y las tablas.
Permisos necesarios
Como mínimo, para agregar una etiqueta a una tabla o vista existente, debes tener los permisos bigquery.tables.update
y bigquery.tables.get
. Las siguientes funciones predefinidas de IAM incluyen los permisos bigquery.tables.update
y bigquery.tables.get
:
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
Además, si un usuario tiene permisos bigquery.datasets.create
, se le otorga el acceso bigquery.dataOwner
cuando crea un conjunto de datos.
El acceso de bigquery.dataOwner
le da al usuario la capacidad de agregar etiquetas a las tablas y vistas de sus conjuntos de datos.
Para obtener más información sobre las funciones y los permisos de IAM en BigQuery, consulta Funciones y permisos predefinidos.
Agrega una etiqueta a una tabla o vista
Sigue estos pasos para agregar una etiqueta a una tabla o vista existente:
Console
En Cloud Console, selecciona la tabla o vista.
Haz clic en la pestaña Detalles (Details).
Haz clic en el ícono de lápiz a la derecha de Etiquetas (Labels).
En el diálogo Editar etiquetas, haz lo siguiente:
- Haz clic en Agregar etiqueta (Add label).
- Ingresa la clave y el valor para agregar una etiqueta. Para aplicar etiquetas adicionales, haz clic en Agregar etiqueta (Add label). Se puede usar cada clave solo una vez por conjunto de datos, pero puedes usar la misma clave en otros conjuntos de datos del mismo proyecto.
- Modifica las claves o valores existentes para actualizar una etiqueta.
- Haz clic en Actualizar para guardar los cambios.
SQL
Las declaraciones del lenguaje de definición de datos (DDL) te permiten crear y modificar tablas y vistas con la sintaxis de consulta de SQL estándar.
Obtén más información en Usa instrucciones del lenguaje de definición de datos.
Para agregar una etiqueta mediante una instrucción DDL en Cloud Console, sigue estos pasos:
Haz clic en Redactar consulta nueva.
Escribe tu declaración de DDL en el área de texto Editor de consultas.
ALTER TABLE mydataset.mytable SET OPTIONS ( labels=[("department", "shipping"), ("cost_center", "logistics")] )
Haga clic en Run query.
bq
Para agregar una etiqueta a una tabla o vista existente, envía el comando bq update
con la marca set_label
. Repite la marca para agregar varias etiquetas.
Si la tabla o la vista están en un proyecto que no es el predeterminado, agrega el ID del proyecto al conjunto de datos en el siguiente formato: project_id:dataset
.
bq update \ --set_label KEY:VALUE \ PROJECT_ID:DATASET.TABLE_OR_VIEW
Reemplaza lo siguiente:
KEY:VALUE
: Es un par clave-valor para una etiqueta que deseas agregar. La clave debe ser única.PROJECT_ID
: Es el ID de tu proyecto.DATASET
: Es el conjunto de datos que contiene la tabla o vista que deseas etiquetar.TABLE_OR_VIEW
: Es el nombre de la tabla o vista que deseas etiquetar.
Ejemplos:
Para agregar una etiqueta de tabla que rastrea los departamentos, ingresa el comando bq update
y especifica department
como la clave de etiqueta. Por ejemplo, para agregar una etiqueta department:shipping
a mytable
en tu proyecto predeterminado, ingresa lo siguiente:
bq update --set_label department:shipping mydataset.mytable
Para agregar una etiqueta de vista que rastrea los departamentos, ingresa el comando bq update
y especifica department
como la clave de etiqueta. Por ejemplo, para agregar una etiqueta department:shipping
a myview
en tu proyecto predeterminado, ingresa lo siguiente:
bq update --set_label department:shipping mydataset.myview
Para agregar varias etiquetas a una tabla o vista, repite la marca set_label
y especifica una clave exclusiva para cada etiqueta. Por ejemplo, para agregar una etiqueta department:shipping
y cost_center:logistics
a mytable
en tu proyecto predeterminado, ingresa lo siguiente:
bq update \
--set_label department:shipping \
--set_label cost_center:logistics \
mydataset.mytable
API
Para agregar una etiqueta a una tabla o vista existente, llama al método tables.patch
y propaga la propiedad labels
para el recurso de tabla.
Debido a que las vistas se tratan como recursos de tabla, debes usar el método tables.patch
para modificar las vistas y las tablas.
Debido a que, con el método tables.update
se reemplaza todo el recurso del conjunto de datos, es preferible usar el método tables.patch
.
Go
Antes de probar este ejemplo, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Go de BigQuery.
Java
En este ejemplo, se usa la biblioteca cliente HTTP de Google para Java a fin de enviar una solicitud a la API de BigQuery.
Antes de probar este ejemplo, sigue las instrucciones de configuración para Java que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de BigQuery para Java.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración para Node.js que se encuentran en la guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Para obtener más información, consulta la Documentación de referencia de la API de Node.js de BigQuery.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración para Python incluidas en la Guía de inicio rápido de BigQuery sobre cómo usar bibliotecas cliente. Si deseas obtener más información, consulta la documentación de referencia de la API de Python de BigQuery.
Agrega etiquetas de trabajo
Se pueden agregar etiquetas a los trabajos de consulta con la marca --label
en la herramienta de línea de comandos de bq
. La herramienta bq
admite que se agreguen etiquetas solo a trabajos de consulta.
También puedes agregar una etiqueta a un trabajo cuando se envía a través de la API si especificas la propiedad labels
en la configuración del trabajo cuando llamas al método jobs.insert
. La API se puede usar para agregar etiquetas a cualquier tipo de trabajo.
No puedes agregar ni actualizar etiquetas en trabajos pendientes, en ejecución o completados.
Cuando agregas una etiqueta a un trabajo, la etiqueta se incluye en tus datos de facturación.
Permisos necesarios
No se requieren permisos especiales para agregar una etiqueta a un trabajo. Si tienes permisos de bigquery.jobs.create
, puedes agregar una etiqueta a tu trabajo cuando lo envíes.
Para ejecutar un trabajo, debes tener permisos bigquery.jobs.create
.
Los permisos bigquery.jobs.create
son obligatorios para los trabajos que BigQuery crea de forma automática y los trabajos que ejecutas de manera programática.
Las siguientes funciones predefinidas de IAM incluyen los permisos bigquery.jobs.create
:
bigquery.user
bigquery.jobUser
bigquery.admin
Para obtener más información sobre las funciones y los permisos de IAM en BigQuery, consulta Funciones y permisos predefinidos.
Agrega una etiqueta a un trabajo
Para agregar una etiqueta a un trabajo, ten en cuenta la información siguiente:
Console
Cloud Console no admite el uso de etiquetas en los trabajos.
bq
Para agregar una etiqueta a un trabajo de consulta, envía el comando bq query
con la marca --label
. Repite la marca para agregar varias etiquetas. La marca --nouse_legacy_sql
indica que tu consulta está en la sintaxis de SQL estándar.
bq query --label KEY:VALUE --nouse_legacy_sql 'QUERY'
Reemplaza lo siguiente:
KEY:VALUE
: Es un par clave-valor para una etiqueta que deseas agregar al trabajo de consulta. La clave debe ser única. Para agregar varias etiquetas a un trabajo de consulta, repite la marca--label
y especifica una clave única para cada etiqueta.QUERY
: Es una consulta de SQL estándar válida.
Ejemplos:
Para agregar una etiqueta a un trabajo de consulta, ingresa lo siguiente:
bq query \
--label department:shipping \
--nouse_legacy_sql \
'SELECT
column1, column2
FROM
`mydataset.mytable`'
Para agregar varias etiquetas a un trabajo de consulta, repite la marca --label
y especifica una clave única para cada etiqueta. Por ejemplo, para agregar una etiqueta department:shipping
y una etiqueta cost_center:logistics
a un trabajo de consulta, ingresa lo siguiente:
bq query \
--label department:shipping \
--label cost_center:logistics \
--nouse_legacy_sql \
'SELECT
column1, column2
FROM
`mydataset.mytable`'
API
Si deseas agregar una etiqueta a un trabajo, llama al método jobs.insert
y propaga la propiedad labels
para la configuración del trabajo.
Puedes usar la API para agregar etiquetas a cualquier tipo de trabajo.
Agrega un rótulo identificador
Una etiqueta que tiene una clave con un valor vacío se usa como un rótulo identificador. Puedes crear una etiqueta nueva sin valor o convertir una que ya exista en una etiqueta.
Los rótulos identificadores pueden ser útiles en situaciones en las que etiquetes un recurso, pero que no sea necesario el formato clave-valor. Por ejemplo, si tienes una tabla que contiene datos de prueba que usan varios grupos (asistencia, desarrollo, etc.), puedes agregar un rótulo identificador test_data
a la tabla para identificarla.
Para agregar un rótulo identificador, sigue estos pasos:
Console
En Cloud Console, selecciona el recurso adecuado (un conjunto de datos, una tabla o una vista).
En el caso de los conjuntos de datos, la página de detalles de conjuntos de datos se abre de forma automática. Para las tablas y vistas, haz clic en Detalles (Details) a fin de abrir la página de detalles.
En la página de detalles, haz clic en el ícono de lápiz a la derecha de Labels (Etiquetas).
En el diálogo Editar etiquetas, haz lo siguiente:
- Haz clic en Agregar etiqueta (Add label).
- Ingresa una clave nueva y deja el valor en blanco. Para aplicar rótulos identificadores adicionales, haz clic en Agregar etiqueta y repite el proceso.
- Haz clic en Actualizar para guardar los cambios.
SQL
Las declaraciones del lenguaje de definición de datos (DDL) te permiten crear y modificar tablas y vistas con la sintaxis de consulta de SQL estándar.
Obtén más información en Usa instrucciones del lenguaje de definición de datos.
Para agregar un rótulo identificador mediante una instrucción DDL en Cloud Console, sigue estos pasos:
Haz clic en Redactar consulta nueva.
Escribe tu declaración de DDL en el área de texto Editor de consultas.
ALTER TABLE mydataset.mytable SET OPTIONS ( labels=[("tag1", ""), ("tag2", "")] )
Haga clic en Run query.
bq
Para agregar una etiqueta a un recurso existente, usa el comando bq update
con la marca set_label
. Especifica la clave, seguida de dos puntos, pero no especifiques el valor.
bq update --set_label KEY: RESOURCE_ID
Reemplaza lo siguiente:
KEY:
: Es la clave de etiqueta que deseas usar como etiqueta.RESOURCE_ID
: Es un nombre de conjunto de datos, tabla o vista válido. Si el recurso está en un proyecto que no es el predeterminado, debes agregar el ID del proyecto al comando con el formato siguiente:PROJECT_ID:DATASET
.
Ejemplos:
Ingresa el comando siguiente a fin de crear un rótulo identificador test_data
para mydataset.mytable
. mydataset
está en tu proyecto predeterminado.
bq update --set_label test_data: mydataset
API
Llama al método datasets.patch
o tables.patch
y agrega etiquetas con el valor de string vacía (""
) en el recurso de conjunto de datos o el recurso de tabla.
Puedes convertir las etiquetas personalizadas existentes en rótulos identificadores si reemplazas sus valores por la string vacía.
Debido a que las vistas se tratan como recursos de tabla, debes usar el método tables.patch
para modificar las vistas y las tablas. Además, debido a que con el método tables.update
se reemplaza todo el recurso del conjunto de datos, es preferible usar el método tables.patch
.
¿Qué sigue?
- Obtén más información sobre cómo ver etiquetas en los recursos de BigQuery.
- Aprende a actualizar etiquetas de los recursos de BigQuery.
- Aprende a filtrar recursos mediante etiquetas.
- Aprende a borrar etiquetas de los recursos de BigQuery.
- Aprende a usar etiquetas en la documentación de Resource Manager.