Exascale : Une architecture multitenante pour la base de données Oracle

Le service Exadata Database Service sur Exascale (ExaDB-XS) récemment lancé par Oracle vise à optimiser les performances des charges de travail de bases de données tout en réduisant les coûts.

Cette architecture Exascale, qui représente l’approche multitenante d’Oracle, alloue intelligemment des pools de ressources informatiques optimisées pour ses bases de données. Elle repose sur les mêmes appareils – X8M, X9M et X10M – que ceux utilisés dans le service Exadata sur infrastructure dédiée. Exadata, qui existe depuis une décennie, constitue l’infrastructure d’Oracle pour ses bases de données relationnelles.

La nouveauté réside dans l’accent mis sur les charges de travail d’intelligence artificielle (IA) et les bases de données vectorielles, ainsi qu’un modèle de tarification à l’utilisation.

Depuis la disponibilité de ses appareils X8M, Oracle a interconnecté les serveurs au stockage via un réseau RoCE, et ses serveurs de stockage sont dotés de la mémoire XRMEM, accessible via RDMA à partir de disques NVMe et HDD, formant ainsi trois niveaux de stockage : chaud, tiède et froid.

Cette logique a été adaptée à une architecture partagée, principalement en modifiant la gestion logicielle des bases de données.

« Auparavant, chaque locataire disposait de son propre calcul et stockage Exadata », a déclaré Kodi Umamageswaran, vice-président senior pour Exadata et les technologies de mise à l’échelle chez Oracle. « Désormais, un pool commun de calcul et de stockage Exascale gérera des milliers de locataires et des millions de bases de données. »

un plan de contrôle Exascale spécifique est utilisé pour gérer les machines virtuelles (VM) et le stockage.

Traditionnellement, Oracle représentait chaque disque dur dans le système d’exploitation via un numéro d’unité logique (LUN) et gérait tous les actifs logiques sous forme de fichiers, tels que les données dans une base de données, les instantanés, les journaux de réécriture, les clones et les blocs de stockage.

Avec Oracle ASM, chaque type de fichier est désormais partagé par groupe de disques associés à la base de données, ses fichiers de récupération, ses instantanés et sa configuration de stockage étendue, garantissant ainsi la redondance des données et leur séparation entre volumes de stockage distincts.

Avec Exascale, c’est le type de fichier qui déterminera la redondance. Des modèles permettent de configurer les niveaux de redondance, et le plan de contrôle veille à ce que les données ne soient pas stockées sur le même disque.

De plus, les fichiers sont divisés en « étendues » de 8 Mo, une taille choisie pour optimiser les performances dans l’architecture multitenante. « Ces fragments de 8 Mo sont suffisamment grands pour garantir de bonnes performances séquentielles lors de la lecture de données contiguës », a expliqué Umamageswaran. « Et suffisamment petits pour permettre la distribution d’une base de données à travers le cloud de stockage afin de partager la charge d’E/S. »

Les étendues sont allouées à des seaux de stockage via un code de hachage, et une table de correspondance indique sur quel disque elles sont stockées. « Toutes les étendues résidant dans un seau sont stockées de manière redondante sur trois disques répartis sur trois serveurs de stockage pour se protéger contre les pannes de stockage et les interruptions de service », a ajouté Umamageswaran.

Le nombre maximum de seaux est fixé à 100 000, ce qui est suffisant pour partager les données entre des milliers de serveurs de stockage tout en étant assez petit pour que la table de correspondance soit conservée en cache dans les serveurs de bases de données clients.

Performance équivalente à une infrastructure dédiée

Cette architecture, qui utilise un réseau RoCE et un protocole de connexion RDMA, permet d’atteindre des performances similaires à celles des services Exadata dédiés. Cela se traduit par un débit de 2 880 Go/s avec des charges de travail de référence génériques et une latence de 17 µs avec les serveurs X10M.

Une telle performance découle de la hiérarchisation des données en temps réel et de l’automatisation de la parallélisation du traitement SQL, entre autres.

Les développeurs peuvent tirer parti de la possibilité de créer des clones de bases de données, qu’ils soient complets ou « fins », à partir d’une base de données en production ou d’un instantané. La technologie de redirection à l’écriture réduit la capacité de stockage requise pour les clones, car ceux-ci partagent des blocs de la base de données d’origine sans enregistrer de nouvelles données. La plupart de ces fonctions existent déjà.

Au lieu de groupes de disques, les administrateurs voient désormais des « coffres » attachés aux clusters de VM. Ces coffres sont des conteneurs de stockage logiques qui tirent des ressources des serveurs physiques connectés aux clusters de VM.

Les coffres représentent une nouvelle manière de travailler plus visible pour les administrateurs, car ils sont utilisés directement par la base de données Oracle à la place des groupes de disques ASM.

Lors du déploiement, il est possible de configurer les VM, les coffres attachés et de provisionner l’image du conteneur de base de données de la même manière que le réseau cloud virtuel, ainsi que ses réseaux clients et de sauvegarde.

Les administrateurs peuvent déployer entre deux et dix VM, chacune se voyant attribuer un nombre élastique de cœurs par heure selon le schéma ECPU d’Oracle. Un coffre peut contenir entre 300 Go et 100 To d’espace de stockage.

Coûts réduits à une échelle plus petite

Grâce à l’architecture multitenante, ExaDB-XS sera 95 % moins cher que l’infrastructure cloud Exadata X9M dédiée.

Pour une configuration de base (y compris la licence) utilisant un rack X9M d’un quart – c’est-à-dire deux serveurs de base de données pour trois serveurs de stockage – l’infrastructure cloud Exadata dédiée coûte environ 10 000 € par mois, contre environ 330 € par mois avec l’infrastructure Exascale.

Il faut ajouter les services de base de données Exadata, que Oracle facture en fonction du traitement via RDMA. Une instance de base d’ExaDB-XS coûte environ 4 000 € par mois, contre 13 700 € pour une instance X9M dédiée dans le cloud, avec 4 OCPU (8 vCPU) associées au service de base de données Exadata. Cela représente une économie d’environ 70 %, selon le fournisseur.

Bien que l’instance X9M d’un quart de rack ait une capacité de stockage plus importante (190 To), 4 OCPU ne suffisent pas pour traiter cette quantité de données. Ainsi, Exadata Exascale peut ne pas être moins cher pour la même capacité de stockage.

« Le faible coût d’Exascale permet aux grandes entreprises et aux PME de l’utiliser pour de petites charges de travail », a déclaré Umamageswaran.

Les analystes s’accordent à dire qu’Oracle continue d’innover face à la concurrence de rivaux tels que PostgreSQL et ses variantes, soutenues par de grands déploiements parmi les géants du cloud, ainsi que MongoDB. Oracle a été lent à proposer une tarification basée sur l’utilisation, mais semble déterminé à rattraper son retard.

À l’avenir, Exadata Exascale sera l’architecture sous-jacente pour tous les services de bases de données dans l’infrastructure cloud d’Oracle, selon Umamageswaran.

Show Comments (0)
Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *