Si configura las particiones y los clústeres de su destino de BigQuery, puede optimizar el rendimiento de las consultas y controlar los costes. Las particiones y los clústeres te permiten reducir la cantidad de datos que BigQuery necesita analizar durante la ejecución de las consultas.
Particiones de tablas
La creación de particiones en una tabla divide la tabla en segmentos llamados particiones, lo que facilita la gestión y la consulta de los datos. Para crear particiones en las tablas, especifica una columna de partición, que se usa para segmentar la tabla.
Datastream admite tres tipos de particiones para las tablas de BigQuery:
Crear particiones por hora de ingestión: puedes crear particiones de una tabla en función de la hora en la que Datastream ingiere los datos en BigQuery. Puede seleccionar una granularidad por horas, días, meses o años para la partición por tiempo de ingestión. La granularidad predeterminada es "Diaria".
Creación de particiones por unidad de tiempo: puedes crear particiones de una tabla en función de una columna de origen de un tipo de datos que Datastream asigne a uno de los siguientes tipos de datos de BigQuery:
DATE,DATETIMEoTIMESTAMP. Para obtener información sobre cómo asigna Datastream los tipos de datos de origen a los tipos de datos de BigQuery, consulta Asignaciones de tipos de datos en BigQuery.En función del tipo de datos de BigQuery al que se asigne la columna de origen, puede seleccionar uno de los siguientes tipos de granularidad:
DAY,MONTHyYEAR: para el tipo de datosDATE.HOUR,DAY,MONTHyYEAR: para los tipos de datosDATETIMEyTIMESTAMP.
Partición por intervalo de números enteros: puedes particionar una tabla por una columna de origen de un tipo de datos que Datastream asigne al tipo de datos
INTEGERde BigQuery. Debe proporcionar la siguiente información:- Inicio: valor inicial del primer intervalo de partición (inclusive).
- Fin: el valor final del último intervalo de partición (no incluido).
- Intervalo: anchura de cada intervalo de partición.
Para obtener más información, consulta Particiones por intervalo de números enteros.
Para obtener información sobre cómo configurar las particiones de tu flujo, consulta Configurar información sobre la base de datos de origen del flujo.
Agrupación en clústeres de tablas
La agrupación en clústeres ordena los datos de una tabla según los valores de las columnas de este tipo de agrupamiento y coloca los datos con valores similares en el mismo lugar. Las consultas que filtran por las columnas agrupadas solo analizan los bloques de datos relevantes en lugar de toda la tabla o la partición de la tabla. Esto puede mejorar el rendimiento de las consultas y reducir sus costes.
Puedes agrupar en clústeres tus tablas de BigQuery por un máximo de cuatro columnas. El orden en el que especifiques las columnas determinará el criterio de ordenación de los datos.
Puedes agrupar en clústeres una tabla en función de una columna de origen de un tipo de datos que Datastream asigne a uno de los siguientes tipos de datos de BigQuery:
BIGNUMERICBOOLEANDATEDATETIMEGEOGRAPHYINT64NUMERICRANGESTRINGTIMESTAMP
Para obtener información sobre cómo asigna Datastream los tipos de datos de origen a los tipos de datos de BigQuery, consulta Asignaciones de tipos de datos en BigQuery.
Para obtener información sobre cómo configurar la agrupación en clústeres de tu flujo, consulta Configurar información sobre la base de datos de origen del flujo.
Limitaciones
Para ver las limitaciones de las particiones en BigQuery, consulta Introducción a las tablas con particiones.
Para ver las limitaciones de la agrupación en clústeres en BigQuery, consulta Introducción a las tablas agrupadas en clústeres.
Para conocer los límites de cuota que se aplican a las tablas particionadas de BigQuery, consulta Cuotas y límites.
Además, se aplican las siguientes limitaciones al usar Datastream:
- La creación de particiones y clústeres solo se aplica cuando Datastream crea una tabla de BigQuery. Si quieres configurar o modificar los ajustes de partición y clustering de una tabla que ya existe, primero debes eliminarla de BigQuery y, después, configurar o modificar sus ajustes en Datastream.
- En las fuentes de MongoDB, solo puedes particionar las tablas por tiempo de ingestión.
- No se admite la creación de clústeres en bases de datos de MongoDB.
Siguientes pasos
- Para obtener más información sobre las particiones en BigQuery, consulte Introducción a las tablas con particiones y Gestionar tablas con particiones.
- Para obtener más información sobre la creación de clústeres en BigQuery, consulta los artículos Introducción a las tablas agrupadas en clústeres y Gestionar tablas agrupadas en clústeres.
- Para obtener más información sobre los flujos, consulta el ciclo de vida de los flujos.
- Para saber cómo crear una emisión, consulta Crear una emisión.
- Para obtener más información sobre BigQuery, consulta Destino de BigQuery.