Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL...

23
Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL, NewSQL) QUAND FAUT-IL ENVISAGER D’UTILISER UNE BASE NOSQL (PLUTOT QU’UNE BASE RELATIONNELLE) ? NOSQL : LE CHOIX DIFFICILE DE LA BONNE BASE (ET COMMENT BIEN LE FAIRE) LE IN-MEMORY CONVIENT-IL A VOTRE ENTREPRISE ? QUEL SGBD IN-MEMORY REPOND LE MIEUX A VOS BESOINS ?

Transcript of Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL...

Page 1: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL, NewSQL)

1 KEINE ZEIT

MEHR VERLIEREN

2 DIE FÜNF TOP-THEMEN

BEI DER SEPA-UMSTELLUNG

3 SAP ERP IN DREI

SCHRITTEN FRIST-

GERECHT UMSTELLEN

4 WAS BEI SEPA-DIENSTEN AUS

DER CLOUD ZU BEACHTEN IST

QUAND FAUT-IL ENVISAGER D’UTILISER UNE BASE NOSQL (PLUTOT QU’UNE BASE RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE DE LA BONNE BASE (ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL A VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY REPOND LE MIEUX A VOS BESOINS ?

Page 2: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

2

A l’heure du Big Data, du Cloud et des données

hétérogènes et non structurée, les bases NoSQL –

acronyme de « pas seulement SQL » - et leurs cousines

« In-Memory » changent le marché et sont plus adaptées

à certains usages que les SGBDR traditionnels… dont

certains deviennent également In-Memory par la magie

des extensions.

Après avoir abordé dans la première partie de ce « Grand

Guide des bases de données », les bases relationnelles,

honneur dans cette deuxième partie, aux bases qui

montent et à une tendance qui vise à mixer SQL et

NoSQL (pour capitaliser sur les compétences acquises) :

le NewSQL – ou comment requêter en SQL une base

NoSQL (voire In-Memory).

Précisons que ce guide ne se veut évidemment pas

exhaustif (et qu’il sera certainement mis à jour). Mais

qu’il ne se contente pas non plus de faire un tour du

marché, puisqu’il revient sur les critères et les éléments

clefs à prendre en compte pour choisir le bon

SGBD NoSQL ou le bon outil In-Memory en fonction de

vos besoins précis.

A lire également :

Le Guide Essentiel : In-Memory : où en sont les

technologies et les usages ?

• Philippe Ducellier

Présentation

INTRODUCTION

Page 3: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

3

Pour faire simple, les bases de données NoSQL

conviennent mieux quand vos données ne rentrent pas

bien dans les tables.

Nous travaillons avec des bases de données relationnelles

SQL depuis 40 ans : elles sont idéales pour le traitement

des transactions impliquant des données tabulaires

stockées dans des colonnes et des lignes. Nous pouvons

aussi analyser très efficacement ces données dans des

bases de données multidimensionnelles.

Les données qui se prêtent bien aux tables relationnelles

sont de type atomique. Cela signifie tout simplement

qu’elles peuvent être subdivisées jusqu’à arriver aux plus

petits composants manipulables.

Par exemple, nous stockons rarement le nom complet

d’un client dans un même champ. Quand on saisit les

données du client « M. Jacques Lemasson » dans une

base de données relationnelles, si nous souhaitons

pouvoir isoler toutes les personnes ayant pour civilité

« M. » et classer les clients par ordre alphabétique selon

leur nom de famille et leur prénom, nous devons stocker

les données du nom dans trois colonnes différentes d’une

table.

Aujourd’hui, une grande partie des données collectées ne

rentrent pas dans ce modèle de table : images, données

enregistrées par des capteurs, documents Word, flux

Twitter et autres données souvent appelées Big Data.

Et même si on arrive parfois à placer ces données dans

des tables, ce n’est pas forcément efficace.

On pourrait imaginer stocker chaque pixel d’une image

dans une ligne distincte d’une table relationnelle. Mais il

faut alors se poser la question suivante : quel code SQL

écrire pour déterminer si l’image comprend une

personne ?

Je ne veux même pas imaginer une seule seconde ce à

quoi ce code pourrait ressembler.

La bonne nouvelle, c’est que nous avons désormais des

moteurs de bases de données dédiés conçus pour

conserver et gérer le Big Data : les bases de données

NoSQL.

Les bases de données relationnelles nous imposent de

recourir à des schémas de données. Imaginez que ce

schéma est une façon de classer les données. Dans les

Quand faut-il envisager d’utiliser une base de données NoSQL (plutôt qu’une base relationnelle) ?

QUAND FAUT-IL

ENVISAGER D’UTILISER

UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

Page 4: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

4

bases de données relationnelles, il faut segmenter ces

données en unités atomiques, puis les organiser dans des

tableaux sous forme de colonnes et de lignes.

Il existe différents types de bases de données NoSQL, de

sorte que toute généralisation excessive serait trompeuse.

Mais globalement, ils ne nécessitent qu’un schéma très

simple, voire aucun.

Par exemple, certains systèmes de bases de données

NoSQL permettent d’enregistrer des fichiers image

directement dans la base de données sans altérer la

structure de celle-ci. On pourrait aussi stocker des

fichiers audio dans la même base de données.

Il devient beaucoup plus simple de placer des données

dans la base et on gagne en souplesse puisque la structure

des données n’est pas figée.

En conclusion, si vos données sont difficilement

stockables sous forme tabulaire ou interrogeables en

langage SQL, regardez donc du côté du NoSQL.

• Mark Whitehorn, University of Dundee Consulting

LES INFRASTRUCTURES

CONVERGÉES

EN FORTE CROISSANCE

EN EUROPE

QUAND FAUT-IL

ENVISAGER D’UTILISER

UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

Page 5: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

5

Les bases de données NoSQL ont été conçues pour

résoudre les problèmes de traitements de données en

volume, multi-sources et multi-formats, dans des

environnements Big Data.

Toutefois aucun distinguo n’est fait en matière de volume

ou diversité des données lorsqu’on parle de technologies

NoSQL, perdant ainsi les DSI et les responsables de la

donnée au milieu de nombreuses alternatives, difficiles à

évaluer.

« Le marché est aujourd’hui rempli de bases de données

NoSQL – je pense que nous sommes confrontés à deux

ou trois d’entre elles tous les jours », ironise Michael

Simone, en charge de l’ingénierie de la plateforme

CitiData de Citigroup, lors d’une présentation réalisée à

l’occasion de la conférence MongoDB World.

En réalité, Citi a circonscrit volontairement les usages de

la base MongoDB, comme alternative NoSQL aux bases

relationnelles, à un petit nombre d’applications, explique-

t-il. Toutefois, son intervention a mis l’accent sur un

point clé : la difficulté des entreprises à cibler la

technologie susceptible de répondre au mieux aux

problèmes et à leur application.

Remédier à cette difficulté commence par une bonne

compréhension des différents types de bases de données

NoSQL.

On peut classer celles-ci en quatre catégories : les bases

de données orientées document, les bases clé/valeur, les

bases en colonnes et les bases orientées graphes.

Elles ont toutes un point commun : le support de modèles

plus flexibles et dynamiques que ceux réalisés avec les

bases de données relationnelles traditionnelles.

Mais, chaque type de base NoSQL correspond à des

usages spécifiques, précise Nick Heudecker, analyste

chez Gartner. « Vous devez vous demander quel type de

données sont à manipuler et comment les applications

vont au final les utiliser. »

Les bases de données orientées document : une structure mixe

Les bases de données orientées document sont souvent

utilisées dans les systèmes de gestion de contenus, ainsi

NoSQL : le choix difficile de la bonne base (et comment bien le faire)

NOSQL :

LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT

BIEN LE FAIRE)

Page 6: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

6

que pour collecter et traiter des données à partir des

applications mobiles ou Web à fort trafic pour les

monitorer.

Comme l’indique leur nom, ces bases stockent les

données dans des structures identiques à celles de

documents, parfois sans même de schémas.

MongoDB, CouchDB Server, MarkLogic sont des

bases orientées document.

Michael Simone explique par exemple que son utilisation

de MongoDB est lié au fait que les développeurs de la

société étaient à la recherche d’un moyen pour résoudre

des problèmes de réplications de données, avec des

structures différentes, pour une application financière en

ligne.

L’application a d’abord été déployée sur une base

relationnelle, mais le traitement était lent et sujet à des

erreurs.

« Il est ainsi devenu évident que nous ne pouvions faire

face à tous les formats de données fournis par les data

scientists », se souvient-t-il.

Les schémas dynamiques de MongoDB se sont avérés

bien adaptés à cette application en évolution permanente.

« Nous avons découvert que nous pouvions modéliser

tout ce qui nous arrivait », explique-t-il. Et que cette

réplication et cette modélisation pouvaient être réalisé

bien plus rapidement qu’avec l’approche relationnelle.

Au final, les développeurs ont conçu un modèle en pré-

production bâti sur MongoDB en seulement quatre mois.

Les bases clé/valeur : la simplicité

Les bases de données clé/valeur, comme Aerospike,

Redis et Riak, sont la forme la plus simple des bases

NoSQL.

Elles associent des clés uniques à des valeurs dans des

données, avec pour objectif de renforcer fortement les

performances des applications reposant sur des jeux de

données relativement simple.

« Les bases clé/valeur sont très légères », explique Joe

Caserta, président de Caserta Concepts, une société de

services techniques et de conseil. « Nous pouvons

effectuer des recherches en quelques secondes. »

NOSQL :

LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT

BIEN LE FAIRE)

