Herramienta: get_dataset_info
Obtén información de metadatos sobre un conjunto de datos de BigQuery.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP get_dataset_info.
| Solicitud de cURL |
|---|
curl --location 'https://bigquery.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_dataset_info", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Es una solicitud de un conjunto de datos.
| Representación JSON |
|---|
{ "projectId": string, "datasetId": string } |
| Campos | |
|---|---|
projectId |
Obligatorio. Es el ID del proyecto de la solicitud del conjunto de datos. |
datasetId |
Obligatorio. Es el ID del conjunto de datos de la solicitud del conjunto de datos. |
Esquema de salida
Representa un conjunto de datos de BigQuery.
| Representación JSON |
|---|
{ "kind": string, "etag": string, "id": string, "selfLink": string, "datasetReference": { object ( |
| Campos | |
|---|---|
kind |
Solo salida. El tipo del recurso. |
etag |
Solo salida. Es un hash del recurso. |
id |
Solo salida. Nombre único y completamente calificado del conjunto de datos en el formato projectId:datasetId. El nombre del conjunto de datos sin el nombre del proyecto se proporciona en el campo datasetId. Cuando crees un conjunto de datos nuevo, deja este campo en blanco y, en su lugar, especifica el campo datasetId. |
selfLink |
Solo salida. Es una URL que se puede usar para volver a acceder al recurso. Puedes usar esta URL en las solicitudes Get o Update al recurso. |
datasetReference |
Obligatorio. Es una referencia que identifica el conjunto de datos. |
friendlyName |
Es opcional. Es un nombre descriptivo para el conjunto de datos. |
description |
Opcional. Una descripción fácil de usar del conjunto de datos. |
defaultTableExpirationMs |
Es opcional. Es el ciclo de vida predeterminado de todas las tablas del conjunto de datos, en milisegundos. El valor mínimo de vida útil es de 3,600,000 milisegundos (una hora). Para borrar un vencimiento predeterminado existente con una solicitud PATCH, establece el valor en 0. Una vez que se establece esta propiedad, todas las tablas recién creadas en el conjunto de datos tendrán una propiedad expirationTime establecida en la hora de creación más el valor de esta propiedad, y cambiar el valor solo afectará a las tablas nuevas, no a las existentes. Cuando se alcance el valor de expirationTime para una tabla determinada, esta se borrará automáticamente. Si se modifica o quita el valor de expirationTime de una tabla antes de que venza, o si proporcionas un valor de expirationTime explícito cuando creas una tabla, ese valor tiene prioridad sobre el tiempo de vencimiento predeterminado que indica esta propiedad. |
defaultPartitionExpirationMs |
Es el vencimiento predeterminado de la partición, expresado en milisegundos. Cuando se crean tablas particionadas por tiempo nuevas en un conjunto de datos en el que se establece esta propiedad, la tabla heredará este valor, que se propagará como la propiedad Cuando se crea una tabla particionada, si se configura |
labels |
Las etiquetas asociadas a este conjunto de datos. Puedes usarlas para organizar y agrupar tus conjuntos de datos. Puedes configurar esta propiedad cuando insertas o actualizas un conjunto de datos. Consulta Cómo crear y actualizar etiquetas de conjuntos de datos para obtener más información. Un objeto que contiene una lista de pares |
access[] |
Es opcional. Es un array de objetos que definen el acceso al conjunto de datos para una o más entidades. Puedes configurar esta propiedad cuando insertas o actualizas un conjunto de datos para controlar quién puede acceder a los datos. Si no se especifica en el momento de la creación del conjunto de datos, BigQuery agrega acceso predeterminado al conjunto de datos para las siguientes entidades: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [correo electrónico del creador del conjunto de datos]; access.role: OWNER. Si aplicas un parche a un conjunto de datos, este campo se reemplaza por el campo de acceso del conjunto de datos parcheado. Para agregar entidades, debes proporcionar todo el array de acceso existente, además de las entidades nuevas que quieras agregar. |
creationTime |
Solo salida. Es la fecha y hora en que se creó este conjunto de datos, en milisegundos desde la época. |
lastModifiedTime |
Solo salida. Fecha en la que se modificó este conjunto de datos por última vez, en milisegundos desde el ciclo de entrenamiento. |
location |
La ubicación geográfica donde debe residir el conjunto de datos. Consulta https://cloud.google.com/bigquery/docs/locations para conocer las ubicaciones compatibles. |
defaultEncryptionConfiguration |
Es la clave de encriptación predeterminada para todas las tablas del conjunto de datos. Después de configurar esta propiedad, la clave de encriptación de todas las tablas recién creadas en el conjunto de datos se establece en este valor, a menos que la solicitud o consulta de creación de la tabla anule explícitamente la clave. |
satisfiesPzs |
Solo salida. Se reserva para usarlo más adelante. |
satisfiesPzi |
Solo salida. Se reserva para usarlo más adelante. |
type |
Solo salida. Es igual que
|
linkedDatasetSource |
Es opcional. Es la referencia del conjunto de datos de origen cuando el conjunto de datos es de tipo LINKED. No se establece para todos los demás tipos de conjuntos de datos. Este campo no se puede actualizar una vez que se configura. Se ignorará cualquier intento de actualizar este campo con las operaciones de la API de Update y Patch. |
linkedDatasetMetadata |
Solo salida. Son los metadatos sobre el LinkedDataset. Se completa cuando el tipo de conjunto de datos es LINKED. |
externalDatasetReference |
Es opcional. Es una referencia a un conjunto de datos externo de solo lectura definido en catálogos de datos fuera de BigQuery. Se completa cuando el tipo de conjunto de datos es EXTERNAL. |
externalCatalogDatasetOptions |
Es opcional. Son las opciones que definen los conjuntos de datos compatibles con código abierto que se encuentran en el catálogo de BigQuery. Contiene metadatos de la base de datos, el esquema o el espacio de nombres de código abierto representados por el conjunto de datos actual. |
isCaseInsensitive |
Es opcional. Es TRUE si el conjunto de datos y sus nombres de tabla no distinguen mayúsculas de minúsculas; de lo contrario, es FALSE. De forma predeterminada, es FALSE, lo que significa que el conjunto de datos y sus nombres de tabla distinguen mayúsculas de minúsculas. Este campo no afecta las referencias de rutina. |
defaultCollation |
Es opcional. Define la especificación de intercalación predeterminada de las tablas futuras que se creen en el conjunto de datos. Si se crea una tabla en este conjunto de datos sin una intercalación predeterminada a nivel de la tabla, la tabla hereda la intercalación predeterminada del conjunto de datos, que se aplica a los campos de cadena que no tienen una intercalación explícita especificada. Un cambio en este campo solo afecta a las tablas creadas posteriormente y no altera las tablas existentes. Se admiten los siguientes valores:
|
defaultRoundingMode |
Es opcional. Define la especificación del modo de redondeo predeterminado de las tablas nuevas creadas en este conjunto de datos. Durante la creación de la tabla, si se especifica este campo, la tabla dentro de este conjunto de datos heredará el modo de redondeo predeterminado del conjunto de datos. Configurar el modo de redondeo predeterminado en una tabla anula esta opción. Las tablas existentes en el conjunto de datos no se ven afectadas. Si se definen columnas durante la creación de esa tabla, heredarán de inmediato el modo de redondeo predeterminado de la tabla, a menos que se especifique lo contrario. |
maxTimeTravelHours |
Es opcional. Define el período de viaje en el tiempo en horas. El valor puede ser de 48 a 168 horas (de 2 a 7 días). El valor predeterminado es 168 horas si no se configura. |
tags[] |
Solo salida. Son las etiquetas del conjunto de datos. Para proporcionar etiquetas como entradas, usa el campo |
storageBillingModel |
Es opcional. Actualiza storage_billing_model para el conjunto de datos. |
restrictions |
Es opcional. Solo salida. Es la configuración de restricción para todas las tablas y el conjunto de datos. Si se configura, restringe ciertos accesos al conjunto de datos y a todas sus tablas según la configuración. Consulta Salida de datos para obtener más detalles. |
resourceTags |
Es opcional. Son las etiquetas adjuntas a este conjunto de datos. Las claves de etiquetas son únicas a nivel global. Se espera que la clave de etiqueta esté en el formato con espacio de nombres, por ejemplo, "123456789012/environment", en el que 123456789012 es el ID del recurso de organización o proyecto principal para esta clave de etiqueta. Se espera que el valor de la etiqueta sea el nombre corto, por ejemplo, "Producción". Consulta Definiciones de etiquetas para obtener más detalles. Un objeto que contiene una lista de pares |
| Representación JSON |
|---|
{ "datasetId": string, "projectId": string, "datasetIdAlternative": [ string ], "projectIdAlternative": [ string ] } |
| Campos | |
|---|---|
datasetId |
Obligatorio. Un ID único para este conjunto de datos, sin el nombre del proyecto. El ID debe contener solo letras (a-z, A-Z), números (0-9) o guiones bajos (_). La longitud máxima es de 1,024 caracteres. |
projectId |
Opcional. El ID del proyecto que contiene este conjunto de datos. |
datasetIdAlternative[] |
No se debe usar este campo. |
projectIdAlternative[] |
No se debe usar este campo. |
| Representación JSON |
|---|
{ "value": string } |
| Campos | |
|---|---|
value |
El valor de string. |
| Representación JSON |
|---|
{ "value": string } |
| Campos | |
|---|---|
value |
Es el valor int64. |
| Representación JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
| Representación JSON |
|---|
{ "role": string, "userByEmail": string, "groupByEmail": string, "domain": string, "specialGroup": string, "iamMember": string, "view": { object ( |
| Campos | |
|---|---|
role |
Es el ID del rol de IAM que se debe otorgar al usuario, grupo o dominio especificado en esta entrada de acceso. Se aplicarán las siguientes asignaciones heredadas:
Este campo aceptará cualquiera de los formatos anteriores, pero solo devolverá el formato heredado. Por ejemplo, si configuras este campo como "roles/bigquery.dataOwner", se devolverá como "OWNER". |
userByEmail |
[Elige una opción] Dirección de correo electrónico de un usuario al que se le otorgará acceso. Por ejemplo, fred@example.com. Se asigna al miembro de la política de IAM "user:EMAIL" o "serviceAccount:EMAIL". |
groupByEmail |
[Elige una opción] Dirección de correo electrónico de un Grupo de Google al que se le otorgará acceso. Se asigna al miembro de la política de IAM "group:GROUP". |
domain |
[Elige una opción] Es un dominio al que se le otorgará acceso. Se otorgará el acceso especificado a todos los usuarios que hayan accedido con el dominio especificado. Ejemplo: "example.com". Se asigna al miembro de la política de IAM "domain:DOMAIN". |
specialGroup |
[Elige una] Es un grupo especial al que se le otorga acceso. Estos son algunos de los valores posibles:
Se asigna a miembros de IAM con nombres similares. |
iamMember |
[Elige una] Algún otro tipo de miembro que aparece en la política de IAM, pero no es un usuario, un grupo, un dominio ni un grupo especial. |
view |
[Elige una] Es una vista de un conjunto de datos diferente al que se otorgará acceso. Las consultas ejecutadas en esa vista tendrán acceso de lectura a las vistas, las tablas y las rutinas de este conjunto de datos. El campo role no es obligatorio cuando se establece este campo. Si algún usuario actualiza esa vista, se debe volver a otorgar el acceso a través de una operación de actualización. |
routine |
[Elige una] Rutina de un conjunto de datos diferente al que se otorgará acceso. Las consultas ejecutadas en esa rutina tendrán acceso de lectura a las vistas, las tablas y las rutinas de este conjunto de datos. Por el momento, solo se admite la UDF. El campo role no es obligatorio cuando se establece este campo. Si algún usuario actualiza esa rutina, se debe volver a otorgar el acceso a ella a través de una operación de actualización. |
dataset |
[Elige una opción] Es un permiso que autoriza a todos los recursos de un tipo en particular en un conjunto de datos específico a acceder a este conjunto de datos. Por el momento, solo se admiten las vistas. El campo role no es obligatorio cuando se establece este campo. Si se borra y se vuelve a crear ese conjunto de datos, se debe volver a otorgar el acceso a través de una operación de actualización. |
condition |
Es opcional y representa la condición de la vinculación. Si la expresión CEL en este campo es verdadera, se considerará esta vinculación de acceso. |
| Representación JSON |
|---|
{ "projectId": string, "datasetId": string, "tableId": string, "projectIdAlternative": [ string ], "datasetIdAlternative": [ string ], "tableIdAlternative": [ string ] } |
| Campos | |
|---|---|
projectId |
Obligatorio. Es el ID del proyecto que contiene esta tabla. |
datasetId |
Obligatorio. ID del conjunto de datos que contiene esta tabla. |
tableId |
Obligatorio. Es el ID de la tabla. El ID puede contener caracteres Unicode en las categorías L (letra), M (marca), N (número), Pc (conector, incluido el guion bajo), Pd (raya) y Zs (espacio). Para obtener más información, consulta la Categoría general. La longitud máxima es de 1,024 caracteres. Algunas operaciones permiten agregar un sufijo al ID de la tabla con un decorador de partición, como |
projectIdAlternative[] |
No se debe usar este campo. |
datasetIdAlternative[] |
No se debe usar este campo. |
tableIdAlternative[] |
No se debe usar este campo. |
| Representación JSON |
|---|
{ "projectId": string, "datasetId": string, "routineId": string } |
| Campos | |
|---|---|
projectId |
Obligatorio. ID del proyecto que contiene esta rutina. |
datasetId |
Obligatorio. Es el ID del conjunto de datos que contiene esta rutina. |
routineId |
Obligatorio. Es el ID de la rutina. El ID debe contener solo letras (a-z, A-Z), números (0-9) o guiones bajos (_). La longitud máxima es de 256 caracteres. |
| Representación JSON |
|---|
{ "dataset": { object ( |
| Campos | |
|---|---|
dataset |
Es el conjunto de datos al que se aplica esta entrada. |
targetTypes[] |
Indica a qué recursos del conjunto de datos se aplica esta entrada. Actualmente, solo se admiten las vistas, pero es posible que se agreguen otros tipos de objetivos en el futuro. |
| Representación JSON |
|---|
{ "expression": string, "title": string, "description": string, "location": string } |
| Campos | |
|---|---|
expression |
Representación textual de una expresión en la sintaxis de Common Expression Language. |
title |
Opcional. Título de la expresión (una string corta que describe el propósito de esta). Se puede usar, p. ej., en IU que permiten ingresar la expresión. |
description |
Opcional. Descripción de la expresión. Es un texto más largo que describe la expresión (p. ej., cuando se coloca el cursor sobre ella en una IU). |
location |
Opcional. Una string que indica la ubicación de la expresión para los informes de errores (p. ej., un nombre de archivo y una posición en este). |
| Representación JSON |
|---|
{ "kmsKeyName": string } |
| Campos | |
|---|---|
kmsKeyName |
Es opcional. Describe la clave de encriptación de Cloud KMS que se usará para proteger la tabla de BigQuery de destino. La cuenta de servicio de BigQuery asociada a tu proyecto requiere acceso a esta clave de encriptación. |
| Representación JSON |
|---|
{ "value": boolean } |
| Campos | |
|---|---|
value |
Es el valor booleano. |
| Representación JSON |
|---|
{
"sourceDataset": {
object ( |
| Campos | |
|---|---|
sourceDataset |
La referencia del conjunto de datos fuente contiene números de proyecto y no IDs de proyecto. |
| Representación JSON |
|---|
{
"linkState": enum ( |
| Campos | |
|---|---|
linkState |
Solo salida. Especifica si el conjunto de datos vinculado se encuentra actualmente en un estado vinculado o no. |
| Representación JSON |
|---|
{ "externalSource": string, "connection": string } |
| Campos | |
|---|---|
externalSource |
Obligatorio. Es la fuente externa que respalda este conjunto de datos. |
connection |
Obligatorio. Es el ID de conexión que se usa para acceder a external_source. Formato: projects/{project_id}/locations/{location_id}/connections/{connection_id} |
| Representación JSON |
|---|
{ "parameters": { string: string, ... }, "defaultStorageLocationUri": string } |
| Campos | |
|---|---|
parameters |
Es opcional. Es un mapa de pares clave-valor que definen los parámetros y las propiedades del esquema de código abierto. El tamaño máximo es de 2 MiB. Un objeto que contiene una lista de pares |
defaultStorageLocationUri |
Es opcional. Es el URI de la ubicación de almacenamiento de todas las tablas del conjunto de datos. Equivale a la ubicación de la base de datos locationUri del almacén de metadatos de Hive. La longitud máxima es de 1,024 caracteres. |
| Representación JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
| Representación JSON |
|---|
{ "tagKey": string, "tagValue": string } |
| Campos | |
|---|---|
tagKey |
Obligatorio. Es el nombre descriptivo con espacio de nombres de la clave de la etiqueta, p.ej., "12345/environment", donde 12345 es el ID de la organización. |
tagValue |
Obligatorio. Es el nombre corto descriptivo del valor de la etiqueta, p.ej., "producción". |
| Representación JSON |
|---|
{
"type": enum ( |
| Campos | |
|---|---|
type |
Solo salida. Especifica el tipo de restricción de conjunto de datos o tabla. |
| Representación JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
Anotaciones de herramientas
Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