Desplazamiento al rojo del Amazonas es un almacén de datos en la aglomeración rápido y totalmente administrado que hace que sea rentable analizar sus datos utilizando SQL unificado y herramientas de inteligencia empresarial. Puede utilizar Amazon Redshift para analizar datos estructurados y semiestructurados y consultar sin problemas lagos de datos y bases de datos operativas, utilizando hardware diseñado por AWS y ajustes automatizados basados en formación inevitable (ML) para ofrecer un rendimiento de precios de primer nivel a escalera.
Amazon Redshift cumple Rendimiento de precio desde el primer momento. Sin incautación, igualmente ofrece optimizaciones adicionales que puede utilizar para mejorar aún más este rendimiento y conseguir tiempos de respuesta de consultas aún más rápidos desde su almacén de datos.
Una de esas optimizaciones para acortar el tiempo de ejecución de la consulta es precalcular los resultados de la consulta en forma de clarividencia materializada. Las vistas materializadas en Redshift aceleran la ejecución de consultas en tablas grandes. Esto es útil para consultas que involucran agregaciones y uniones de varias tablas. Las vistas materializadas almacenan un conjunto de resultados precalculados de estas consultas y igualmente admiten la capacidad de modernización incremental para tablas locales.
Los clientes utilizan tablas de lagos de datos para conseguir un almacenamiento rentable y la interoperabilidad con otras herramientas. Con formatos de tabla abierta (OTF), como Apache Iceberg, los datos se agregan y actualizan continuamente.
Amazon Redshift ahora ofrece la capacidad de desempolvar de forma incremental sus vistas materializadas en tablas del laguna de datos, incluidos formatos de tablas y archivos abiertos, como Apache Iceberg.
En esta publicación, le mostraremos paso a paso qué operaciones se admiten tanto en formatos de archivos abiertos como en tablas de lagos de datos transaccionales para permitir la modernización incremental de la clarividencia materializada.
Requisitos previos
Para ver los ejemplos de esta publicación, necesita los siguientes requisitos previos:
- Puede probar la modernización incremental de vistas materializadas en tablas de laguna de datos unificado en su cuenta utilizando un almacén de datos y un laguna de datos de Redshift existentes. Sin incautación, si desea probar los ejemplos utilizando datos de muestra, descargar los datos de muestra. Los archivos de muestra son ‘|’ archivos de texto delimitados.
- Un Mandato de acercamiento e identidad de AWS (IAM) función asignada a Amazon Redshift para otorgar la permisos mínimos requerido para usar Espectro de desplazamiento al rojo con Servicio de almacenamiento simple de Amazon (Amazon S3) y Pegamento AWS.
- Establecer la función de IAM como predeterminada papel en Amazon Redshift.
Aggiornamento incremental de vistas materializadas en tablas de laguna de datos unificado
En esta sección, aprenderá cómo crear y desempolvar de forma incremental vistas materializadas en Amazon Redshift en archivos de texto unificado en Amazon S3, manteniendo la modernización de los datos con un enfoque rentable.
- Subir el primer archivo,
customer.tbl.1
descargado del Requisitos previos sección en el depósito S3 que desee con el prefijocustomer
. - Conéctese a su comunidad de trabajo sin servidor de Amazon Redshift o al clúster aprovisionado de Redshift mediante Editor de consultas v2.
- Crea un esquema extranjero.
- Crea una tabla externa citación
customer
en el esquema extranjerodatalake_mv_demo
creado en el paso antecedente. - Validar los datos de muestra en el cliente extranjero.
- Cree una clarividencia materializada en la tabla externa.
- Validar los datos en la clarividencia materializada.
- Sube un nuevo archivo
customer.tbl.2
en el mismo depósito S3 ycustomer
ubicación del prefijo. Este archivo contiene un registro adicional. - Usando Editor de consultas v2 actualiza la clarividencia materializada
customer_mv
. - Valide la modernización incremental de la clarividencia materializada cuando se agregue el nuevo archivo.
- Recuperar el número contemporáneo de filas presentes en la clarividencia materializada
customer_mv
. - Borrar el archivo existente
customer.tbl.1
del mismo depósito S3 y prefijocustomer
. Sólo deberías tenercustomer.tbl.2
en elcustomer
prefijo de su depósito S3. - Usando Editor de consultas v2actualiza la clarividencia materializada
customer_mv
de nuevo. - Verifique que la clarividencia materializada se actualice de forma incremental cuando se elimine el archivo existente.
- Recuperar el recuento de filas contemporáneo en la clarividencia materializada
customer_mv
. Ahora debería tener un registro como presente en elcustomer.tbl.2
archivo. - Modificar el contenido del descargado previamente
customer.tbl.2
archivo modificando la secreto de cliente de999999999
a111111111
. - Guarde el archivo modificado y cárguelo nuevamente en el mismo depósito de S3, sobrescribiendo el archivo existente adentro del
customer
prefijo. - Usando Editor de consultas v2actualiza la clarividencia materializada
customer_mv
- Valide que la clarividencia materializada se actualizó incrementalmente luego de que se modificaron los datos en el archivo.
- Valide que los datos en la clarividencia materializada reflejen sus cambios de datos anteriores desde
999999999
a111111111
.
Aggiornamento incremental de la clarividencia materializada en las tablas del laguna de datos Apache Iceberg
Iceberg apache es un formato de tabla abierta de laguna de datos que se está convirtiendo rápidamente en un unificado de la industria para la papeleo de datos en lagos de datos. Iceberg presenta nuevas capacidades que permiten que múltiples aplicaciones trabajen juntas con los mismos datos de modo transaccionalmente consistente.
En esta sección exploraremos cómo Desplazamiento al rojo del Amazonas Puede integrarse perfectamente con Apache Iceberg. Puede utilizar esta integración para crear vistas materializadas y actualizarlas gradualmente utilizando un enfoque rentable, manteniendo la modernización de los datos almacenados.
- Inicie sesión en el Consola de empresa de AWSir a Atenea amazónicay ejecute el venidero SQL para crear una cojín de datos en un catálogo de AWS Glue.
- Crear una nueva tabla Iceberg
- Agregue algunos datos de muestra a
iceberg_mv_demo.category
. - Validar los datos de muestra en
iceberg_mv_demo.category
. - Conéctese a su comunidad de trabajo sin servidor de Amazon Redshift o al clúster aprovisionado de Redshift mediante Editor de consultas v2.
- Crear un esquema extranjero
- Consulta los datos de la tabla Iceberg de Amazon Redshift.
- Cree una clarividencia materializada utilizando el esquema extranjero.
- Validar los datos en la clarividencia materializada.
- Usando Atenea amazónicamodificar la tabla Iceberg
iceberg_mv_demo.category
e insertar datos de muestra. - Usando Editor de consultas v2actualiza la clarividencia materializada
mv_category
. - Valide la modernización incremental de la clarividencia materializada luego de que se completaron los datos adicionales en la tabla Iceberg.
- Usando Atenea amazónicamodificar la tabla Iceberg
iceberg_mv_demo.category
eliminando y actualizando registros. - Validar los datos de muestra en
iceberg_mv_demo.category
para confirmar quecatid=4
ha sido actualizado ycatid=3
ha sido eliminado de la tabla. - Usando Editor de consultas v2Desempolvar la clarividencia materializada
mv_category
. - Valide la modernización incremental de la clarividencia materializada luego de que se actualizó una fila y se eliminó otra.
Mejoras de rendimiento
Para comprender las mejoras de rendimiento de la modernización incremental en comparación con el recálculo completo, utilizamos el unificado de la industria Prueba comparativa TPC-DS utilizando conjuntos de datos de 3 TB para tablas Iceberg configuradas en copia en escritura. En nuestro punto de remisión, las tablas de hechos se almacenan en Amazon S3, mientras que las tablas de dimensiones están en Redshift. Nosotros creamos 34 vistas materializadas que representa diferentes casos de uso de clientes en un clúster aprovisionado por Redshift de tamaño ra3.4xl con 4 nodos. aplicamos 1% inserciones y eliminaciones en tablas de hechos, es aseverar, tablas store_sales
, catalog_sales
y web_sales
. Ejecutamos las inserciones y eliminaciones con Spark SQL en EMR sin servidor. Actualizamos las 34 vistas materializadas mediante modernización incremental y medimos latencias de modernización. Repetimos el tentativa utilizando un nuevo cálculo completo.
Nuestros experimentos muestran que la modernización incremental proporciona mejoras sustanciales en el rendimiento con respecto al recálculo completo. Luego de las inserciones, se realizó una modernización incremental. 13,5 veces más rápido en promedio que el recálculo completo (mayor 43,8 veces, pequeño 1,8 veces). Luego de las eliminaciones, se realizó una modernización incremental. 15 veces más rápido en promedio (mayor 47X, pequeño 1,2X). Los siguientes gráficos ilustran la latencia de modernización.
Insertos
Elimina
Eliminar
Cuando haya terminado, elimine los medios que ya no necesite para evitar cargos continuos.
- Ejecute el venidero script para sisar los objetos de Amazon Redshift.
- Ejecute el venidero script para sisar las tablas de Apache Iceberg usando Atenea amazónica.
Conclusión
Las vistas materializadas en Amazon Redshift pueden ser una poderosa aparejo de optimización. Con la modernización incremental de las vistas materializadas en las tablas del laguna de datos, puede juntar los resultados calculados previamente de sus consultas en una o más tablas cojín, lo que proporciona un enfoque rentable para permanecer datos actualizados. Le recomendamos que actualice las cargas de trabajo de su laguna de datos y utilice la función de clarividencia materializada incremental. Si es nuevo en Amazon Redshift, pruebe la Tutorial de inclusión y usar el prueba gratuita para crear y aprovisionar su primer clúster y verificar con la función.
Ver Vistas materializadas en tablas de lagos de datos externos en Amazon Redshift Spectrum para consideraciones y mejores prácticas.
Sobre los autores
Raks Khare es un arquitecto senior de soluciones especializado en observación en AWS con sede en Pensilvania. Ayuda a clientes de diversas industrias y regiones a diseñar soluciones de observación de datos a escalera en la plataforma AWS. Fuera del trabajo, le gusta explorar nuevos destinos de viajes y restauración y advenir tiempo de calidad con su grupo.
Tahir Aziz es arquitecto de soluciones de observación en AWS. Ha trabajado en la construcción de almacenes de datos y soluciones de big data durante más de 15 abriles. Le encanta ayudar a los clientes a diseñar soluciones de observación de un extremo a otro en AWS. Fuera del trabajo, le gusta delirar y cocinar.
Raza Hafeez es directivo senior de productos en Amazon Redshift. Tiene más de 13 abriles de experiencia profesional en la creación y optimización de almacenes de datos empresariales y le apasiona permitir que los clientes se den cuenta del poder de sus datos. Se especializa en portar almacenes de datos empresariales a AWS Modern Data Architecture.
Enrico Siragusa es ingeniero sénior de incremento de software en Amazon Redshift. Contribuyó al procesamiento de consultas y vistas materializadas. Enrico tiene un M.Sc. en Ciencias de la Computación de la Universidad de Paris-Est y un Ph.D. en Bioinformática de la Escuela Internacional de Investigación Max Planck en Biología Computacional y Computación Científica en Berlín.