Page 7: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

7

Autre exemple, Flywheel Software utilise Riak, une base

développée par l’éditeur Basho Technologies (qui vient

de s'installer en France), pour motoriser une application

mobile de commande de taxis sur smartphone.

Cuyler Jones, qui a travaillé en tant qu’architecte en chef

chez Flywheel – il travaille désormais pour une autre

start-up - explique que la base peut être dimensionnée

pour répondre aux besoins en termes de traitement et de

trafic.

Ce qui, dans ce cas, est aussi important que la haute-

disponibilité ainsi que le support de la cohérence des

données de Riak, ajoute-t-il.

Les bases en colonnes

Les bases de données en colonnes conservent les données

dans des tables qui disposent d’un très grand nombre de

colonnes.Ce qui offre des hauts niveaux de performance

et de dimensionnement lorsqu’il faut traiter (et parcourir)

d’importants jeux de données.

Parmi les cas d’usages types, on retrouve la recherche sur

Internet, les applications Web à grande échelle ainsi que

les applications analytiques capables de traiter des péta-

octets de données. Accumulo, Cassandra et HBase en

sont des exemples.

Cette approche par colonnes a servi de fondation à une

application portant sur l’identification des

correspondances de l’ADN lancée en 2012 par

Ancestry.com, explique Jeremy Pollack, responsable du

développement dans la société, spécialisée dans la

généalogie.

Celle-ci s’est adossée à HBase et à Hadoop pour effectuer

les calculs sur l’ADN qui permettent de rechercher les

origines ethniques et géographiques d’un individu et

d'identifier des proches jusqu’alors inconnus.

Pour obtenir le bon niveau de performance, il a fallu faire

d’importants ajustements et configurer la base. Jeremy

Pollack décrit cette procédure comme quelque chose de

« bizarre ».

Pourquoi ? Parce qu'« il y a un million de boutons à

tourner. Il faut vraiment aimer se salir les mains. »

Toutefois, cette technologie NoSQL a permis à Ancestry

NOSQL :

LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT

BIEN LE FAIRE)

