¿Qué es BI Engine?
BigQuery BI Engine es un servicio de análisis rápido en la memoria que acelera muchas consultas de SQL en BigQuery mediante el almacenamiento en caché inteligente de los datos que usas con más frecuencia. BI Engine puede acelerar las consultas de SQL desde cualquier fuente, incluidas las que están escritas por herramientas de visualización de datos, y puede administrar tablas en caché para una optimización continua. Esto te permite mejorar el rendimiento de las consultas sin ajustes manuales ni niveles de datos. Puedes usar el agrupamiento en clústeres y la partición para optimizar aún más el rendimiento de tablas grandes con BI Engine.
Por ejemplo, si en tu panel solo se muestran los datos del último trimestre, considera particionar tus tablas por tiempo para que solo las particiones más recientes se carguen en la memoria. También puedes combinar los beneficios de las vistas materializadas y BI Engine. Esto funciona muy bien cuando las vistas materializadas se usan a fin de unir y compactar datos a fin de optimizar su estructura para BI Engine.
BI Engine ofrece las siguientes ventajas:
- API de BigQuery: BI Engine se integra directamente a la API de BigQuery. Cualquier solución BI o aplicación personalizada que funcione con la API de BigQuery a través de mecanismos estándar como los controladores REST o JDBC y ODBC puede usar BI Engine sin cambios.
- Entorno de ejecución vectorizado: con la interfaz de SQL de BI Engine, BI Engine presenta una técnica más moderna llamada procesamiento vectorizado. Usar del procesamiento vectorizado en un motor de ejecución hace un uso más eficiente de la arquitectura de CPU moderna mediante la operación en lotes de datos a la vez. BI Engine también usa codificaciones de datos avanzadas, en especial la codificación de longitud de ejecución del diccionario, para comprimir aún más los datos que se almacenan en la capa en la memoria.
- Integración continua: BI Engine funciona con las características y los metadatos de BigQuery, incluidas las vistas autorizadas, la seguridad a nivel de columna y el enmascaramiento de datos.
- Reservas: Las reservas de BI Engine administran la asignación de memoria a nivel de ubicación del proyecto. BI Engine almacena en caché columnas específicas o particiones que se consultan y prioriza las que están marcadas en las tablas como preferidas.
Acerca de la interfaz de SQL de BI Engine
La interfaz de SQL de BI Engine expande BI Engine para integrarse en otras herramientas de inteligencia empresarial (IE), como Looker, Tableau, Power BI y aplicaciones personalizadas para acelerar la exploración y el análisis de datos. En esta página, se proporciona una descripción general de la interfaz de SQL BI Engine y de las capacidades expandidas que ofrece.
Casos de uso de BI Engine
BI Engine puede acelerar de manera significativa muchas consultas de SQL, incluidas las que se usan para los paneles de IE. La aceleración es más efectiva si identificas las tablas que son esenciales para tus consultas y, luego, las marcas como tablas preferidas. Para usar BI Engine, crea una reserva que defina la capacidad de almacenamiento dedicada a BI Engine. Puedes permitir que BigQuery determine qué tablas almacenar en caché según los patrones de uso del proyecto o puedes marcar tablas específicas para evitar que otro tráfico interfiera con la aceleración.
BI Engine es útil en los siguientes casos prácticos:
- Usas herramientas de IE para analizar tus datos: La interfaz de SQL de BI Engine puede acelerar las consultas de BigQuery sin importar si se ejecutan en la consola de BigQuery, la biblioteca cliente o a través de una API, o un conector ODBC o JDBC. Esto puede mejorar de forma significativa el rendimiento de los paneles conectados a BigQuery a través de una conexión integrada (API) o conectores.
- Tienes ciertas tablas que se consultan con más frecuencia: BI Engine te permite designar tablas preferidas específicas que acelerar. Esto es útil si tienes un subconjunto de tablas que se consultan con más frecuencia o que se usan para paneles de alta visibilidad.
Es posible que BI Engine no se adapte a tus necesidades en los siguientes casos:
Usas comodines en tus consultas: BI Engine no admite las consultas que hacen referencia a tablas comodín y no se benefician de la aceleración.
Dependes en gran medida de las funciones de BigQuery que BI Engine no admite: Si bien BI Engine es compatible con la mayoría de los dispositivos,Funciones y operadores de SQL cuando se conectan herramientas de inteligencia empresarial (IE) a BigQuery, existencaracterísticas no compatibles , incluidas las tablas externas y las funciones que no son de SQL definidas por el usuario.
Consideraciones para BI Engine
Ten en cuenta lo siguiente cuando decidas cómo configurar BI Engine:
Garantiza la aceleración para consultas específicas
Puedes garantizar que un conjunto particular de consultas siempre se acelere si creas un proyecto separado con una reserva de BI Engine. Para ello, debes asegurarte de que la reserva de BI Engine en ese proyecto sea lo suficientemente grande como para coincidir con el tamaño de todas las tablas usadas en esas consultas y designar esas tablas como tablas preferidas para BI Engine. En ese proyecto, solo deben ejecutarse las consultas que deben acelerarse.
Minimiza tus uniones
BI Engine funciona mejor con uniones previas o agregadas, y con datos en una pequeña cantidad de uniones. Esto sucede en particular cuando un lado de la unión es grande y los otros son mucho más pequeños, como cuando consultas una tabla de hechos grande unida a una tabla de dimensiones pequeña. Puedes combinar BI Engine con vistas materializadas que realizan uniones para producir una sola tabla grande y compacta. De esta manera, no es necesario realizar las mismas uniones en cada consulta.
Comprende el impacto de BI Engine
Para comprender tu uso de BI Engine, consulta Supervisa BI Engine con Cloud Monitoring o consulta las vistas INFORMATION_SCHEMA.BI_CAPACITIES
y INFORMATION_SCHEMA.BI_CAPACITY_CHANGES
. Asegúrate de inhabilitar la opción Usar resultados almacenados en caché en BigQuery para obtener la comparación más precisa. Para obtener más información, consulta Usa los resultados de consultas almacenados en caché.
Tablas preferidas
Las tablas preferidas de BI Engine te permiten limitar la aceleración de BI Engine a un conjunto específico de tablas. Las consultas de todas las demás tablas usan ranuras normales de BigQuery. Por ejemplo, con las tablas preferidas, puedes acelerar solo las tablas y los paneles que identificas como importantes para tu negocio.
Si no hay suficiente memoria RAM en el proyecto para contener todas las tablas preferidas, BI Engine descarga particiones y columnas a las que no se accedió recientemente. Este proceso libera la memoria para consultas nuevas que necesitan aceleración.
Limitaciones de las tablas preferidas
Las tablas preferidas de BI Engine tienen las siguientes limitaciones:
- No puedes agregar vistas a la lista de reservas de tablas preferidas. Las tablas preferidas de BI Engine solo son compatibles con tablas.
- Las consultas a vistas materializadas solo se aceleran si las vistas materializadas y sus tablas base están en la lista de tablas preferidas.
- No se admite la especificación de particiones o columnas para la aceleración.
- Las columnas de tipo
JSON
no son compatibles y no están aceleradas por BI Engine. - Las consultas que acceden a varias tablas solo se aceleran si todas las tablas son tablas de preferencia. Por ejemplo, todas las tablas en una consulta con un
JOIN
deben estar en la lista de tablas preferidas para acelerarse. Si incluso una tabla no está en la lista preferida, la consulta no puede usar BI Engine. - Los conjuntos de datos públicos no son compatibles con la consola de Google Cloud. Para agregar una tabla pública como tabla preferida, usa la API o el DDL.
Cuotas y límites
Consulta Cuotas y límites de BigQuery para obtener información sobre las cuotas y los límites que se aplican a BI Engine.
Precios
Para obtener información sobre los precios de BI Engine, consulta la página Precios.
¿Qué sigue?
- Para aprender cómo crear tu reserva de BI Engine, consulta Reserva la capacidad de BI Engine.
- Para obtener información sobre las tablas preferidas, consulta Tablas preferidas de BI Engine.
- Para comprender tu uso de BI Engine, consulta Supervisa BI Engine con Cloud Monitoring.
- Obtén información sobre las funciones optimizadas de BI Engine.
- Aprende a usar BI Engine con lo siguiente: