Logotipo de Zephyrnet

Anuncio de filtrado de datos para la integración zero-ETL de Amazon Aurora MySQL con Amazon Redshift | Servicios web de Amazon

Fecha:

A medida que su organización se vuelve más impulsada por los datos y los utiliza como fuente de ventaja competitiva, querrá ejecutar análisis de sus datos para comprender mejor los principales impulsores de su negocio para aumentar las ventas, reducir los costos y optimizar su negocio. Para ejecutar análisis de sus datos operativos, puede crear una solución que sea una combinación de una base de datos, un almacén de datos y una canalización de extracción, transformación y carga (ETL). ETL es el proceso que utilizan los ingenieros de datos para combinar datos de diferentes fuentes.

Para reducir el esfuerzo involucrado en la creación y el mantenimiento de canalizaciones ETL entre bases de datos transaccionales y almacenes de datos, anunció AWS. Integración de ETL cero de Amazon Aurora con Amazon Redshift at AWS re: Inventar 2022 y ahora está disponible de forma generalizada (GA) para Edición 3.05.0 compatible con MySQL de Amazon Aurora.

AWS ahora anuncia el filtrado de datos en integraciones de ETL cero, lo que le permite incorporar datos selectivos de la instancia de base de datos en integraciones de ETL cero entre Amazon Aurora MySQL y Desplazamiento al rojo de Amazon. Esta característica le permite seleccionar bases de datos y tablas individuales para replicarlas en su almacén de datos de Redshift para casos de uso de análisis.

En esta publicación, brindamos una descripción general de los casos de uso en los que puede utilizar esta función y brindamos orientación paso a paso sobre cómo comenzar con análisis operativos casi en tiempo real usando esta función.

Casos de uso de filtrado de datos

El filtrado de datos le permite elegir las bases de datos y tablas que se replicarán desde Amazon Aurora MySQL a Amazon Redshift. Puede aplicar varios filtros a la integración de ETL cero, lo que le permitirá adaptar la replicación a sus necesidades específicas. El filtrado de datos aplica una exclude or include regla de filtro y puede usar expresiones regulares para hacer coincidir múltiples bases de datos y tablas.

En esta sección, analizamos algunos casos de uso comunes para el filtrado de datos.

Mejore la seguridad de los datos excluyendo de la replicación las tablas que contienen datos PII

Las bases de datos operativas suelen contener información de identificación personal (PII). Esta es información de naturaleza confidencial y puede incluir información como direcciones postales, documentación de verificación del cliente o información de tarjetas de crédito.

Debido a las estrictas normas de cumplimiento de seguridad, es posible que no desee utilizar PII para sus casos de uso de análisis. El filtrado de datos le permite filtrar bases de datos o tablas que contienen datos de PII, excluyéndolas de la replicación en Amazon Redshift. Esto mejora la seguridad de los datos y el cumplimiento de las cargas de trabajo de análisis.

Ahorre en costos de almacenamiento y administre cargas de trabajo de análisis replicando las tablas necesarias para casos de uso específicos.

Las bases de datos operativas suelen contener muchos conjuntos de datos diferentes que no son útiles para el análisis. Esto incluye datos complementarios, datos de aplicaciones específicas y múltiples copias del mismo conjunto de datos para diferentes aplicaciones.

Además, es común crear diferentes casos de uso en diferentes almacenes de Redshift. Esta arquitectura requiere que haya diferentes conjuntos de datos disponibles en puntos finales individuales.

El filtrado de datos le permite replicar solo los conjuntos de datos necesarios para sus casos de uso. Esto puede ahorrar costos al eliminar la necesidad de almacenar datos que no se utilizan.

También puede modificar las integraciones de ETL cero existentes para aplicar una replicación de datos más restrictiva cuando lo desee. Si agrega un filtro de datos a una integración existente, Aurora reevaluará completamente los datos que se replican con el nuevo filtro. Esto eliminará los datos recién filtrados del punto final de Redshift de destino.

Para obtener más información sobre las cuotas para las integraciones de Aurora zero-ETL con Amazon Redshift, consulte Cuotas.

Comience con una replicación de datos pequeños y agregue tablas de forma incremental según sea necesario

A medida que se desarrollen más casos de uso de análisis en Amazon Redshift, es posible que desee agregar más tablas a una replicación ETL cero individual. En lugar de replicar todas las tablas en Amazon Redshift para satisfacer la posibilidad de que puedan usarse en el futuro, el filtrado de datos le permite comenzar poco a poco con un subconjunto de tablas de su base de datos Aurora y agregar gradualmente más tablas al filtro a medida que sean necesarias. .

Después de actualizar un filtro de datos en una integración de ETL cero, Aurora reevaluará completamente todo el filtro como si el filtro anterior no existiera, de modo que las cargas de trabajo que utilizan tablas previamente replicadas no se vean afectadas por la adición de nuevas tablas.