Page 8: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

8

de comparer quelque 700.000 points de données et

stocker des échantillons d’ADN pour identifier des

correspondances.

Les bases orientées graphes pour suivre les relations entre données

Les bases de données en graphes, comme InfiniteGraph

et Neo4j, stockent des éléments de données dans des

structures "en graphes" et permettent de créer des

associations entre eux pour, au final, servir de socle à des

moteurs de recommandations ou des réseaux sociaux.

Par exemple, une technologie de graphes peut être

utilisée pour identifier des relations entre différentes

personnes via leurs centres d’intérêts, illustre Alex

Trofymenko, en charge des questions technologiques

chez HealthUnlocked, une société spécialisée dans

l’information sur la santé.

Son équipe s’est adossée à Neo4j, de Neo Technology,

pour établir ce type de corrélations.

« Nous pouvons obtenir de nombreuses informations

d’une base en graphes. Par exemple, qu’un utilisateur

est très intéressé à la fois par le diabète et le sport. »

Des relations qui crééent de la valeur pour un site qui

cherche à utiliser des millions de requêtes et mots-clés, à

les associer aux bons termes sur la santé et à développer

une plateforme qui permet aux utilisateurs de trouver la

bonne information sur les traitements et les aides.

La fin du « dois-je aller chez Microsoft, Oracle ou IBM ? »

Avec ces multiples alternatives NoSQL, le processus de

sélection d’une base est très diffèrent de celui de ces

dernières années.

Une période surtout marquée, comme l’indique Joe

Caserta, par la question : « dois-je aller chez Microsoft,

Oracle ou IBM ? ».

Si toutefois cette kyrielle d’options est une bonne chose

pour les utilisateurs, le processus de sélection doit être

appréhendé avec prudence afin d’éviter de s’orienter vers

la mauvaise technologie.

• Jack Vaughan avec Cyrille Chausson et Philippe Ducellier

NOSQL :

LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT

BIEN LE FAIRE)

Page 9: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

9

Où trouver ces bases NoSQL

MongoDB

CouchDB

MarkLogic

Aerospike

Redis

Riak

Accumulo

Cassandra

HBase

InfiniteGraph

Neo4j

NOSQL :

LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT

BIEN LE FAIRE)

Page 10: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

10

L'utilisation de la technologie des bases de données In-

Memory est une tendance de plus en plus affirmée sur le

marché des systèmes de gestion des bases de données

(SGBD). Bien que le concept de traitement des données

en mémoire, les approches et les technologies adoptées

aussi bien pour les SGBD récents que pour ceux qui

existaient déjà le sont.

Les systèmes de gestion des bases de données In-Memory

(SGBD In-Memory) utilisent la mémoire cache comme

mémoire principale pour le stockage, la gestion et la

manipulation des données.

Traditionnellement, les systèmes stockent les données sur

des disques. La plupart d'entre eux transfèrent ces

données vers la mémoire dans un cache (ou un pool de

mémoires tampon) lorsque le système y accède. Ce

transfert en mémoire rend plus efficaces les accès

suivants aux données. Mais ces mouvements constants

entre les disques et la mémoire peuvent entraîner des

problèmes de performances.

Les systèmes de gestion des bases de données In-Memory

sont utilisés principalement pour améliorer les

performances des requêtes et des applications qui

accèdent aux données. Ils peuvent également bénéficier

d'un jeu d'instructions réduit compte tenu de la réduction

du nombre d'activités ayant besoin d'accéder aux données

(à la différence d'un accès à partir d'un disque).

Le système de base de données NewSQL est une autre

ramification des tendances In-Memory et NoSQL

actuelles.

Le concept de NewSQL consiste à adopterla tendance du

marché axée sur le NoSQL avec des architectures, des

configurations et des mises en oeuvre actuelles des bases

de données, mais pour prendre en charge le SQL, tirant

ainsi parti des connaissances de l'immense réservoir de

développeurs SQL. Les systèmes SGBD NewSQL ne

sont pas tous In-Memory, mais beaucoup d'entre eux le

