Logo Zéphyrnet

Annonce du filtrage des données pour l'intégration zéro ETL d'Amazon Aurora MySQL avec Amazon Redshift | Services Web Amazon

Date :

À mesure que votre organisation est de plus en plus axée sur les données et les utilise comme source d'avantage concurrentiel, vous souhaiterez exécuter des analyses sur vos données pour mieux comprendre vos principaux moteurs d'activité afin d'augmenter les ventes, de réduire les coûts et d'optimiser votre entreprise. Pour exécuter des analyses sur vos données opérationnelles, vous pouvez créer une solution combinant une base de données, un entrepôt de données et un pipeline d'extraction, de transformation et de chargement (ETL). ETL est le processus utilisé par les ingénieurs de données pour combiner des données provenant de différentes sources.

Afin de réduire les efforts nécessaires à la création et à la maintenance de pipelines ETL entre les bases de données transactionnelles et les entrepôts de données, AWS a annoncé Intégration Amazon Aurora zéro ETL avec Amazon Redshift at AWS re: Invent 2022 et est maintenant généralement disponible (GA) pour Amazon Aurora MySQL compatible édition 3.05.0.

AWS annonce désormais le filtrage des données sur les intégrations zéro ETL, vous permettant d'importer des données sélectives de l'instance de base de données sur les intégrations zéro ETL entre Amazon Aurora MySQL et Redshift d'Amazon. Cette fonctionnalité vous permet de sélectionner des bases de données et des tables individuelles à répliquer dans votre entrepôt de données Redshift pour les cas d'utilisation d'analyse.

Dans cet article, nous fournissons un aperçu des cas d'utilisation dans lesquels vous pouvez utiliser cette fonctionnalité et fournissons des conseils étape par étape sur la façon de démarrer avec des analyses opérationnelles en temps quasi réel à l'aide de cette fonctionnalité.

Cas d'utilisation du filtrage des données

Le filtrage des données vous permet de choisir les bases de données et les tables à répliquer d'Amazon Aurora MySQL vers Amazon Redshift. Vous pouvez appliquer plusieurs filtres à l'intégration zéro ETL, vous permettant d'adapter la réplication à vos besoins spécifiques. Le filtrage des données applique soit un exclude or include règle de filtrage et peut utiliser des expressions régulières pour faire correspondre plusieurs bases de données et tables.

Dans cette section, nous abordons quelques cas d'utilisation courants du filtrage des données.

Améliorez la sécurité des données en excluant les tables contenant des données PII de la réplication

Les bases de données opérationnelles contiennent souvent des informations personnellement identifiables (PII). Il s'agit d'informations de nature sensible et peuvent inclure des informations telles que des adresses postales, des documents de vérification du client ou des informations de carte de crédit.

En raison de réglementations strictes en matière de conformité en matière de sécurité, vous ne souhaiterez peut-être pas utiliser les informations personnelles pour vos cas d'utilisation d'analyse. Le filtrage des données vous permet de filtrer les bases de données ou les tables contenant des données PII, en les excluant de la réplication vers Amazon Redshift. Cela améliore la sécurité des données et la conformité avec les charges de travail d'analyse.

Économisez sur les coûts de stockage et gérez les charges de travail d'analyse en répliquant les tables requises pour des cas d'utilisation spécifiques.

Les bases de données opérationnelles contiennent souvent de nombreux ensembles de données différents qui ne sont pas utiles pour l'analyse. Cela inclut des données supplémentaires, des données d'application spécifiques et plusieurs copies du même ensemble de données pour différentes applications.

De plus, il est courant de créer différents cas d'utilisation sur différents entrepôts Redshift. Cette architecture nécessite que différents ensembles de données soient disponibles dans des points de terminaison individuels.

Le filtrage des données vous permet de répliquer uniquement les ensembles de données requis pour vos cas d'utilisation. Cela peut réduire les coûts en éliminant le besoin de stocker des données qui ne sont pas utilisées.

Vous pouvez également modifier les intégrations zéro ETL existantes pour appliquer une réplication de données plus restrictive si vous le souhaitez. Si vous ajoutez un filtre de données à une intégration existante, Aurora réévaluera entièrement les données répliquées avec le nouveau filtre. Cela supprimera les données nouvellement filtrées du point de terminaison Redshift cible.

Pour plus d'informations sur les quotas pour les intégrations Aurora zéro-ETL avec Amazon Redshift, consultez Quotas.

Commencez par une petite réplication de données et ajoutez progressivement des tables si nécessaire

À mesure que de plus en plus de cas d'utilisation d'analyse sont développés sur Amazon Redshift, vous souhaiterez peut-être ajouter davantage de tables à une réplication individuelle sans ETL. Plutôt que de répliquer toutes les tables sur Amazon Redshift pour satisfaire les chances qu'elles soient utilisées à l'avenir, le filtrage des données vous permet de commencer petit avec un sous-ensemble de tables de votre base de données Aurora et d'ajouter progressivement d'autres tables au filtre selon vos besoins. .

