00 panorama-nosql

Post on 04-Jul-2015

423 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Courte introduction sur le Nosql. Plus de détails ici : http://www.eventuallycoding.com/index.php/panorama-nosql/

TRANSCRIPT

Associé chez www.Lateral-Thoughts.com

Associé chez www.Hopwork.com

@hugolassiege

hlassiege at lateral-thoughts.com

Contact

Panorama

Des à priori ?

NoSQL

NotoSQL

NotonlySQL

Donc, SQL c’est bien ?

Oui

La normalisation des

données

Le SQL

A bientôt 40 ans on peut dire qu’il est mature

Ou pas…

Select column from table limit 10

Select * from table where rownum > 10

Fonctions propriétaires, séquences etc…

ACID

Atomicité

Cohérence

Isolation

Durabilité

Alors pourquoi changer ?

Le volume a augmenté

“ 90% des données dans le monde ont été créées au

cours des deux dernières années seulement.IBM - http://www-01.ibm.com/software/fr/data/bigdata/

L’usage à évolué

Recherche sémantique

Réseaux sociaux

Moteurs de recommandations

Et les architectures ?

Sans doute un peu…

Et le Nosql dans tout ça?

“ C’est l’enfer

Hugo Lassiège

150 bases de données listées sur

http://nosql-database.org/

Une définition

Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-

source and horizontally scalable.

Scaling

Horizontal scalingVertical scaling

Quelques points communs

schema-free, easy replication support, simple API, a huge amount of data, eventually consistent / BASE

BASE?

Basically Available, Soft state, Eventually consistent

not ACID

Quel est le problème avec

ACID ??

Comment garantissez-vous ACID et une disponibilité de 99%

Vous garantissez la

consistence ?

Dans ce cas, votre disponibilité est dépendante du taux de

panne de chaque composant

Vous garantissez la

disponibilité ?

(en répliquant vos données)

Dans ce cas, comment gérez vous la perte de réseaux entre

réplicas ?

Si vous autorisez les écritures, vous ne garantissez pas la

cohérence

CAP theorem

“It is impossible for a web service to provide following three guarantees :

Consistency Availability Partition-toleranceA distributed system can satisfy any two of these guarantees at the same time but not all three

Eric Brewer

Note du formateur : un système CA, vous y croyez ?

Basically Available : le système fonctionne

Soft state : les données ne sont pas forcément consistantes

Eventually consistent : mais finiront par l’être

=> Système AP

Revenons à nos moutons

4 grandes familles

Key Value

Column oriented

Document oriented

Graph oriented

Key-Value

Key Value

Key-Value

Id => objet

Login:#id => unlogin

Email:#id => test@gmail.com

Skills#id => set(redis, mongodb, java)

Column oriented

Document oriented

KeyDocument

{ field1 : value1,Field2 : value2}

Graph oriented

Pour finir

Logs

Audit

Transactions bancaires

10 ou 1M

d’utilisateurs ?

24/24 ?

RechercheReporting

Cache

top related