sont.

Conditions du marché pour les bases de données In-Memory

L'idée d'accélérer les processus en utilisant la mémoire

n'est pas nouvelle. Mais alors, quels sont les facteurs qui

expliquent la tendance en faveur des SGBD In-Memory ?

Le In-Memory convient-il à votre entreprise ?

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 11: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

11

D'abord, la technologie utilisée est de plus en plus

répandue et de moins en moins coûteuse.

La quantité de mémoire disponible sur les serveurs

actuels continue d'augmenter, nombre d'entre eux offrant

32 téraoctets (To) de mémoire ou plus. De plus, le coût

de la mémoire continue de baisser ; actuellement, il est

possible d'acheter 8 Go de mémoire (RAM) pour 70

dollars, contre plusieurs centaines de dollars il y a à peine

quelques années.

Même si la mémoire vive n'est pas encore aussi bon

marché que les disques, son prix continue de diminuer et

en font un choix pertinent pour un nombre croissant

d'utilisations grâce à son rapport performances/prix,

compte tenu du gain en performances potentiel des

SGBD In-Memory par comparaison avec les SGBD

classiques utilisant des disques.

Mais le prix du matériel ne suffit pas à créer une

tendance. La nécessité d'accroître la vitesse dans les

applications récentes contribue au succès grandissant des

SGBD In-Memory. Les entreprises créent et adoptent

toujours plus d'applications Web en temps réel, qui

peuvent tirer parti des performances haut de gamme

qu'offre la technologie In-Memory.

Grâce à une fiabilité et une persistance des données

améliorées, les SGBD In-Memory répondent désormais

aux besoins en traitement transactionnel et analytique de

la plupart des entreprises.

Et avec la technologie actuelle de traitement dans la

mémoire, la persistance n'est plus un obstacle. Par nature,

la mémoire est une forme volatile de stockage. Si le

serveur n'est plus alimenté, les données en mémoire

seront perdues. Les SGDB In-Memory proposés

actuellement sur le marché ont été conçus de manière à ce

que les données qui sont dans la mémoire y restent même

après une panne.

Grâce à une fiabilité et une persistance des données

améliorées, le In-Memory répond désormais aux besoins

en traitement transactionnel et analytique de la plupart

des entreprises.

Types de bases de données In-Memory

A première vue, il peut sembler facile de définir le SGBD

In-Memory, mais le traitement des données en mémoire a

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 12: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

12

une longue histoire et a emprunté différents chemins.

L'une des premières formes de traitement des données en

mémoire a été mise au point par des programmeurs

COBOL qui avaient créé des tables en mémoire pour

stocker des données auxquelles un programme pouvait

accéder de nombreuses fois en cours d'exécution.

Bien sûr, ce système n'était pas une base de données,

mais c'était une forme primitive d'accès aux données en

mémoire adoptée pour accroître la vitesse de traitement.

A mesure que l'informatique entrait dans l'ère du SGBD,

les techniques ont évolué afin d'accéder aux données à

partir de la mémoire plutôt que des disques.

Tout administrateur de bases de données qui a utilisé

n'importe quel type de SGBD a probablement essayé de

faire en sorte qu'il accède aux données dans la mémoire

plutôt que sur des disques.

Les administrateurs de bases de données doivent alors

configurer les niveaux appropriés de mémoire pour

mettre les données en cache dans des pools de mémoires

tampon. La mise en cache permet aux données de rester

dans la mémoire en vue des accès suivants.

Il existe une autre forme de traitement des données en

mémoire qui consiste à utiliser des disques SSD. Ces

disques sont des périphériques de stockage qui

fonctionnent avec des puces mémoires plutôt qu'avec un

disque mécanique, afin d'assurer un stockage persistant

des données.

L'histoire des SSD remonte aux années 50, à l'époque des

gros ordinateurs centraux et des superordinateurs. Dans

les années 80, les bases de données des systèmes de

gestion informatiques étaient stockées sur un type de

disques SSD élémentaires.

Mais jusqu'à très récemment, cette technologie était trop

coûteuse pour être largement adoptée. Aujourd'hui, le

prix de la mémoire étant plus abordable, il est possible de

créer une forme simple de bases de données en mémoire

qui consiste à stocker les fichiers sur des disques SSD.

Mais un SGBD In-Memory aujourd'hui offre bien plus

qu'un SGBD standard stocké sur un SSD.

Le In-Memory actuel est conçu spécifiquement pour le

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 13: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

13

traitement en mémoire. Toutes les données sont stockées

dans la mémoire vive dynamique (ou DRAM) sur un

serveur, et toutes les opérations s'exécutent dans la

mémoire. Toutes les données sont dans la mémoire et ces

données peuvent être compressées pour améliorer les

performances de stockage et d'accès.

Il existe également une autre forme d’In-Memory

couramment utilisé qui comporte des bases de données en

mémoire sur disque hybrides.

Ces disques hybrides fonctionnent non seulement avec

des puces mémoires pour stocker les données, mais

également avec des disques durs.

L'avantage d'un SGBD hybride est sa flexibilité, qui

permet de concevoir les bases de données en équilibrant

les performances, le coût et la persistance. Nombre

d'applications peuvent bénéficier de la possibilité

d'accéder rapidement à certaines données, tandis que les

autres, moins souvent utilisées, sont stockées sur disque.

Les disques restent meilleur marché que les mémoires,

les compromis qu'une solution hybride rend possibles

séduisent donc beaucoup d'entreprises qui ont des besoins

variés et des budgets serrés.

La plupart des principaux fournisseurs de systèmes de

gestion de bases de données relationnelles (SGBDR)

ajoutent des fonctionnalités In-Memory à leur offre pour

compléter le stockage sur disque existant.

Les SGBD In-Memory peuvent être relationnels, NoSQL,

NewSQL ou tout autre type de SGBD. Vous pouvez les

utiliser pour le traitement opérationnel des transactions

ou pour des applications analytiques, d'informatique

décisionnelle (BI).

Bien sûr, chaque système a des caractéristiques et

fonctionnalités différentes qui peuvent lui permettre de

prendre en charge le traitement opérationnel mieux que le

traitement analytique (ou le contraire).

Avantages et inconvénients des bases de données In-Memory

Le point fort évident des SGBD In-Memory est le gain

important en termes de performances qu'ils permettent

d'obtenir par rapport aux systèmes fonctionnant avec des

disques.

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 14: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

14

On peut raisonnablement tabler sur des performances

trois à quatre fois supérieures avec un SGBD In-Memory,

et beaucoup plus dans certains cas.

Les offres In-Memory reçoivent traditionnellement un

bon accueil sur le marché des bases de données intégrées,

où l’on apprécie une architecture peu encombrante et non

invasive.

Mais le marché actuel du In-Memory, et ses nombreuses

offres de niveau professionnel, prend en charge bien plus

que les seules applications intégrées.

Ceci dit, si leurs performances sont tellement meilleures,

comment se fait-il que tout le monde n'ait pas migré vers

un SGBD In-Memory ?

En partie à cause de son coût. Comme nous l'avons vu

plus haut, la mémoire coûte toujours plus cher qu'un

disque, même si le prix des puces DRAM baisse d'année

en année.

Les autres facteurs qui en freinent l'adoption sont le

manque d'expertise en SGBD In-Memory, les mises en

oeuvre SGBD existantes (auxquelles sont ajoutées des

fonctionnalités In-Memory pour certaines) et les options

non standard ; parfois pour obtenir la vitesse la plus

élevée - vous pouvez avoir besoin d'utiliser une interface

autre qu'une simple interface SQL.

Enfin, la taille des bases de données était

traditionnellement un facteur limitatif, mais les avancées

technologiques suppriment cette contrainte.

Malgré cela, bien que les SGBD In-Memory puissent

gérer les très grandes bases de données, nombreux sont

ceux qui croient encore que les bases en mémoire doivent

avoir une taille limitée.

Il reste beaucoup d'efforts à faire pour informer afin de

battre cette idée en brèche. Il existe des exemples de

SGBD In-Memory dont la capacité peut atteindre plus

d'un téraoctet.

Cas d'utilisation des SGBD In-Memory, l’accent sur le temps réel

Les cas d'utilisation des SGBD In-Memory sont

nombreux et variés. Toute application susceptible de

bénéficier d'une hausse des performances peut

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 15: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

15

potentiellement tirer parti de l'utilisation d'un SGBD In-

Memory.

Pour ce qui est des utilisations spécifiques, ces systèmes

peuvent présenter un réel intérêt pour les applications

ayant des besoins en gestion des données en temps réel,

notamment celles utilisées dans les domaines des

télécoms et de la gestion des réseaux, des marchés

financiers, de la défense et du renseignement, des

voyages et des réservations, des centres d'appel et des

jeux.

Les applications qui ont besoin de données

immédiatement sont également de bonnes candidates, par

exemple l'informatique décisionnelle (BI) en temps réel,

la détection des fraudes, l'analytique en temps réel et les

données en streaming.

Facteurs supplémentaires à prendre en compte dans votre évaluation d'achat

Lorsque vous réfléchissez à l'achat d'un SGBD In-

Memory, d'autres éléments doivent être pris en

considération dans votre évaluation.

Bien que la plupart des SGBD In-Memory offrent des

options qui permettent de gérer la question de la

persistance des données, vous devez prêter

soigneusement attention à la manière dont la durabilité

des données est abordée.

Etant donné que les données sont dans la mémoire - qui

n'est pas persistante - le SGBD In-Memory doit offrir un

moyen de les stocker de manière permanente dans une

mémoire persistante. Que se passe-t-il si vous débranchez

le serveur ?

Il existe différents moyens de gérer la durabilité dans un

SGBD In-Memory.

L'une des possibilités consiste à journaliser les

transactions, afin que des instantanés (snpshots)

périodiques de la base soient enregistrés sur un support

non volatile. Si le système tombe en panne et doit être

redémarré, la base de données peut être restaurée à la

dernière transation exécutée ou par progression.

Autre possibilité : conserver des copies supplémentaires,

qui seront essentiellement des bases de données de

secours sur un support non volatile.

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 16: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

16

Autre possibilité encore : utiliser une RAM non volatile

(NVRAM), telle qu'une RAM équipée d'une batterie de

secours ou une RAM ferroélectrique (FRAM), sur