Mejore el rendimiento de las cargas de trabajo individuales mediante el equilibrio de carga de los procesos de replicación.

Para bases de datos transaccionales grandes, es posible que necesite equilibrar la carga de la replicación y cualquier procesamiento posterior en múltiples clústeres de Redshift para permitir la reducción de los requisitos informáticos para un punto final de Redshift individual y la capacidad de dividir cargas de trabajo en varios puntos finales. Al equilibrar las cargas de trabajo entre múltiples puntos finales de Redshift, puede crear de manera efectiva una arquitectura de malla de datos, donde los puntos finales tienen el tamaño adecuado para cargas de trabajo individuales. Esto puede mejorar el rendimiento y reducir el costo general.

El filtrado de datos le permite replicar diferentes bases de datos y tablas para separar puntos finales de Redshift.

La siguiente figura muestra cómo se pueden usar filtros de datos en integraciones de ETL cero para dividir diferentes bases de datos en Aurora para separar los puntos finales de Redshift.

Caso de uso de ejemplo

Considere el gráfico TICKET base de datos. La base de datos de muestra TICKIT contiene datos de una empresa ficticia donde los usuarios pueden comprar y vender entradas para diversos eventos. Los analistas de negocios de la compañía quieren utilizar los datos almacenados en su base de datos Aurora MySQL para generar varias métricas y les gustaría realizar este análisis casi en tiempo real. Por este motivo, la empresa ha identificado el ETL cero como una posible solución.

A lo largo de su investigación de los conjuntos de datos requeridos, los analistas de la compañía notaron que la tabla de usuarios contiene información personal sobre la información de usuario de sus clientes que no es útil para sus requisitos de análisis. Por lo tanto, quieren replicar todos los datos excepto la tabla de usuarios y utilizarán el filtrado de datos de ETL cero para hacerlo.

Preparar

Comience siguiendo los pasos en Guía de introducción para análisis operativos casi en tiempo real mediante la integración zero-ETL de Amazon Aurora con Amazon Redshift para crear una nueva base de datos Aurora MySQL, Amazon Redshift sin servidor punto final e integración ETL cero. Luego abra el editor de consultas Redshift v2 y ejecute la siguiente consulta para mostrar que los datos de la tabla de usuarios se han replicado correctamente:

select * from aurora_zeroetl.demodb.users;

Filtros de datos

Los filtros de datos se aplican directamente a la integración de ETL cero en Servicio de base de datos relacional de Amazon (Amazon RDS). Puede definir varios filtros para una única integración y cada filtro se define como un Include or Exclude tipo de filtro. Los filtros de datos aplican un patrón a las tablas de bases de datos existentes y futuras para determinar qué filtro se debe aplicar.

Aplicar un filtro de datos

Para aplicar un filtro para eliminar el users tabla de la integración ETL cero, complete los siguientes pasos:

  1. En la consola de Amazon RDS, elija Integraciones de ETL cero en el panel de navegación.
  2. Elija la integración zero-ETL para agregar un filtro.

El filtro predeterminado es incluir todas las bases de datos y tablas representadas por un include:*.* filtrar.

  1. Elige modificar.
  2. Elige Añadir filtro existentes Fuente .
  3. Elija el tipo de filtro, escoger Excluir.
  4. Expresión de filtro, introduce la expresión demodb.users.

El orden de las expresiones del filtro es importante. Los filtros se evalúan de izquierda a derecha y de arriba a abajo, y los filtros posteriores anularán los filtros anteriores. En este ejemplo, Aurora evaluará que se deben incluir todas las tablas (filtro 1) y luego evaluará que las demodb.users La tabla debe excluirse (filtro 2). Por lo tanto, el filtro de exclusión anula la inclusión porque está después del filtro de inclusión.

  1. Elige Continúar.
  2. Revise los cambios, asegurándose de que el orden de los filtros sea correcto y elija Guardar los cambios.

La integración se agregará y será en un Modificación estado hasta que se hayan aplicado los cambios. Esto puede tardar hasta 30 minutos. Para comprobar si los cambios han terminado de aplicarse, elija la integración zero-ETL y verifique su estado. Cuando se muestra como Active, los cambios se han aplicado.

Verificar el cambio

Para verificar que la integración de ETL cero se haya actualizado, complete los siguientes pasos:

  1. En el editor de consultas Redshift v2, conéctese a su clúster de Redshift.
  2. Elija (haga clic con el botón derecho) en aurora-zeroetl base de datos que creó y elija Refrescar.
  3. Expandir demodb y Tables.

El users La tabla ya no está disponible porque se eliminó de la replicación. Todas las demás mesas todavía están disponibles.

  1. Si ejecuta la misma instrucción SELECT anterior, recibirá un error que indica que el objeto no existe en la base de datos:
    select * from aurora_zeroetl.demodb.users;

