11. #DevoxxFR
AGENDA
11
- Setup Réseau
- un peu de théorie Cassandra
- Setup Cassandra
- Jouer avec Cassandra
- un peu de théorie Spark
- Setup Spark
- Jouer avec Cassandra et Spark
19. #DevoxxFR
Configuration réseau
19
IP : votre IP (celle du post-it)
Masque de sous réseau : 255.0.0.0
pas de proxy
pas de routeur/gateway/passerelle
test ping :
10.1.1.0, 10.1.1.1, 10.2.1.1, 10.3.1.1
22. #DevoxxFR
C’est quoi Cassandra
22
« The Apache Cassandra database is
the right choice when you need
scalability and high availability without
compromising performance »
26. #DevoxxFR
Comment est stockée une table sur le
cluster?
26
Chaque table a une PRIMARY KEY
PRIMARY KEY = PARTITION KEY
Une fonction associe une valeur de clef primaire à un Hash /
Token
Chaque noeud du cluster prend en charge un « token range »
Pour chaque « keyspace » (= schéma) , on défini un
« REPLICATION FACTOR ». Chaque donnée est répliquée
selon ce replication factor.
27. #DevoxxFR 27
name gender age
jérémy M 25
amira F 26
gautier M 42
thomas M 27
…. …. ….
name gender age
jérémy M 25
… … ….
name gender age
amira F 26
… … …
name gender age
gautier M 42
thomas M 27
…. …. ….
36. #DevoxxFR
Cassandra.yaml
36
seeds : Liste des noeuds à contacter initialement
listen_address : communication inter noeud
rpc_address : communication avec client
RackInferringSnitch : 10.<datacenter>.<rack>.<node>
auto_bootstrap: false : joindre le cluster sans échanger de données
42. #DevoxxFR
Pourquoi utiliser Spark?
42
Pour faire du calcul distribué sur un
gros volume de données
parce que Hadoop c’est trop compliqué
parce que c’est hype de faire du Spark
44. #DevoxxFR
RDD
44
RDD = Resilient Distributed Dataset
Spark construit un DAG à partir des opérations sur le RDD et
chaque opération n’est effectuée que si nécessaire
Une opération peut être effectuée deux fois
API Scala / Java / Python
62. #DevoxxFR
Récap
62
créé un réseau avec 3 data centers
créé un cluster Cassandra sur 3 datacenters
inséré/lu des données dans cassandra
faire tomber un datacenter
créé un cluster Spark (global)
executer un job Spark sur le cluster
battu un record du monde? : non