laquelle les données peuvent être conservées lorsque

l'alimentation est coupée. Et, bien sûr, les SGBD In-

Memory hybrides peuvent utiliser un stockage sur disque

pour assurer la durabilité.

Avez-vous réellement besoin d'un SGBD In-Memory ?

Vous devez également déterminer si vous avez

réellement besoin d'un SGBD In-Memory ou si une autre

technologie ne serait pas plus appropriée.

Par exemple, si vous déployez des bases de données sur

un disque SSD en utilisant le SGBDR existant, est-ce que

vous n'obtiendrez pas des gains en performances

suffisants avec moins de perturbations pour votre

environnement ?

Les performances d'un SGBD In-Memory seront

supérieures à celles d'un SGBD classique sur SSD, mais

mieux vaut effectuer des tests pour vous assurer que les

gains supplémentaires justifient le choix d'une

technologie différente et d'un nouveau fournisseur.

En outre, pour créer certaines appliances de base de

données, les développeurs utilisent les systèmes et la

technologie In-Memory. Une appliance de base de

données doit être une solution clé en main nécessitant peu

ou pas de configuration et d'installation. Pour autant, une

administration quotidienne reste indispensable.

Assurez-vous par conséquent que vous maîtrisez bien la

technologie SGBD intégrée pour toute appliance que

vous achetez.

• Craig S. Mullins

LE IN-MEMORY

CONVIENT-IL À VOTRE

ENTREPRISE ?

Page 17: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

17

Après avoir passé en revue les critères à prendre en

compte pour évaluer un SGBD In-Memory, la rédaction

revient sur les principales offres pour vous aider à

déterminer laquelle convient le mieux à votre entreprise.

Les systèmes de gestion de base de données (SGBD) de

type In-Memory ont de plus en plus de succès et le choix

proposé est vaste.

La principale caractéristique d'un SGBD In-Memory est

sa capacité à stocker des structures entières de bases de

données dans la mémoire. La présence des données en

mémoire permet d'éviter les opérations d'E/S sur disque

longues à traiter, ce qui entraîne une amélioration des

performances et une réduction des temps de réponse.

On trouve des SGBD In-Memory de toutes sortes : des

relationnels aux NoSQL, des technologies anciennes aux

plus récentes, des fonctionnalités In-Memory ajoutées sur

des systèmes relationnels (SGBDR) existants aux offres

In-Memory entièrement nouvelles, et des systèmes

complètement In-Memory aux combinaisons hybrides de

stockage In-Memory et sur disque.

Les différents offres de SGBD In-Memory

L'un des SGBD relationnels connaissant la croissance la

plus rapide sur le marché est SAP HANA, une plateforme

applicative de gestion des données en mémoire qui

combine traitements transactionnel et analytique en un

seul système avec une seule copie des données.

A l'origine, le nom HANA était l'acronyme de High-

performance ANalytic Appliance. SAP HANA s'exécute

sur SUSE Linux et Red Hat Enterprise Linux. SAP

commercialise HANA comme une appliance de base de

données, équipée en matériel IBM ou Hewlett-Packard.

Elle est également commercialisée comme une offre de

Cloud par des fournisseurs tels qu'Amazon et Microsoft

Azure.

SAP HANA se décline en quatre éditions :

Edition de base - qui fournit les principaux

services de base de données ;

Edition plateforme - qui offre en plus des moteurs

prédictifs et de représentation graphique ;

Quel SGBD In-Memory répond le mieux à vos besoins ?

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 18: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

18

Edition entreprise - qui comporte des

fonctionnalités supplémentaires de « data

provisioning » ;

Edition d'exécution - destinée à être utilisée avec

les applications SAP.

Bien sûr, SAP cible ses clients déjà équipés d'applications

SAP pour qu'ils adoptent HANA à la place du SGBD

relationnel existant (généralement Oracle, DB2 ou SQL

Server).

HANA permet aux applications SAP de s'exécuter avec

une seule base de données en mémoire, utilisée à la fois

pour les traitements transactionnel et analytique.

Toutefois, SAP ne propose pas HANA seulement pour

les applications SAP, mais comme un système destiné à

remplacer entièrement les bases de données relationnelles

classiques.

SAP HANA prend en charge l'analytique en temps réel à

grande échelle et sur des données très diverses. Il

combine des fonctionnalités de base de données, de

traitement des données et de serveur d'applications, qui

s'exécutent toutes dans la mémoire, sur un seul jeu de

données et une seule plateforme.

SAP HANA vous permet de réduire l'encombrement des

données et de simplifier leur traitement et les opérations.

Il prend en charge la mutualisation, donne la possibilité

de stocker les données actives (« warm », ou « tièdes »)

sur disque et offre un choix de modèles et partenaires de

déploiement.

Vous pouvez déployer SAP HANA sur site, dans le

Cloud, ou les deux dans une configuration hybride.

Si vous voulez créer et prendre en charge des applications

d'entreprise opérationnelles nécessitant un accès rapide

aux données, SAP HANA est un bon SGBD relationnel

actuel. Il vaut la peine que l'on s'y intéresse pour les

mises en œuvre ERP, ainsi que pour les nouvelles

applications maison.

Il existe un autre SGBD In-Memory relationnel appelé

