23 avantages et inconvénients d’Amazon Redshift

Amazon Redshift est un service de stockage de données à l’échelle du pétaoctet situé dans le cloud et entièrement géré pour vous. Ils vous offrent la possibilité de commencer avec plusieurs centaines de gigaoctets de données, puis d’évoluer selon les besoins de votre entreprise. Cette structure vous permet d’acquérir de nouvelles connaissances grâce à l’acquisition de données sur vos clients, les opportunités commerciales et d’autres besoins quotidiens.

Commencez avec cette opportunité en lançant un ensemble de nœuds. Ceux-ci sont connus sous le nom de « cluster Amazon Redshift ». Une fois que vous avez provisionné le cluster, vos données peuvent être téléchargées. À partir de là, vous pouvez exécuter des requêtes analytiques sur votre dossier d’information. Il utilise les mêmes outils basés sur SQL que la plupart des entreprises utilisent pour leurs besoins internes, rendant l’accès à vos données plus rapide et plus sécurisé car vous n’avez pas besoin de les héberger dans votre emplacement physique.

Au moment de la rédaction, Amazon offre à tous les nouveaux utilisateurs de Redshift un essai gratuit de 2 mois de ce service d’entreposage de données pour voir s’il répond à leurs besoins. Si vous commencez petit, le prix après l’essai gratuit commence à seulement 0,25 $ par heure, descendant à seulement 250 $ par an pour chaque téraoctet que vous stockez. Cela fait environ 10% du coût d’une solution similaire.

Si vous recherchez des solutions d’entreposage de données rapides et évolutives aujourd’hui, voici les avantages et les inconvénients d’Amazon Redshift à prendre en compte.

Liste des avantages Amazon Redshift

1. C’est l’une des solutions les plus rapides de ce type disponibles aujourd’hui.

Lorsqu’il s’agit de télécharger vos données ou de les interroger à des fins d’analyse ou de reporting, il y a moins de concurrents qui peuvent égaler ce que propose Redshift. Il utilise l’architecture MPP (Massively Parallel Processing) pour charger vos données à des vitesses incroyables. Il parallélisera et distribuera également vos requêtes sur plusieurs notes pour un accès rapide en cas de besoin. Vous avez également la possibilité avec ce service d’utiliser des magasins de données basés sur SSD, ce qui permet d’exécuter une requête complexe sans un engagement de temps massif.

2. Bénéficiez d’une solution d’entrepôt performante.

La conception de Redshift vous permet de tirer parti de la parallélisation dans vos opérations de sauvegarde et de restauration, en plus des exigences de charge de données que vous avez. Cette structure vous offre des taux de compression de données efficaces, vous permettant d’optimiser pleinement vos requêtes et votre distribution, quelle que soit la quantité de données que vous stockez. Ces avantages sont rendus possibles par la base de données de stockage en colonnes qui vous est proposée, optimisée pour les données répétitives. Les opérations d’E/S sont réduites sur le disque, ce qui améliore ses performances en conséquence.

3. Bénéficiez d’un accès à un processus d’apprentissage automatique.

Redshift utilise l’apprentissage automatique pour vous assurer de recevoir un maximum en fonction des charges de travail que vous avez. Pour ce faire, il utilise des algorithmes sophistiqués qui prédisent les temps d’exécution des requêtes entrantes. Ensuite, vous les affectez à n’importe quelle file d’attente qui optimise la vitesse de traitement pour vous. Cela signifie que vos rapports ou requêtes de tableau de bord passent par une file d’attente rapide au lieu d’une structure de routage standard, optimisant la vitesse de traitement pour fournir des résultats immédiats.

4. Offre la mise en cache des résultats.

Redshift utilise également la mise en cache des résultats pour fournir un temps de réponse inférieur à une seconde chaque fois qu’il y a des requêtes répétitives. Les outils de business intelligence et les tableaux de bord visualisés qui exécutent des requêtes répétées recevront une amélioration significative des performances grâce à cette structure. Recherche dans le cache pour déterminer si une exécution précédente a créé un résultat mis en cache. S’il y en a un et que les données n’ont pas changé, vous verrez le résultat mis en cache au lieu de réexécuter la requête.

5. Vous constaterez qu’il est très facile à mettre en œuvre.

Amazon Redshift est l’une des solutions d’entreposage de données les plus simples disponibles aujourd’hui pour configurer et exploiter d’un point de vue commercial. Tout ce que vous avez à faire est de vous connecter à votre console AWS, puis de suivre les commandes présentes pour déployer votre nouvel entrepôt de données. Il provisionnera automatiquement votre infrastructure à ce stade. Beaucoup de vos tâches administratives sont également automatisées, y compris la réplication et les sauvegardes, ce qui signifie que vous pouvez vous concentrer sur vos données plutôt que de les gérer. Vous pouvez également effectuer des ajustements pour vous adapter à des charges de travail spécifiques.

6. S’intègre avec des outils tiers.

Vous pouvez choisir d’améliorer vos interactions avec Redshift en travaillant avec une longue liste de fournisseurs tiers qui vous aident à transformer et à visualiser vos données. Il existe des partenaires de business intelligence, des experts en intégration de données, des services de conseil et d’assistance en intégration de systèmes, et des opportunités de requête et de modélisation de données, le tout avec des solutions certifiées qui sont garanties de fonctionner avec Amazon.

7. Vous découvrirez que c’est une solution rentable pour votre entreprise.

Si vous voulez commencer petit, vous pouvez profiter du tarif sans engagement de 0,25 $ de l’heure. Redshift est le seul fournisseur de ce type à proposer des tarifs à la demande sans frais initiaux. Cependant, si vous vous engagez pour une durée de 3 ans, vous pouvez économiser jusqu’à 75 % sur vos besoins de stockage de données dans le cloud. Votre tarif horaire est basé sur le nombre et le type de nœuds de votre cluster. Même avec un stockage dense, le coût maximum pour les produits de la génération actuelle est d’environ 7 $ par heure.

8. Vous pouvez choisir votre type de nœud lorsque vous travaillez avec Amazon Redshift.

Il existe deux types de nœuds disponibles pour optimiser vos besoins de stockage de données si vous choisissez Amazon Redshift. La première option, appelée Dense Compute, vous permet de créer une solution hautes performances pour les processeurs rapides, les disques SSD et de grandes quantités de mémoire. Vous pouvez évoluer encore plus loin pour utiliser des nœuds de stockage dense qui offrent un disque dur (HDD) plus grand à des prix inférieurs. Si vous souhaitez basculer entre les nœuds ou faire évoluer votre cluster, un seul appel d’API ou quelques clics depuis votre console suffisent pour faire le travail.

9. Fournit une sauvegarde cohérente de vos données.

Amazon Redshift offre une sauvegarde cohérente de vos données et fichiers. Il les récupère également en cas de panne ou de dommage. Les sous-tâches disponibles dans ce domaine incluent l’aide à la récupération de données continue et automatique, même en cas de défaillance d’un lecteur ou d’un nœud. Ils aident avec une sauvegarde de récupération après sinistre pour limiter la quantité de perte de données que vous rencontrez. La restauration des données se produit également à partir de différentes régions, selon la façon dont vous configurez votre compte. Ces avantages s’appliquent même si vous allez au-delà du premier octet que vous stockez dans le cloud avec ce service.

10. Recevez un chiffrement de bout en bout avec Amazon Redshift.

Tout ce que vous avez à faire est de configurer votre propriété de paramétrage pour utiliser SSL afin d’améliorer la sécurité des données en transit. Ce système de stockage de données utilise également le chiffrement accéléré matériel AES-256 pour vos données lorsqu’elles sont au repos. Lorsque vous sélectionnez le chiffrement pour vos données au repos, tout ce qui est écrit sur le disque, y compris les sauvegardes dont vous disposez, bénéficie de cet avantage de chiffrement. Redshift gère la gestion des clés par défaut.

11. Offre une isolation réseau.

Choisir Amazon Redshift vous donne l’avantage de configurer vos règles de pare-feu pour contrôler l’accès réseau aux clusters qui composent votre magasin de données. Vous pouvez exécuter Redshift dans Amazon VPC pour isoler vos clusters via votre propre réseau virtuel. Vous pouvez ensuite le connecter à votre infrastructure informatique existante si vous le souhaitez en utilisant un VPN IPsec crypté pour maximiser l’accès continu aux données.

12. Vous pouvez auditer tous vos appels d’API via Redshift.

