MariaDB
 sql >> Base de données >  >> RDS >> MariaDB

Quatre choses que vous ne saviez pas sur Amazon Aurora

Nous entendons souvent cette question :qu'en est-il d'Amazon Aurora ? Lors de la détermination du service de base de données le mieux géré pour votre organisation, plusieurs facteurs doivent être pris en compte - et un fil conducteur qui les traverse tous est le degré de contrôle dont vous avez besoin. Amazon accorde beaucoup d'importance à son offre Aurora DBaaS, mais - en fonction de vos besoins et de vos priorités - choisir d'exécuter une base de données telle que MariaDB sur Amazon EC2 ou un autre service non Amazon peut vous convenir mieux.

Voici quatre choses que vous ne saviez probablement pas sur Amazon Aurora.

Une base de données vieillissante et obsolète

Amazon Aurora 2.x utilise une ancienne version de MySQL 5.7.

Aurora 2.0.1 est sorti en février 2018, utilisant MySQL 5.7.12, lui-même sorti en avril 2016. Aurora 2.x utilise toujours une ancienne version de MySQL 5.7. Cependant, Amazon ne publie plus la version de maintenance qu'il utilise. Cela ne devrait pas surprendre. Il y a eu plus d'une douzaine de versions de maintenance de MySQL depuis la version 5.7.12. Combien de corrections de bogues qu'ils contiennent, Amazon a-t-il rétroporté ? 17… sur des centaines.

  • Aurora 2.02.0 :bogue n° 22833364
  • Aurora 2.02.3 :bogues #24929748, #26867509, #22843444, #25080442
  • Aurora 2.03.0 :bogues n°24929748, n°26867509, n°22843444, n°25080442
  • Aurora 2.03.3 :bogues n°25361251, n°26734162, n°27460607, n°22343910, n°23074801, n°25287633
  • Aurora 2.04.0 :bogue n° 26225783
  • Aurora 2.04.2 :bogue n° 24829050

Si vous pouviez choisir une nouvelle base de données, en choisiriez-vous une publiée il y a plus de trois ans, une qui manque depuis trois ans de corrections de bogues, de correctifs de sécurité, d'améliorations et de nouvelles fonctionnalités ?

Temps d'arrêt et interruption requis

Aurora nécessite des temps d'arrêt pour la maintenance. Alors que certaines maintenances sont facultatives et peuvent être reportées indéfiniment, d'autres maintenances telles que les correctifs de sécurité et de fiabilité sont non seulement nécessaires, mais entraînent des temps d'arrêt pendant une fenêtre de maintenance aléatoire de 30 minutes. De plus, les mises à niveau de la base de données (c'est-à-dire les mises à jour du moteur de base de données) entraînent 20 à 30 secondes d'indisponibilité car elles sont effectuées sur chaque instance de base de données d'un cluster en même temps.

La plate-forme MariaDB, d'autre part, prend en charge les mises à niveau progressives avec des basculements gracieux, permettant aux administrateurs de base de données d'effectuer une maintenance sans temps d'arrêt à la demande.

Au-delà de la maintenance et des mises à niveau, Aurora peut prendre jusqu'à deux minutes pour effectuer un basculement automatique, ce qui entraîne davantage de temps d'arrêt. De plus, le basculement automatique entraîne la perte de connexions, de sessions et de transactions en cours.

MariaDB Platform, contrairement à Aurora, prend en charge le clustering multimaître pour éliminer les temps d'arrêt dus à une panne inattendue. De plus, MariaDB Platform prend en charge la migration de connexion, la restauration de session et la relecture de transaction pour garantir que les échecs inattendus n'affectent pas les applications.

Manque de sécurité d'entreprise

Aurora manque de nombreuses fonctionnalités de sécurité d'entreprise attendues des bases de données modernes, notamment un pare-feu de base de données, le masquage dynamique des données, les rôles, la rotation des clés et TLS 1.3.

Aurora prend en charge Amazon Key Management Service, mais il ne prend pas en charge la rotation des clés pour une instance de base de données. Au lieu de cela, un alias de clé peut être utilisé pour modifier la clé des nouvelles instances de base de données. Ainsi, même si une nouvelle clé est ajoutée, les instances de base de données existantes continueront de chiffrer et de déchiffrer les données à l'aide de l'ancienne clé.

MariaDB Platform prend en charge la rotation des clés et lorsqu'une nouvelle clé est ajoutée, elle peut automatiquement rechiffrer les données à l'aide de la nouvelle clé, ce qui permet de supprimer l'ancienne clé.

Aurora ne dispose pas du puissant pare-feu de base de données et des fonctionnalités de masquage de base de données dynamique disponibles dans MariaDB Platform, et comme Aurora est basé sur une ancienne version de MySQL, il lui manque également des rôles. De plus, il est limité à TLS 1.0, 1.1 et 1.2.

Le plus petit dénominateur commun

Aurora fournit aux utilisateurs une base de données simple créée à l'aide d'un modèle d'emporte-pièce destiné à respecter le plus petit dénominateur commun. Alors que MariaDB Platform peut faire évoluer les lectures, les écritures et le stockage avec un partitionnement transparent via le moteur de stockage Spider, ou bénéficier d'un stockage optimisé en écriture et en espace sur les SSD via le moteur de stockage MyRocks (développé par Facebook), Aurora n'a ni l'un ni l'autre. Il est limité au moteur de stockage InnoDB.

Ensuite, il y a le stockage en colonnes distribué et le traitement massivement parallèle avec MariaDB ColumnStore. C'est encore un autre moteur de stockage non disponible dans Aurora. Alors qu'Amazon suggérerait d'utiliser Aurora pour le traitement transactionnel et Redshift pour l'analyse, les deux peuvent être effectués avec la plate-forme MariaDB - permettant un traitement hybride transactionnel/analytique (HTAP).

Au-delà des moteurs de stockage optimisés pour la charge de travail, il existe de nombreuses fonctionnalités disponibles dans la plate-forme MariaDB qui ne peuvent pas être trouvées dans Aurora, y compris la compatibilité de la base de données Oracle (c'est-à-dire PL/SQL), les tables temporelles, la restauration à un moment donné, la capture de données en continu. , un producteur Apache Kafka, un fractionnement lecture/écriture transparent, des contraintes de vérification, des expressions de valeur par défaut, des expressions de table communes, des opérateurs d'ensemble, des fonctions de fenêtre, des fonctions définies par l'utilisateur (scalaire, agrégat et fenêtre), des séquences et plus encore.

La propre expérience d'Amazon avec Aurora illustre l'importance des considérations ci-dessus. Peu de temps après avoir déplacé certaines de leurs bases de données vers Aurora, Amazon a connu des pannes généralisées et d'autres problèmes de base de données lors du Prime Day 2018. À l'approche du Prime Day 2019, nous souhaitons bonne chance à Amazon !