TimesTen, qui a été racheté par Oracle en juin 2005.

Oracle TimesTen In-Memory Database est un SGBDR

complet qui s'exécute dans la couche applicative, en

stockant toutes les données dans la mémoire principale. Il

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 19: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

19

prend en charge la sémantique complète des transactions

SQL et comprend des fonctionnalités OCI, Pro*C et

PL/SQL pour la compatibilité avec Oracle Database.

Oracle TimesTen In-Memory Database est intégré à

Oracle Exalytics In-Memory Machine, ce qui permet aux

utilisateurs d'Oracle Business Intelligence Standard

Edition d'exécuter rapidement des requêtes analytiques

complexes.

Outre la version autonome de TimesTen, des

fonctionnalités In-Memory (présentées un peu plus loin

dans cet article) sont offertes dans Oracle Database 12c.

VoltDB est un autre SGBD relationnel In-Memory,

développé par une équipe que dirige Michael

Stonebraker, l'un des pionniers des systèmes relationnels

et l'un des fondateurs d'Ingres.

VoltDB est un système open source qui propose une

version communautaire et une licence commerciale. Cette

dernière offre des fonctionnalités de haute disponibilité et

de reprise après désastre, ainsi qu'un support technique.

Les données sont conservées en mémoire pour les calculs

et l'analyse, mais toutes les transactions sont stockées de

manière durable sur disque. VoltDB est compatible avec

le concept ACID (atomicité, cohérence, isolation,

durabilité) et assure une réplication à tolérance de panne

en répliquant les partitions sur plusieurs serveurs ; ainsi,

en cas de panne d'un serveur, les données sont toujours

présentes dans une autre partition.

Les développeurs des applications VoltDB utilisent Java,

PHP ou C# dans SQL, et les procédures stockées dans

Java sont également prises en charge. Les transferts de

données vers VoltDB sont simples, grâce aux outils

d'importation et aux connecteurs prêts à l'emploi fournis

pour faciliter l'ingestion et l'exportation des données.

Mais les SGBD In-Memory ne sont pas tous relationnels.

Ainsi, Aerospike est un système open source de gestion

de base de données NoSQL et In-Memory. Ce magasin

de données clé-valeur permet aux développeurs de créer

des expériences utilisateur personnalisées et des

applications axées sur les données qui montent en

puissance pour traiter des millions de transactions par

seconde avec des temps de réponse inférieurs à la

milliseconde.

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 20: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

20

Aerospike s'exécute sur Linux et permet la prise en

charge d'un grand nombre de distributions Linux

différentes, notamment les binaires précompilés pour Red

Hat, Ubuntu, CentOS et Debian.

Aerospike est disponible en open source, mais une

licence commerciale est également proposée. Cette

édition commerciale offre en plus des fonctionnalités

telles que la réplication entre datacenters (pour la

synchronisation de plusieurs clusters), un redémarrage

rapide et une sécurité renforcée.

L'une des fonctionnalités les plus marquantes d'Aerospike

est qu'il simplifie le travail des programmeurs pour créer

et faire fonctionner de nouvelles applications à grande

échelle. En effet, les tâches d'administration préalables

sont réduites au minimum.

Les autres cas d'utilisation d'Aerospike sont la mise en

cache des données (par exemple pour stocker les

informations sur les sessions ou les profils des

utilisateurs) et la personnalisation de l'expérience

utilisateur sur les portails Web et dans les applications

mobiles.

Prise en charge des fonctionnalités In-Memory par les systèmes relationnels

Vous n'avez pas besoin d'installer un SGBD dernier cri

pour bénéficier du traitement des bases de données In-

Memory. Les trois principaux fournisseurs de systèmes

relationnels, à savoir Oracle, IBM et Microsoft, offrent

tous des fonctionnalités In-Memory dans les versions les

plus récentes de leurs SGBD.

Ainsi, Oracle Database 12c comprend une nouvelle

technologie de base de données optimisée en mémoire

qui accélère le traitement analytique. Oracle Database In-

Memory est un format de données In-Memory en

colonnes conçu pour traiter le code SQL rapidement sans

perte de fonctionnalité.

Oracle Database In-Memory se déploie facilement avec

n'importe quelle application compatible Oracle Database

sans nécessiter aucune modification de l'application.

Cette fonctionnalité est totalement intégrée aux

technologies scale-up, scale-out, de hiérarchisation du

stockage, de disponibilité et de sécurité d'Oracle

Database, associant les avantages des systèmes

relationnels à la vitesse des SGBD In-Memory.

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 21: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

21

IBM DB2 10.5 avec BLU Acceleration combine

également une série d'innovations mises au point par les

laboratoires de recherche et développement d'IBM, dont

des fonctionnalités In-Memory. En accélérant le

traitement des requêtes portant sur les données

opérationnelles et historiques, BLU Acceleration permet

d'améliorer le processus de collecte analytique.

IBM DB2 avec BLU Acceleration offre plus que des

fonctionnalités In-Memory, avec notamment une

fonctionnalité relationnelle de stockage en colonnes qui

accélère le traitement analytique et une fonction de

compression exploitable qui permet d'utiliser jusqu'à dix

fois moins d'espace de stockage.

Ce produit met également en oeuvre le modèle SIMD

