Oracle couple un format JSON natif et JavaScript dans sa base de données
Oracle a (re) présenté les nouveautés d’Oracle 21c. Outre une fonctionnalité qui s’approche d’une blockchain, le fournisseur cloud amoncelle les capacités censées faire de son SGBD multimodèle un produit « tout-terrain ». Il faut principalement retenir l’apport d’un format JSON natif et le support de JavaScript.
Oracle est revenu sur les changements de la version 21c de sa base de données. Outre la fonctionnalité Table Blockchain, cette « Innovation Release » compile les nouveautés que le fournisseur n’a pas pu proposer dans l’édition 20c, restée au stand pour cause de coronavirus.
Questionnée par LeMagIT quant à l’ordre d’importance des différentes fonctionnalités d’Oracle 21c, Jenny Tsai Smith, Vice-Présidente, Oracle Database Product Management chez Oracle, n’hésite pas. Table Blockhain, passe avant le framework AutoML, le support de la mémoire persistante (PMEM) Intel Optane, les mises à jour de la gestion de l’in-memory et du Sharding.
Attardons-nous quelques lignes sur le framework AutoML. Il s’agit d’une capacité développée au sein du produit Oracle Machine Learning for Python (OML4Py), complémentaire aux versions SQL et R, déjà disponible. OML4Py comprend trois étapes, dont la sélection automatique d’un algorithme suivant un problème (comme une régression ou une classification), des features (attributs) associés et l’optimisation des hyperparamètres. La fonctionnalité s’appuie sur trente modèles préconstruits et une technique de metalearning pour choisir le modèle idéal à un job de machine learning.
Le support du PMEM doit lui offrir une mémoire plus rapide que du cache flash à tarif plus abordable que la DRAM couplée avec un mécanisme de conservation de données en cas de coupure de courant. Rien de surprenant à cela : il s’agit ni plus ni moins des caractéristiques promises par Intel.
Le Sharding fournit en principe un moyen de montée en charge linéaire, une haute disponibilité avec une isolation des instances. Oracle assure avoir simplifié la liaison aux shards avec un connecteur JDBC, tandis que le système cherche automatiquement un shard alternatif si celui employé par les utilisateurs tombe. Le CLI Sharding Advisor vise, lui, à faciliter la configuration du partitionnement de données à travers différentes régions du cloud ou plusieurs serveurs pour ceux qui n’auraient pas déjà adopté cette architecture (compatible à partir d’Oracle Database 10g).
« Nous pouvons traiter un million de transactions par seconde avec les sharding Oracle, alors que chaque shard se trouve dans une région géographique différente à travers le monde » vante Jenny Tsai-Smith.
Holger MuellerAnalyste, Constellation Research
Pourtant ce n’est pas ce que retiennent certains analystes. « Pour moi, Oracle pousse la base de données universelle – une base de données pour tous les besoins – de plus en plus loin », déclare Holger Mueller, un analyste de Constellation Research. « Elle ne dispose plus seulement des capacités attendues, mais inclut aussi des langages de programmation, avec le support de JavaScript et d’un format JSON natif ».
La firme dirigée par Larry Ellison prenait déjà en charge le format JSON depuis Oracle 12c, mais les données étaient stockées avec les types VARCHAR2 et des objets BLOB, ce qui entraînait plusieurs étapes de conversion et des performances moins bonnes que ces homologues natifs.
Désormais, le parsing est uniquement appliqué au moment de l’opération Insert et non plus à la lecture ou à la mise à jour. Le document est conservé dans « un format binaire interne ». « Les opérations de lecture et de mise à jour peuvent être 4 à 5 fois plus rapides et la mise à jour de très gros documents JSON 20 à 30 fois plus rapide », promet William Hardie, Vice President, Oracle Database Product Management chez Oracle, dans un article de blog.
En la matière, MongoDB et Couchbase se placent comme les références des bases de données orientées document, mais la fonctionnalité améliorée pourrait surtout concerner certains clients d’Oracle.
« S’il s’agit de savoir combien de clients s’intéressent à cette capacité, nous ne partageons pas de statistiques d’utilisation spécifiques, mais nous pouvons dire, à titre d’exemple, que les grands groupes du secteur financier emploient ou prévoient d’employer le format JSON natif », déclare Jenny Tsai-Smith auprès du MagIT.
GraalVM se fait (encore) remarquer
Le support d’un format JSON natif s’accompagne de la possibilité d’exécuter des « tâches computationnelles courtes » avec du code JavaScript au sein d’Oracle 21c. Pour ce faire, Oracle s’appuie sur son Multilanguage Engine (MLE), une distribution de GraalVM, projet open source de machine virtuelle « universelle » qui permet de lancer des applications développées en JavaScript, C, R, Scala, Python, entre autres.
Oracle se limite pour l’instant à un seul langage, mais promet d’ajouter le support pour Java, Python et d’autres dans de futures mises à jour. Un module JavaScript doit faciliter l’exécution des requêtes PL/SQL et SQL. Les utilisateurs d’APEX peuvent aussi profiter de cette capacité dans la plateforme low-code de l’éditeur qui repose sur la base de données.
Une version de test avant la prochaine LTS
Oracle 21c est désormais disponible depuis Oracle Cloud, Autonomous Database et sera déclinée plus tard sur différents supports on-premise (dont des systèmes Exadata, Windows et Linux).
Toutefois, Oracle rappelle qu’Oracle 21c est une « Innovation Release », soumise à un régime différent des « Long Term Releases ». « Les clients doivent savoir que, contrairement aux versions Long Term, les versions Innovation ont une fenêtre de support limitée (généralement ~2 ans). Par conséquent, dans l’intérêt de la continuité des activités, les clients qui utilisent encore des versions antérieures (par exemple 11gR2, 12cR1, 12cR2, 18c) sont encouragés à passer à la base de données Oracle 19c – la version Long Term actuelle avec un support jusqu’en avril 2027 », prévient William Hardie.
Autrement dit, Oracle 21c semble plus adapté aux environnements de développement et de tests pour roder des usages à déployer en production, lors de la prochaine mise à jour LTS. Logiquement, la version 22c de la base de données devait être la future Long Term Release, mais l’annulation de la 20c pourrait chambouler la feuille de route du fournisseur. Interrogé à ce sujet, un porte-parole d’Oracle ne nous a pas répondu avant la publication de cet article. Nous le mettrons à jour en conséquence.
Les propos d’Holger Mueller ont été recueillis par nos confrères de SearchDataManagement.com, propriété de TechTarget, également propriétaire du MagIT.