La foule se pressant dans le grand amphithéâtre du Moscone Center avant le très attendu keynote de Larry Ellison, PDG d'Oracle. Crédit photo D.R.
Le PDG a admis que, si la base d'Oracle avait depuis toujours recours au stockage en lignes, adapté aux charges transactionnelles, les universitaires et les chercheurs en base de données avaient remis en avant ces dernières années l'intérêt du stockage en colonnes pour l'analytique. Un format conçu spécifiquement pour accélérer les requêtes. On sait que cet avantage n'avait pas échappé à SAP. L'éditeur allemand professe ces vertus depuis quatre années maintenant et les exploite dans sa base de données en mémoire HANA.
Les deux formats stockés simultanément
Oracle vient donc aussi au stockage en colonnes. Mais il n'abandonne pas le stockage en lignes. « Nous avons une meilleure idée », assure Larry Ellison. La base Oracle 12c stockera simultanément dans les deux formats pour une même table. « Nous avons déjà le format ligne et ce que nous ajoutons, ce sont les mêmes données, mais réarrangées au format colonnes. Et nous plaçons les colonnes et les lignes dans la mémoire. Quand vous mettez les unes à jour, vous mettez aussi les autres à jour. » Les données sont cohérentes entre les deux formats.
Il est beaucoup plus rapide de balayer les données stockées en colonnes qu'en lignes, rappelle Larry Ellison. Donc, avec le stockage en colonnes, les requêtes s'exécutent 100 fois plus vite. Mais, paradoxalement, lorsque l'on maintient ces deux formats, les transactions s'exécutent aussi plus vite, a souligné le fondateur d'Oracle. Plus vite que lorsque l'on ne maintient que le seul format en lignes.
Pas de réécriture des applications
Sur OpenWorld, Larry Ellison a ensuite détaillé un peu la technologie de stockage en colonnes mise en oeuvre. Des explications comme il aime à donner généralement lors de ses keynotes, en prenant son temps. Les colonnes en mémoire sont hautement compressées et il n'y a pas besoin de journal de transactions, qui se fait déjà sur le stockage en lignes. Cela coûte en réalité extrêmement peu en ressources de conserver ce stockage en mémoire, a assuré le PDG. « Une fois que l'on a fait cela, chaque coeur de processeur d'un serveur peut balayer des milliards de valeurs ou de lignes par seconde ».
En fait, indique le dirigeant, les opérations OLTP sont ralenties par les index nécessaires aux requêtes analytiques. Insérer une ligne dans une table demande de mettre à jour 10 à 20 index. Le stockage en colonnes vient remplacer les index analytiques.
Aux clients Oracle rassemblés devant lui, Larry Ellison a indiqué qu'il leur était possible de tirer parti de cette option in-memory sans avoir à réécrire leurs applications. Pas de restrictions concernant SQL, pas de migrations de données et une technologie prête à être utilisée dans le cloud, a conclu le CEO.
Au cours de ce premier keynote, le PDG d'Oracle a également présenté le serveur M6-32 basé sur le tout récent processeur Sparc M6 et baptisé Big Memory Machine en raison de ses 32 To de DRAM permettant de placer applications et bases de données en mémoire.