(Single Instruction Multiple Data) et une technologie

appelée « data-skipping » qui améliore les performances

des requêtes.

Microsoft SQL Server 2014 offre aussi des

fonctionnalités In-Memory, en fournissant un moteur de

base de données optimisé en mémoire et intégré au

moteur SQL Server principal.

Pour un traitement OLTP In-Memory, les tables doivent

être définies comme étant optimisées en mémoire. Ces

tables sont entièrement conformes au concept ACID et le

système y accède en utilisant Transact-SQL de la même

manière que pour les tables sur disque.

Requêtes et transactions peuvent ainsi référencer et

mettre à jour les données à la fois dans les tables

optimisées en mémoire et les tables sur disque. Le moteur

OLTP In-Memory de SQL Server est conçu pour prendre

en charge de très nombreux accès simultanés.

Tous les fournisseurs de SGBD relationnels revendiquent

des gains de performances importants grâce à l'utilisation

des fonctionnalités In-Memory de leurs systèmes, ces

améliorations allant de quelques points de pourcentage à

une multiplication par 20 et plus. Bien sûr, les

performances obtenues varient selon la mise en oeuvre,

l'utilisation et d'autres critères.

SGBD NewSQL

Outre les SGBD In-Memory, il existe des systèmes de

base de données NewSQL qui prennent en charge les

architectures les plus récentes et combinent

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 22: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

22

fonctionnalités In-Memory, gestion des bases de données

dans le Cloud et/ou distribution hautement évolutive.

Si la définition d'un SGBD NewSQL ne répond pas à des

règles absolues, on peut ranger dans cette catégorie

NuoDB.

NuoDB est un SGBD distribué à l'échelle du Web qui

offre une mise en oeuvre SQL complète et de véritables

transactions ACID. Il est conçu pour les datacenters

actuels, mais peut également être utilisé comme base de

données scale-out dans le Cloud.

Les SGBD NewSQL sont conçus sans toutes les

opérations de gestion et les fonctionnalités intégrées aux

SGBD plus anciens développés dans les années 1970.

L'avantage de ces nouveaux SGBDR élaborés au 21e

siècle est qu'ils n'ont pas à s'embarrasser d'un code et

d'une architecture hérités.

Faire le bon choix

Les bases de données In-Memory sont de plus en plus

adoptées pour améliorer l'efficacité du traitement

analytique.

Dans de nombreux cas, les mêmes SGBD In-Memory qui

permettent d'accélérer les requêtes analytiques peuvent

aussi améliorer la rapidité des transactions

opérationnelles.

Mais force est de constater qu'un grand nombre de

variables et d'options entrent en jeu lors du choix d'un

SGBD In-Memory. Pour les applications qui exigent des

performances élevées, les SGBD In-Memory constituent

le meilleur choix car ils offrent des temps de réponse

rapides.

Cependant, n'oubliez pas de calculer les coûts

supplémentaires, pas seulement en termes de matériel,

mais par exemple les frais liés à la prise en charge d'un

nouveau SGBD ainsi que tous les coûts associés.

• Craig S. Mullins

QUEL SGBD

IN-MEMORY

RÉPOND LE MIEUX

À VOS BESOINS ?

Page 23: Le Grand Guide des Bases de Données : Au-delà du Relationnel (In-Memory, NoSQL ...docs.media.bitpipe.com › io_12x › io_128393 › item_1251752... · 2015-12-01 · DIE FÜNF

QUAND FAUT-IL ENVISAGER

D’UTILISER UNE BASE NOSQL

(PLUTOT QU’UNE BASE

RELATIONNELLE) ?

NOSQL : LE CHOIX DIFFICILE

DE LA BONNE BASE

(ET COMMENT BIEN LE FAIRE)

LE IN-MEMORY CONVIENT-IL

À VOTRE ENTREPRISE ?

QUEL SGBD IN-MEMORY

RÉPOND LE MIEUX À VOS

BESOINS ?

Le Grand Guide des Bases de Données : Au-delà du relationnel (In-Memory, NoSQL, NewSQL)

23

AUTEURS

Le document consulté provient du site www.lemagit.fr

Cyrille Chausson | Rédacteur en Chef

Mark Whitehorn, Craig S.Mullins | Contributeurs

Linda Koury | Directeur Artistique

Neva Maniscalco | Designer

TechTarget 22 rue Léon Jouhaux, 75010 Paris

www.techtarget.com

©2015 TechTarget Inc. Aucun des contenus ne peut être transmis ou reproduit quelle que soit la

forme sans l'autorisation écrite de l'éditeur. Les réimpressions de TechTarget sont disponibles à

travers The YGS Group.

TechTarget édite des publications pour les professionnels de l'IT. Plus de 100 sites qui proposent

un accès rapide à un stock important d'informations, de conseils, d'analyses concernant les

technologies, les produits et les process déterminants dans vos fonctions. Nos

événements réels et nos séminaires virtuels vous donnent accès à des commentaires et

recommandations neutres par des experts sur les problèmes et défis que vous rencontrez

quotidiennement. Notre communauté en ligne "IT Knowledge Exchange" (Echange de

connaissances IT) vous permet de partager des questionnements et informations de tous les jours

avec vos pairs et des experts du secteur.