Une fois qu'un filtre de données sur une intégration zéro ETL est mis à jour, Aurora réévaluera entièrement l'intégralité du filtre comme si le filtre précédent n'existait pas, de sorte que les charges de travail utilisant des tables précédemment répliquées ne soient pas affectées par l'ajout de nouvelles tables.

Améliorez les performances des charges de travail individuelles en équilibrant les processus de réplication

Pour les grandes bases de données transactionnelles, vous devrez peut-être équilibrer la charge de la réplication et de tout traitement en aval sur plusieurs clusters Redshift afin de permettre une réduction des exigences de calcul pour un point de terminaison Redshift individuel et la possibilité de répartir les charges de travail sur plusieurs points de terminaison. En équilibrant la charge des charges de travail sur plusieurs points de terminaison Redshift, vous pouvez créer efficacement une architecture de maillage de données, dans laquelle les points de terminaison sont correctement dimensionnés pour les charges de travail individuelles. Cela peut améliorer les performances et réduire le coût global.

Le filtrage des données vous permet de répliquer différentes bases de données et tables pour séparer les points de terminaison Redshift.

La figure suivante montre comment vous pouvez utiliser des filtres de données sur des intégrations zéro ETL pour diviser différentes bases de données dans Aurora afin de séparer les points de terminaison Redshift.

Exemple de cas d'utilisation

Considérons le BILLET base de données. L'exemple de base de données TICKIT contient des données provenant d'une société fictive où les utilisateurs peuvent acheter et vendre des billets pour divers événements. Les analystes commerciaux de l'entreprise souhaitent utiliser les données stockées dans leur base de données Aurora MySQL pour générer diverses mesures et souhaitent effectuer cette analyse en temps quasi réel. Pour cette raison, la société a identifié le zéro ETL comme une solution potentielle.

Tout au long de leur enquête sur les ensembles de données requis, les analystes de la société ont noté que le tableau des utilisateurs contient des informations personnelles sur leurs utilisateurs clients qui ne sont pas utiles pour leurs besoins d'analyse. Par conséquent, ils souhaitent répliquer toutes les données à l'exception de la table des utilisateurs et utiliseront le filtrage des données zéro-ETL pour ce faire.

installation

Commencez par suivre les étapes de Guide de démarrage pour l'analyse opérationnelle en temps quasi réel à l'aide de l'intégration Amazon Aurora zéro ETL avec Amazon Redshift pour créer une nouvelle base de données Aurora MySQL, Amazon Redshift sans serveur point de terminaison et intégration zéro ETL. Ouvrez ensuite l'éditeur de requêtes Redshift v2 et exécutez la requête suivante pour montrer que les données de la table des utilisateurs ont été répliquées avec succès :

select * from aurora_zeroetl.demodb.users;

Filtres de données

Les filtres de données sont appliqués directement à l'intégration zéro ETL sur Service de base de données relationnelle Amazon (AmazonRDS). Vous pouvez définir plusieurs filtres pour une seule intégration, et chaque filtre est défini comme un Include or Exclude type de filtre. Les filtres de données appliquent un modèle aux tables de base de données existantes et futures pour déterminer quel filtre doit être appliqué.

Appliquer un filtre de données

Pour appliquer un filtre pour supprimer le users table de l'intégration zéro-ETL, procédez comme suit :

  1. Sur la console Amazon RDS, choisissez Intégrations sans ETL dans le volet de navigation.
  2. Choisissez l’intégration zéro ETL à laquelle ajouter un filtre.

Le filtre par défaut consiste à inclure toutes les bases de données et tables représentées par un include:*.* filtre.

  1. Selectionnez modifier.
  2. Selectionnez Ajouter un filtre dans l' Identifier .
  3. Pour Choisissez le type de filtre, choisissez Exclure.
  4. Pour Expression de filtre, saisissez l'expression demodb.users.

L’ordre des expressions de filtre est important. Les filtres sont évalués de gauche à droite, de haut en bas, et les filtres suivants remplaceront les filtres précédents. Dans cet exemple, Aurora évaluera que chaque table doit être incluse (filtre 1), puis évaluera que la demodb.users Le tableau doit être exclu (filtre 2). Le filtre d'exclusion remplace donc l'inclusion car il se situe après le filtre d'inclusion.

  1. Selectionnez Continuer.
  2. Vérifiez les modifications, en vous assurant que l'ordre des filtres est correct, puis choisissez Enregistrer les modifications.

L'intégration sera ajoutée et se fera dans un Modification état jusqu'à ce que les modifications aient été appliquées. Cela peut prendre jusqu'à 30 minutes. Pour vérifier si les modifications ont fini de s'appliquer, choisissez l'intégration zéro-ETL et vérifiez son statut. Quand il apparaît comme Actif, les modifications ont été appliquées.

Vérifier le changement

Pour vérifier que l'intégration zéro-ETL a été mise à jour, procédez comme suit :

  1. Dans l'éditeur de requêtes Redshift v2, connectez-vous à votre cluster Redshift.
  2. Choisissez (clic droit) le aurora-zeroetl base de données que vous avez créée et choisissez Refresh.
  3. Développer vous demodb ainsi que Tables.

