Las búsquedas en Knowledge Catalog te permiten encontrar recursos de datos específicos en tu catálogo con la concordancia semántica y de palabras clave. Si combinas el lenguaje natural, los filtros de metadatos y los operadores lógicos, puedes ubicar entradas relevantes para descubrir, administrar y comprender los datos de tu organización.
Knowledge Catalog también admite un modo de búsqueda solo por palabras clave para la retrocompatibilidad. Para obtener más información sobre este modo, sus filtros y cómo usarlo, consulta Búsqueda solo por palabras clave.
Descripción general de la sintaxis de las consultas
Puedes construir consultas de búsqueda de Knowledge Catalog con los siguientes componentes:
- Búsqueda simple: Encuentra recursos de datos con un solo término de búsqueda.
- Búsqueda de texto libre: Encuentra recursos de datos con frases o palabras clave en lenguaje natural.
- Predicados calificados: Define mejor tu búsqueda con campos de metadatos específicos, como nombre, ubicación, sistema o tipo.
- Búsqueda por aspectos: Busca entradas en función de los metadatos técnicos y empresariales adjuntos.
- Operadores lógicos: Combina varios criterios de búsqueda con los operadores
AND,ORoNOTpara crear consultas complejas.
Predicados calificados
Usa un predicado calificado para acotar los resultados de la búsqueda indicándole de forma explícita a la búsqueda que evalúe un campo de metadatos específico, como el nombre, el tipo o el sistema de un recurso.
Puedes calificar un predicado agregándole un prefijo con una clave que restrinja la coincidencia a un fragmento específico de metadatos:
- Un signo igual (
=) para restringir la búsqueda a una coincidencia exacta - Dos puntos (
:) después de la clave para que el predicado coincida con una subcadena o un token dentro del valor en los resultados de la búsqueda.
La asignación de token divide el flujo de texto en una serie de tokens, y cada token suele corresponder a una sola palabra.
Por ejemplo:
name:fooselecciona recursos con nombres que contienen la subcadenafoo, comofoo1ybarfoo.description:fooselecciona recursos con el tokenfooen la descripción, comobaryfoo.location=foohace coincidir los recursos en una ubicación especificada confoocomo el nombre de la ubicación.
Calificadores compatibles
La búsqueda de Knowledge Catalog admite los siguientes calificadores:
| Calificador | Descripción |
|---|---|
name:x |
Coincide con x como una subcadena del ID del recurso o el nombre visible del recurso. |
displayname:x |
Coincide con x como una subcadena del nombre visible del recurso. |
column:x |
Coincide con x como una subcadena del nombre de la columna (o el nombre de la columna
anidada) en el esquema del recurso. |
description:x |
Coincide con x como un token en la descripción del recurso. Por ejemplo:
|
labels:bar |
Coincide con los recursos que tienen una etiqueta (con algún
valor) y la clave de etiqueta tiene bar como una subcadena. |
labels=bar |
Coincide con los recursos que tienen una etiqueta (con
algún valor) y la clave de etiqueta es igual a bar como una cadena. |
labels.bar:x |
Coincide con x como una subcadena en el valor de una etiqueta con
la clave bar adjunta a un recurso. |
labels.foo=bar |
Coincide con los recursos en los que la clave es igual a
foo y el valor de la clave es igual a bar. |
type=TYPE |
Coincide con los recursos de un tipo de entrada específico o su alias de tipo. Requiere el calificador =. |
projectid:bar |
Coincide con los recursos dentro de los proyectos de Google Cloud que coinciden con
bar como una subcadena en el ID. |
parent:x |
Coincide con x como una subcadena de la ruta de acceso jerárquica de un
recurso. |
system=SYSTEM |
Coincide con los recursos de un sistema especificado. Requiere el calificador =. |
location=LOCATION |
Coincide con los recursos de una ubicación especificada con un nombre exacto. Requiere el calificador Los recursos de BigQuery Omni admiten este calificador con el
nombre de la ubicación de BigQuery Omni.
Por ejemplo,
|
createtime |
Busca recursos que se crearon dentro, antes o después de una fecha, marca de tiempo o tiempo relativo en días determinados. Para conocer los formatos y operadores compatibles, consulta Filtros de tiempo. |
updatetime |
Busca recursos que se actualizaron dentro, antes o después de una fecha, marca de tiempo o tiempo relativo en días determinados. Para conocer los formatos y operadores compatibles, consulta Filtros de tiempo. |
Calificadores de concordancia exacta
Las claves de predicado type, system, location y la búsqueda por aspectos (excepto has) solo admiten el calificador de coincidencia exacta (=), no el calificador de subcadena (:).
Usa la siguiente sintaxis de concordancia exacta para estos predicados:
| Clave de predicado | Sintaxis correcta | Sintaxis incorrecta |
|---|---|---|
type |
type=table (o type=view, type=dataset) |
type:table o type:tab |
system |
system=bigquery (o system=spanner) |
system:bigquery o system:big |
location |
location=us-central1 (o location=europe-west1) |
location:us-central1 o location:us |
Calificadores de substring
Los predicados, como name, displayname, column, projectid y parent,
admiten la coincidencia de subcadenas con el calificador de dos puntos (:):
name:transactionscoincide con los recursos cuyo ID o nombre visible contienetransactions. Por ejemplo,daily_transactions_rawytransactions_v2.column:customer_idcoincide con los recursos que tienen un nombre de columna que contienecustomer_id.projectid:prodcoincide con los recursos de los proyectos cuyo ID contieneprod. Por ejemplo,finance-prod-2026.
Filtros de tiempo
Puedes filtrar los recursos por hora de creación (createtime) o por hora de última actualización
(updatetime).
Operadores y formatos admitidos
- Operadores admitidos:
:,=,<,>,<=,>=,=>,=< - Días relativos (
-Nd): Filtra por una cantidad relativa de días en el pasado (por ejemplo,-30d,-7d,-1d). - Fechas del calendario (
YYYY-MM-DDoYYYY/MM/DD): Filtra por una fecha específica en GMT/UTC. - Marcas de tiempo completas (
YYYY-MM-DDTHH:MM:SSoYYYY-MM-DDTHH:MM:SSZ): Filtra por una marca de tiempo precisa en GMT/UTC. También se admiten marcas de tiempo parciales, comoYYYY-MM-DDTHH:MMoYYYY-MM-DDTHH.
Sintaxis del filtro de tiempo
En la siguiente tabla, se explica la sintaxis del filtro de tiempo:
| Categoría de formato | Sintaxis válida | Sintaxis no válida | Descripción |
|---|---|---|---|
| Unidades de tiempo relativas |
|
|
|
| Fechas del calendario |
|
|
|
| Marcas de tiempo y zonas horarias |
|
|
|
| Intervalos de hora del día |
|
|
|
| Fechas en lenguaje natural |
|
|
|
Filtros de etiquetas
Usa el predicado labels para filtrar los recursos por etiquetas adjuntas. Puedes
filtrar por clave de etiqueta, valor de etiqueta o ambos:
| Patrón de consulta | Ejemplo | Descripción |
|---|---|---|
labels=KEY |
labels=environment |
Coincide con los recursos que tienen una etiqueta con la clave exacta environment, independientemente de su valor. |
labels:KEY_SUBSTRING |
labels:tier |
Coincide con los recursos que tienen una clave de etiqueta que contiene tier como una subcadena (como service_tier o storage_tier). |
labels.KEY=VALUE |
labels.env=prod |
Coincide con los recursos en los que la clave de etiqueta es env y su valor es exactamente prod. |
labels.KEY:VALUE_SUBSTRING |
labels.owner:analytics |
Coincide con los recursos que tienen la clave de etiqueta owner, en la que el valor contiene analytics como una subcadena (como analytics-team o data-analytics). |
| Varias etiquetas (AND) | labels.env=prod labels.data_tier=tier1 |
Coincide con los recursos que tienen adjuntas las etiquetas env=prod y data_tier=tier1. |
| Combinado con el sistema y el tipo | system=bigquery type=table labels.env=prod labels.confidentiality=high |
Coincide con las tablas de BigQuery etiquetadas con env=prod y confidentiality=high. |
Búsqueda por aspectos
Puedes usar la sintaxis de consulta para buscar entradas según sus aspectos adjuntos.
La coincidencia de subcadena intenta coincidir con una cantidad limitada de aspectos. Si no puedes encontrar la entrada con un fragmento de la ruta de acceso, usa la ruta de acceso completa para acotar la búsqueda y aumentar la recuperación.
| Calificador | Descripción |
|---|---|
aspect:xo has:x |
Coincide con x como una subcadena de la ruta de acceso completa al tipo de aspecto
de un aspecto que se adjunta a la entrada, en el formato
projectid.location.ASPECT_TYPE_ID |
aspect=xo has=x |
Coincide con x como la ruta de acceso completa al tipo de aspecto
de un aspecto que se adjunta a la entrada, en el formato
projectid.location.ASPECT_TYPE_ID |
x |
Busca valores de campos de aspecto. Coincide con
Solo se pueden buscar los campos de nivel superior del aspecto. |
Operadores lógicos
Una consulta puede combinar varios predicados con operadores lógicos.
Nota: Los operadores lógicos AND, OR y NOT distinguen mayúsculas de minúsculas y deben estar en
letras mayúsculas.
Operador AND
Si separas varios términos de búsqueda o predicados con un espacio, se implica el operador lógico AND, lo que significa que no tienes que escribirlo de forma explícita.
En los siguientes ejemplos, se muestra cómo construir consultas con el operador AND.
Busca tablas de BigQuery
system=bigquery type=tableBusca recursos en el proyecto
banking-prodcon una columna llamadacustomer_idprojectid:banking-prod column:customer_idSi es necesario, puedes usar el operador
ANDexplícito:system=bigquery AND type=table AND location=us-central1
Operador OR
Usa el operador OR para que coincida con cualquiera de las múltiples condiciones. Cuando
combines OR con otros criterios, usa paréntesis ( ) para agrupar las
expresiones y definir la prioridad.
En los siguientes ejemplos, se muestra cómo construir consultas con el operador OR.
Busca tablas y vistas de BigQuery
system=bigquery (type=table OR type=view)Busca tablas en varios sistemas
(system=bigquery OR system=spanner) type=tableBusca entradas en los conjuntos de datos de marketing o finanzas.
system=bigquery (parent:marketing_analytics OR parent:finance_analytics)
Operador NOT
Puedes negar un predicado si le agregas el prefijo NOT en mayúscula o un - (guion).
En los siguientes ejemplos, se muestra cómo construir consultas con el operador NOT.
Busca todas las tablas, excepto las que se encuentran en un proyecto de zona de pruebas
- Usa el operador
NOT
type=table NOT projectid:sandbox-project- Usar guion
type=table -projectid:sandbox-project- Usa el operador
Busca todos los recursos de BigQuery que no contengan
testen su nombresystem=bigquery -name:test
Sintaxis abreviada
Si quieres usar la sintaxis abreviada, usa | (barra vertical) para los operadores OR y , (coma) para los operadores AND entre paréntesis.
Esta sintaxis abreviada funciona para los predicados calificados.
Busca en varios IDs de proyecto
- Usa el operador
OR:
projectid:(finance-prod|sales-prod|analytics-prod)- Usa paréntesis:
projectid:finance-prod OR projectid:sales-prod OR projectid:analytics-prod- Usa el operador
Busca entradas que coincidan con varios nombres de columnas (
AND)column:(customer_id,transaction_date,amount)Busca entradas que coincidan con cualquiera de los nombres de varias columnas (
OR)column:(customer_id|user_id|client_id)
Política de comodín
La sintaxis de búsqueda de Knowledge Catalog no admite comodines, como * o ?, en cadenas de consulta ni predicados.
Si incluyes un asterisco (*) o un signo de interrogación (?) en una consulta, se
trata como un carácter literal, en lugar de un comodín de coincidencia de patrones.
Por ejemplo, para buscar tablas cuyos nombres terminen con _masked, haz lo siguiente:
- Admitido:
name:_masked: Usa el calificador de coincidencia de subcadena:para encontrar todos los recursos cuyo nombre contenga_masked, comocustomer_records_maskedotransactions_masked. - No compatible:
name:*_masked: El*se trata como un carácter literal, no como un comodín de patrón.
Paréntesis
Los paréntesis en las búsquedas tienen funciones técnicas específicas. Si usas paréntesis en exceso o los aplicas a consultas de lenguaje natural, puedes confundir al analizador de búsqueda y disminuir la calidad de los resultados.
Lenguaje natural sencillo
Cuando hagas una pregunta empresarial, pasa la consulta en texto sin formato. No lo encierres entre paréntesis. Por ejemplo, escribe lo siguiente:
Find customer orders containing email addresses
Sintaxis de predicado abreviada
Los paréntesis son muy eficaces cuando se usan con claves de predicado para enumerar varias
condiciones OR y AND en un formato compacto.
Agrupa las claves de predicado con
OR(|)Busca entradas que residan en cualquiera de los proyectos de la lista con (
|)projectid:(finance-prod|finance-test|analytics-raw)Busca entradas que residan en cualquiera de los proyectos de la lista con (
OR)
projectid:finance-prod OR projectid:finance-test OR projectid:finance-rawAgrupa las claves de predicado con
AND(,)- Busca entradas que contengan todas las columnas especificadas con (
,).
column:(customer_id, order_date, total_amount)- Busca entradas que contengan todas las columnas especificadas con (
AND).
column:customer_id AND column:order_date AND column:total_amount- Busca entradas que contengan todas las columnas especificadas con (
Búsqueda híbrida
Puedes combinar una consulta en lenguaje natural con filtros compactos.
Por ejemplo, para encontrar tablas que especifiquen usuarios activos por mes, pero restringir la búsqueda a los proyectos especificados, usa la siguiente consulta:
monthly active users type=table projectid:(data-warehouse|analytical-tier)
Prácticas recomendadas para usar paréntesis
No encierres toda la pregunta entre paréntesis, ya que el motor semántico podría tratar los paréntesis como caracteres literales, lo que generaría resultados de baja relevancia.
- Incorrecto:
(Show me datasets about US population by state) - Correcto:
Show me datasets about US population by state
- Incorrecto:
Evita mezclar árboles booleanos complejos y anidados con paréntesis dentro del campo de lenguaje natural. La Búsqueda está optimizada para la intención del lenguaje natural. Complicar demasiado la consulta con paréntesis y bloques lógicos explícitos confunde al analizador.
- Incorrecto:
(revenue data) AND system=BIGQUERY AND projectid:(data-warehouse | analytical-tier) - Correcto:
revenue data system=bigquery projectid:(data-warehouse|analytical-tier)
- Incorrecto:
No agregues espacios de forma arbitraria, a menos que formen parte del valor.
- Incorrecto:
column:( email | id ) - Correcto:
column:(email|id).
- Incorrecto:
¿Qué sigue?
- Obtén más información para buscar recursos en Knowledge Catalog.
- Obtén más información sobre la administración de metadatos en Knowledge Catalog.
- Obtén información para enriquecer las entradas y los vínculos de entrada con metadatos usando aspectos.
- Obtén más información para administrar entradas y transferir fuentes personalizadas.