Comme Amazon Redshift s’intègre à CloudTrail, vous pouvez auditer tous les appels d’API effectués via le système. Enregistre toutes vos opérations SQL, y compris les requêtes, les modifications de base de données et les tentatives de connexion. Vous pouvez ensuite accéder aux informations à l’aide de requêtes SQL sur les tables système ou choisir de les télécharger sur Amazon S3 dans un emplacement sécurisé. Le système est conforme aux normes SOC1, SOC2 et SOC3. Il répond également aux exigences PCI DSS niveau 1.

13. S’intègre nativement à l’écosystème d’analyse AWS.

Lorsque vous choisissez Amazon Redshift pour vos besoins d’entreposage de données, vous constaterez qu’il s’intègre parfaitement à l’écosystème d’analyse AWS.

• Vous pouvez utiliser AWS Glue pour extraire, transformer et charger des données dans Redshift.

• Capturez, transformez et chargez des données de streaming sur Redshift à l’aide d’Amazon Kinesis Data Firehose pour des analyses en temps quasi réel.

• Créez des tableaux de bord, des visualisations et des rapports via Amazon QuickSight.

Vous pouvez même utiliser AWS Database Migration Service si vous souhaitez améliorer votre vitesse de transfert de données vers Redshift avec un essai gratuit de 6 mois de leur service DMS.

14. Vous avez accès à un grand nombre de supports de formation pour Amazon Redshift.

Si vous accédez à la page des documents Amazon Redshift, vous trouverez une variété de ressources à votre disposition en tant que nouvel utilisateur. Il y a un aperçu complet de la façon de gérer le système lorsque vous avez des besoins de stockage de données. Vous avez accès à un guide de « démarrage » qui vous guide à travers toutes les étapes requises pour créer des clusters, des tables de base de données et des requêtes de test. Un guide d’administration de cluster vous montrera comment gérer correctement vos clusters, tandis qu’un guide de développeur de base de données fournit des explications sur la façon de créer, concevoir, interroger et maintenir les informations qui constituent la base de votre entrepôt de données.

Liste des inconvénients d’Amazon Redshift

1. Cela vous oblige à faire respecter l’unicité de votre part.

À l’heure actuelle, aucun cadre n’est disponible au moment de la rédaction qui permette à Amazon Redshift de vous aider à maintenir l’intégrité des données en utilisant des index uniques. Vous êtes responsable de cette structure à la fin du processus de stockage des données. Cela signifie qu’il n’y a aucune vérification des valeurs dans vos expressions ou colonnes pour déterminer si la clé d’index a été compromise de quelque manière que ce soit.

Les contraintes « vérification » et « unique » ne sont pas prises en charge en raison de cette structure. Cela signifie qu’il ne peut pas être déclaré, ce qui crée des limitations pour certaines agences.

2. Uniquement pris en charge pour le chargement parallèle avec des données spécifiques.

Le téléchargement parallèle est pris en charge pour DynamoDB, SE et Amazon EMR lorsque vous optez pour Redshift comme solution de stockage de données basée sur le cloud. Ces structures utilisent le MPP qui vous donne les hauts débits nécessaires à vos enquêtes. Cependant, si vous disposez d’une autre source pour vos données, cette fonctionnalité n’est pas du tout prise en charge. Vous devez utiliser des inserts ou des scripts JDBC pour charger les données dans Redshift. Votre autre option serait d’utiliser une solution ETL qui charge vos données dans l’entrepôt à partir d’une source différente.

3. Vous devez comprendre les clés de la distribution et de la classification.

Les clés de distribution et de tri détermineront comment vos données sont indexées et stockées lorsque vous choisissez Redshift pour vos besoins d’entreposage de données. Ce processus s’applique à tous les nœuds. Cela signifie que vous devez avoir une solide compréhension des concepts derrière ces clés, y compris la connaissance de la façon de les configurer correctement dans vos tables pour créer les performances optimisées que vous souhaitez grâce à cette solution.

Il ne peut y avoir qu’une seule clé de distribution pour chaque table. Vous ne pouvez pas le modifier plus tard, ce qui signifie que vous devez anticiper les futures charges de travail avant de prendre une décision. Les clés primaires peuvent également être déclarées, mais pas appliquées.

4. Il ne fonctionne pas comme une base de données d’applications en direct.

Vous constaterez qu’Amazon Redshift fait un excellent travail en exécutant des requêtes avec une quantité importante de données, en exécutant des rapports, en gérant des analyses, etc., mais ce n’est toujours pas une solution si vous essayez d’exécuter des applications Web en direct. Vous devrez entrer des données dans une couche de mise en cache ou opter pour une instance Postgres, si vous servez des données de Redshift vers n’importe quelle application Web.