La users La table n'est plus disponible car elle a été supprimée de la réplication. Toutes les autres tables sont toujours disponibles.

  1. Si vous exécutez la même instruction SELECT que précédemment, vous recevrez une erreur indiquant que l'objet n'existe pas dans la base de données :
    select * from aurora_zeroetl.demodb.users;

Appliquer un filtre de données à l'aide de l'AWS CLI

Les analystes commerciaux de l'entreprise comprennent désormais que davantage de bases de données sont ajoutées à la base de données Aurora MySQL et veulent garantir uniquement les demodb la base de données est répliquée sur leur cluster Redshift. À cette fin, ils souhaitent mettre à jour les filtres sur l'intégration zéro-ETL avec le Interface de ligne de commande AWS (AWS CLI).

Pour ajouter des filtres de données à une intégration zéro ETL à l'aide de l'AWS CLI, vous pouvez appeler le modifier-intégration commande. En plus de l'identifiant d'intégration, précisez le --data-filter paramètre avec une liste de include ainsi que exclude filtres

Effectuez les étapes suivantes pour modifier le filtre sur l'intégration zéro-ETL :

  1. Ouvrez un terminal avec l'AWS CLI installée.
  2. Entrez la commande suivante pour répertorier toutes les intégrations disponibles :
    aws rds describe-integrations

  3. Recherchez l'intégration que vous souhaitez mettre à jour et copiez l'identifiant d'intégration.

L'identifiant d'intégration est une chaîne alphanumérique à la fin de l'ARN d'intégration.

  1. Exécutez la commande suivante, en mettant à jour avec l'identifiant copié de l'étape précédente :
    aws rds modify-integration --integration-identifier "<integration identifier>" --data-filter 'exclude: *.*, include: demodb.*, exclude: demodb.users'

Lorsqu'Aurora évalue ce filtre, elle exclura tout par défaut, puis inclura uniquement les demodb base de données, mais excluez la demodb.users tableau.

Les filtres de données peuvent implémenter des expressions régulières pour les bases de données et les tables. Par exemple, si vous souhaitez filtrer les tables commençant par user, vous pouvez exécuter ce qui suit :

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

Comme pour le changement de filtre précédent, l'intégration sera ajoutée et se fera dans un Modification état jusqu'à ce que les modifications aient été appliquées. Cela peut prendre jusqu'à 30 minutes. Quand il apparaît comme Actif, les modifications ont été appliquées.

Nettoyer

Pour supprimer le filtre ajouté à l'intégration zéro-ETL, procédez comme suit :

  1. Sur la console Amazon RDS, choisissez Intégrations sans ETL dans le volet de navigation.
  2. Choisissez votre intégration zéro ETL.
  3. Selectionnez modifier.
  4. Selectionnez Effacer à côté des filtres que vous souhaitez supprimer.
  5. Vous pouvez également modifier le Exclure type de filtre à Comprendre.

Vous pouvez également utiliser l'AWS CLI pour exécuter les opérations suivantes :

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

  1. Selectionnez Continuer.
  2. Selectionnez Enregistrer les modifications.

Le filtre de données prendra jusqu'à 30 minutes pour appliquer les modifications. Une fois les filtres de données supprimés, Aurora réévalue les filtres restants comme si le filtre supprimé n'avait jamais existé. Toutes les données qui ne correspondaient pas auparavant aux critères de filtrage, mais qui le sont désormais sont répliquées dans l'entrepôt de données Redshift cible.

Conclusion

Dans cet article, nous vous avons montré comment configurer le filtrage des données sur votre intégration Aurora zéro-ETL d'Amazon Aurora MySQL vers Amazon Redshift. Cela vous permet d'activer des analyses en temps quasi réel sur les données transactionnelles et opérationnelles tout en répliquant uniquement les données requises.

Grâce au filtrage des données, vous pouvez diviser les charges de travail en points de terminaison Redshift distincts, limiter la réplication d'ensembles de données privés ou confidentiels et augmenter les performances des charges de travail en répliquant uniquement les ensembles de données requis.

Pour en savoir plus sur l'intégration d'Aurora zéro-ETL avec Amazon Redshift, consultez Travailler avec les intégrations Aurora zéro-ETL avec Amazon Redshift ainsi que Travailler avec des intégrations zéro ETL.


À propos des auteurs

Jyoti Aggarwal est responsable de la gestion de produits pour AWS zéro-ETL. Elle dirige la stratégie produit et commerciale, notamment en pilotant des initiatives autour des performances, de l'expérience client et de la sécurité. Elle apporte une expertise dans le cloud computing, les pipelines de données, l'analyse, l'intelligence artificielle (IA) et les services de données, notamment les bases de données, les entrepôts de données et les lacs de données.


Sean Beat
est architecte de solutions analytiques chez Amazon Web Services. Il possède de l'expérience dans le cycle de vie complet de la modernisation des plateformes de données à l'aide des services AWS et travaille avec les clients pour les aider à générer de la valeur analytique sur AWS.

Gokul Soundararajan est ingénieur principal chez AWS et titulaire d'un doctorat de l'Université de Toronto et a travaillé dans les domaines du stockage, des bases de données et de l'analyse.

spot_img

Dernières informations

spot_img