Aplicar un filtro de datos mediante la AWS CLI

Los analistas de negocios de la compañía ahora entienden que se están agregando más bases de datos a la base de datos Aurora MySQL y quieren asegurarse de que solo las demodb La base de datos se replica en su clúster Redshift. Para ello, quieren actualizar los filtros sobre la integración zero-ETL con el Interfaz de línea de comandos de AWS (CLI de AWS).

Para agregar filtros de datos a una integración de ETL cero mediante la CLI de AWS, puede llamar al modificar-integración dominio. Además del identificador de integración, especifique el --data-filter parámetro con una lista separada por comas de include y exclude filtros.

Complete los siguientes pasos para modificar el filtro en la integración de ETL cero:

  1. Abra una terminal con la AWS CLI instalada.
  2. Ingrese el siguiente comando para enumerar todas las integraciones disponibles:
    aws rds describe-integrations

  3. Busque la integración que desea actualizar y copie el identificador de integración.

El identificador de integración es una cadena alfanumérica al final del ARN de integración.

  1. Ejecute el siguiente comando, actualizando con el identificador copiado del paso anterior:
    aws rds modify-integration --integration-identifier "<integration identifier>" --data-filter 'exclude: *.*, include: demodb.*, exclude: demodb.users'

Cuando Aurora evalúa este filtro, excluirá todo de forma predeterminada y luego solo incluirá el demodb base de datos, pero excluye la demodb.users mesa.

Los filtros de datos pueden implementar expresiones regulares para las bases de datos y las tablas. Por ejemplo, si desea filtrar cualquier tabla que comience con user, puede ejecutar lo siguiente:

aws rds modify-integration --integration-identifier "<integration identifier>" --data-filter 'exclude: *.*, include: demodb.*, exclude *./^user/'

Al igual que con el cambio de filtro anterior, la integración se agregará y estará en un Modificación estado hasta que se hayan aplicado los cambios. Esto puede tardar hasta 30 minutos. Cuando se muestra como Active, los cambios se han aplicado.

Limpiar

Para eliminar el filtro agregado a la integración de ETL cero, complete los siguientes pasos:

  1. En la consola de Amazon RDS, elija Integraciones de ETL cero en el panel de navegación.
  2. Elija su integración ETL cero.
  3. Elige modificar.
  4. Elige Eliminar junto a los filtros que deseas eliminar.
  5. También puede cambiar el Excluir tipo de filtro para Incluyendo.

Alternativamente, puede utilizar la CLI de AWS para ejecutar lo siguiente:

aws rds modify-integration --integration-identifier "<integration identifier>" --data-filter 'include: *.*'

  1. Elige Continúar.
  2. Elige Guardar los cambios.

El filtro de datos tardará hasta 30 minutos en aplicar los cambios. Después de eliminar los filtros de datos, Aurora vuelve a evaluar los filtros restantes como si el filtro eliminado nunca hubiera existido. Cualquier dato que anteriormente no coincidía con los criterios de filtrado pero que ahora sí los cumple se replica en el almacén de datos de Redshift de destino.

Conclusión

En esta publicación, le mostramos cómo configurar el filtrado de datos en su integración Aurora zero-ETL desde Amazon Aurora MySQL a Amazon Redshift. Esto le permite habilitar análisis casi en tiempo real de datos operativos y transaccionales mientras replica solo los datos necesarios.

Con el filtrado de datos, puede dividir las cargas de trabajo en puntos finales de Redshift separados, limitar la replicación de conjuntos de datos privados o confidenciales y aumentar el rendimiento de las cargas de trabajo replicando solo los conjuntos de datos necesarios.

Para obtener más información sobre la integración de Aurora zero-ETL con Amazon Redshift, consulte Trabajar con integraciones Aurora zero-ETL con Amazon Redshift y Trabajar con integraciones de ETL cero.


Sobre los autores

Jyoti Aggarwal es líder de gestión de productos para AWS zero-ETL. Lidera la estrategia comercial y de producto, incluida la conducción de iniciativas en torno al rendimiento, la experiencia del cliente y la seguridad. Aporta experiencia en computación en la nube, canalizaciones de datos, análisis, inteligencia artificial (IA) y servicios de datos, incluidas bases de datos, almacenes de datos y lagos de datos.


Sean Beath
es arquitecto de soluciones analíticas en Amazon Web Services. Tiene experiencia en el ciclo de vida completo de la modernización de plataformas de datos utilizando servicios de AWS y trabaja con clientes para ayudar a impulsar el valor analítico en AWS.

Gokul Sonararajan es ingeniero principal en AWS y recibió un doctorado de la Universidad de Toronto y ha estado trabajando en las áreas de almacenamiento, bases de datos y análisis.

punto_img

Información más reciente

punto_img