Lors d’une opportunité de formation Redshift, Lars Kamp a interrogé les participants sur les problèmes qu’ils avaient rencontrés avec cette solution. 91 % ont indiqué que leurs demandes de renseignements étaient trop lentes. 64% ont déclaré que leurs planches étaient également lentes. 55% ont déclaré qu’il était difficile de comprendre ce qui se passait avec la base de données. Il faut du temps pour trouver des solutions à ces problèmes pour faire de Redshift l’outil puissant qu’il peut être.

5. Vous mettez vos données dans un système basé sur le cloud.

Il existe des avantages et des inconvénients uniques à prendre en compte lors de l’exécution de systèmes basés sur le cloud. Bien que le fait qu’un tiers gère vos données hors site puisse augmenter les problèmes de sécurité physique, vous mettez également la sécurité de vos données entre les mains de quelqu’un d’autre.

Certaines entreprises peuvent avoir des problèmes de confidentialité lors de l’utilisation de Redshift en raison de la valeur de sa propriété intellectuelle. Vous devez également penser à des problèmes de connexion, car le manque d’accès à un FAI limite votre capacité à accéder à ces services. Il y a aussi la possibilité de pannes, ce qui signifie que toute panne sera publique.

6. Vous êtes un peu en retard dans votre configuration Postgre.

Le framework Amazon Redshift est basé sur PostgreSQL 8.0.2. Cette version a plus de dix ans pour le moment. Depuis lors, il a connu des améliorations marquées dans plusieurs domaines, mais ces fonctionnalités ne sont actuellement pas disponibles si vous choisissez cette solution de stockage de données. Vous constaterez que bon nombre des fonctionnalités de base auxquelles vous vous attendez avec le SQL mis à jour ne sont pas disponibles via ce système.

7. Vous devez gérer les coûts d’intégration et de migration des données.

Étant donné que vous travaillez avec une solution d’entreposage de données au niveau du peroctet, la bande passante dont vous aurez besoin pour transmettre ces données doit être prise en compte lors des phases initiales de ce projet. Vos systèmes internes doivent envoyer les informations au système Redshift basé sur le cloud ou les envoyer via des clés USB à AWS à partir de votre expéditeur préféré. Si vous êtes une petite entreprise fonctionnant toujours avec une utilisation limitée des données, vous ne pourrez peut-être pas soumettre toutes vos données pour le stockage.

8. Aucune procédure stockée n’est disponible dans Amazon Redshift.

Lorsque vous décidez d’utiliser Redshift pour vos besoins d’entreposage de données, vous devrez analyser et exécuter vos fichiers de script SQL une instruction à la fois. C’est parce qu’il n’y a pas de procédures stockées à votre disposition. Il vérifie et compte les lignes affectées, puis exécute une requête de jointure complexe sur certaines vues ou tables de votre système pour générer les résultats nécessaires. À moins que vous ne soyez familiarisé avec les systèmes de gestion de bases de données, la courbe d’apprentissage de ces processus sera assez élevée pour la personne moyenne.

9. Leurs niveaux de performance diminuent à mesure que les groupes augmentent.

Si vous souhaitez obtenir des résultats cohérents lors de l’utilisation d’Amazon Redshift, vous devez conserver vos clusters en dessous de 75 % pour de meilleurs résultats. Si vous laissez les clusters se surcharger de plusieurs requêtes, vous commencerez également à avoir des problèmes de performances. Faites de votre mieux pour vous limiter à 10 requêtes simultanées ou moins lorsque vous travaillez avec cette solution d’entreposage de données. Vous devrez exécuter votre maintenance ou vos charges lourdes pendant des périodes calmes, qui peuvent se situer en dehors de la période que vous avez envisagée pour ce processus.

Si vous recherchez une solution de stockage de données abordable et efficace, il est essentiel de passer en revue les avantages et les inconvénients d’Amazon Redshift. Ce service présente certaines limites, mais vous constaterez également qu’il a des années-lumière d’avance sur certains concurrents, tels que Snowflake. Il faut un certain temps pour apprendre, surtout si vous avez besoin de scripts personnalisés pour accéder aux données en temps réel, bien que la plupart des agences utilisant ce service trouvent sa précision, sa cohérence et son évolutivité exactement ce dont elles ont besoin pour obtenir un plus grand succès.