Lors du salon Oracle Open World qui s’est tenu à San Francisco il a été rappelé à plusieurs occasions la fonctionnalité "In-Memory" développée par Oracle pour permettre de stocker en mémoire le contenu d’une colonne compressée.
Habituellement, les données d’une base de données relationnelle sont stockées au format "ligne". Cela est pertinent et efficace lorsque l’on travaille sur quelques lignes qui ont beaucoup de colonnes, par exemple lorsque l’on recherche les informations (nom, prénom, adresse, téléphone, e-mail, etc.) d’un client dont on connaît le numéro d’abonné.
D’autres requêtes, en revanche, traitent beaucoup de volume, mais concernent peu de colonnes. Par exemple, "quelle est la somme des ventes par pays". Cela correspond davantage à du décisionnel, dans des environnements de Data Warehousing.
Dans ce cas, ne pas aborder le sujet au niveau des lignes, mais au niveau de la colonne est beaucoup plus pertinent.
D’autant plus qu’avec les taux de compression envisagés (et généralement constatés, car on a souvent assez peu de valeurs distinctes dans certaines de ces colonnes), cela permet d’obtenir des performances spectaculaires sur ces requêtes de type DWH. On peut même imaginer n’allouer qu’une zone de 10 Go supplémentaires en mémoire pour y stocker quelques colonnes, là où il n’aurait jamais été envisageable de placer la table entière qui occupe par exemple 100 Go. Le stockage en colonne évacue ainsi les données inutiles et la compression participe à la facilité de monter en mémoire des éléments qui n’auraient pas tenu jusqu’à présent.
Pour aller encore plus loin, comme les requêtes de ce type s’en trouvent énormément accélérées, il n’est plus nécessaire de s’appuyer sur des indexes créés spécialement pour cette utilisation. Cela signifie qu’en plus d’accélérer considérablement les requêtes de DWH, la partie transactionnelle peut elle aussi être allégée par le fait que de nombreux index destinés au DWH deviennent inutiles et peuvent être détruits. Les mises à jour profitent ainsi de la réduction du nombre d’index pour devenir elles aussi plus rapides.
Voilà bien des atouts pour envisager sérieusement que "In-Memory" soit une petite révolution qui devrait fortement faire parler d’elle dans les prochains mois. Un sujet à suivre de près pour les professionnels de la gestion des bases de données.