webinar big data paris
TRANSCRIPT
Apache CassandraUne base de donnée pour des applications scalables et résistantes
Sylvain Lebresne (DataStax)Webinar Big Data Paris // 11 Mars 2014
Big Data
2/18
Un peu d'histoire
3/18
Job Trends
4/18
Quelques utilisateurs
5/18
Industries et Cas d'utilisations
Tout ce qui requiert scalibilité et/ou haute disponibilité.
Finance
Media sociaux
Divertissement
Énergie
Sécurité
Advertising
Commerce en ligne
...
········
Time series data
Messagerie
Ad tracking
Data mining
Stream d'activité
Sessions utilisateur
...
·······
6/18
Pourquoi Apache Cassandra?
Entièrement distribué, pas de SPOF
Multi-master, multi-DC
Scale linéairement
Performance de haut niveau
Larger-than-memory datasets
Durable
Cache intégré
Consistence "réglable"
········
7/18
Disponibilité
"There is no such thing as standby infrastructure: there stuff you always use andstuff that won't work when you need it" -- Ben Black: founder, Boundary; ex-AWS
"The biggest problem with failover is that you're almost never using it until itreally hurts. It's like backup that you never test" -- Rick Branson: instagram,ex-DataStax
·
·
8/18
Partitionnement classique avec SPOF
9/18
Entièrement distribué, pas de SPOF
10/18
Tolérance aux pannes sur le terrain
11/18
Ajout de capacité transparent, sans interruption de service
Pas de SPOF, même temporairement -- Pas de "primary" replica
Réplication synchonous/asynchronous configurable
Tolère les pannes de façon transparente
"smart" réplication pour éviter les pannes corrélées
·····
12/18
Quid de la performance?
"Log-structured storage engine" pour minimisé les I/O aléatoires
Excellente performance en lecture et en écriture
"Row-level" isolation à l'aide d'algorithme non bloquant
Compression
Cache intégré
·····
13/18
Performance
http://vldb.org/pvldb/vol5/p1724_tilmannrabl_vldb2012.pdf
14/18
Scalabilité linéaire
http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html
15/18
Cassandra Query Language
CREATE TABLE users ( username text PRIMARY KEY, fullname text, password text, email text, picture_profile blob,)
INSERT INTO users (username, fullname, password, email) VALUES ('tsmith', 'Tom Smith', 'Pa55wd!', '[email protected]')
SELECT * FROM users WHERE username='tsmith'
CQL
Syntaxe familière, mais a dénormalisation est la norme (pas de jointure ni desous-requêtes)
Pour ne savoir plus, cherchez "the state of CQL" sur youtube.
·
·
16/18
DataStax
www.datastax.com
DataStax Entreprise Edition
DataStax OpsCenter
Support 24/7
Formation, conseil, documentation ...
·Certified Cassandra
Built-in Analytics
Built-in Search
Entreprise Security
----
···
17/18
Pour aller plus loin
Merci!
cassandra.apache.org
www.datastax.com/docs
planetcassandra.org
···
18/18