SlideShare uma empresa Scribd logo
1 de 24
Cassandra
Qui suis je?
@gerald_quintana
Zenika Lyon
Cassandra Trainer
En quelques mots
● Distribuée
● Master-less
● Scalabilité linéaire
● Tolérance aux pannes
● Performances
● Consistance réglable
● Multi-datacenter
Cas d’utilisations
Distribution
Distribution
Réplication
Elasticité
Virtual nodes
Scalabilité linéaire
http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html
Coordination
Multi-datacenter
Consistance
Consistance
Consistance
Consistance
Consistance
Modèle orienté colonnes
CQL
CREATE TABLE utilisateur(
id_utilisateur UUID,
login VARCHAR,
date_naissance TIMESTAMP,
roles SET<VARCHAR>,
PRIMARY KEY (id_utilisateur)
);
INSERT INTO utilisateur(id_utilisateur, login,
date_naissance, roles)
VALUES ('abc123...', 'jdoe',
'1978-04-06',{'blogger','geek'});
SELECT * FROM utilisateur
WHERE id_utilisateur='abc123...';
Modèle orienté colonnes
Map<PartitionKey, SortedMap<ColumnKey, ColumnValue>>
CQL
CREATE TABLE message(
id_utilisateur UUID,
id_message TIMEUUID,
message VARCHAR,
PRIMARY KEY (id_utilisateur, id_message)
);
INSERT INTO message(id_utilisateur, id_message, message)
VALUES ('abc123...', now(),'Vive Cassandra');
SELECT * FROM message
WHERE id_utilisateur='abc123...';
SELECT message FROM message
WHERE id_utilisateur='abc123...' AND id_message='cde456...';
Performances
● Ecriture : Append-only + Compaction
● Lecture : Modélisation, Réplication, Cache
Installation
● Pré-requis: Linux, Java, Python, NTP
● 1 seul process, 1 seul type de noeud
Cassandra et DataStax
● Apache Cassandra 2.1.6
● DataStax Community 2.1.6
+ Intégration OpsCenter Community
+ Package RPM, DEB, MSI
● DataStax Enterprise 4.7
+ Intégration Hadoop & Spark
+ Intégration SolR
+ Sécurité avancée : Kerberos, cryptage...
+ In memory
+ Support

Mais conteúdo relacionado

Destaque

Modulo3 presencial
Modulo3 presencialModulo3 presencial
Modulo3 presencialgabogadosv
 
Endevia our art and fashion network
Endevia our art and fashion networkEndevia our art and fashion network
Endevia our art and fashion networkEndevia Pro
 
La publicidad en la Universidad
La publicidad en la UniversidadLa publicidad en la Universidad
La publicidad en la Universidadjuandediosguevara
 
Inseec research
Inseec researchInseec research
Inseec researchAlex2010
 
Dossier 2 : Agroalimentaire et commerce en ligne
Dossier 2 : Agroalimentaire et commerce en ligneDossier 2 : Agroalimentaire et commerce en ligne
Dossier 2 : Agroalimentaire et commerce en ligneYann SADOK
 
Atelier sensibilisation Wikipédia à Iset Ksar Hellal
Atelier sensibilisation Wikipédia à Iset Ksar HellalAtelier sensibilisation Wikipédia à Iset Ksar Hellal
Atelier sensibilisation Wikipédia à Iset Ksar HellalHabib M'henni
 
Economie géneral (globale )
Economie géneral (globale )Economie géneral (globale )
Economie géneral (globale )Taha Can
 
Recuperer un document sur le LCS
Recuperer un document sur le LCSRecuperer un document sur le LCS
Recuperer un document sur le LCSprof_odievre
 
Dut métiers du multimédia et de l'internet
Dut métiers du multimédia et de l'internetDut métiers du multimédia et de l'internet
Dut métiers du multimédia et de l'internetRODRIGUEZ_Elora
 
Marco Legal Pre-Sal Brasil
Marco Legal Pre-Sal BrasilMarco Legal Pre-Sal Brasil
Marco Legal Pre-Sal BrasilEduardo Zolezzi
 
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...L’homme contre la machine – une nouvelle approche de la vérification en hygiè...
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...Canadian Patient Safety Institute
 
E learning cardiologie
E learning cardiologieE learning cardiologie
E learning cardiologieDurandPaul
 
Presentation taxesejour.fr 2014
Presentation taxesejour.fr 2014Presentation taxesejour.fr 2014
Presentation taxesejour.fr 2014taxesejour.fr
 

Destaque (20)

Modulo3 presencial
Modulo3 presencialModulo3 presencial
Modulo3 presencial
 
Endevia our art and fashion network
Endevia our art and fashion networkEndevia our art and fashion network
Endevia our art and fashion network
 
La publicidad en la Universidad
La publicidad en la UniversidadLa publicidad en la Universidad
La publicidad en la Universidad
 
Inseec research
Inseec researchInseec research
Inseec research
 
Dossier 2 : Agroalimentaire et commerce en ligne
Dossier 2 : Agroalimentaire et commerce en ligneDossier 2 : Agroalimentaire et commerce en ligne
Dossier 2 : Agroalimentaire et commerce en ligne
 
4B Sangle Elevatrice
4B Sangle Elevatrice4B Sangle Elevatrice
4B Sangle Elevatrice
 
Atelier sensibilisation Wikipédia à Iset Ksar Hellal
Atelier sensibilisation Wikipédia à Iset Ksar HellalAtelier sensibilisation Wikipédia à Iset Ksar Hellal
Atelier sensibilisation Wikipédia à Iset Ksar Hellal
 
Mai 68
Mai 68Mai 68
Mai 68
 
Economie géneral (globale )
Economie géneral (globale )Economie géneral (globale )
Economie géneral (globale )
 
B guilbert
B guilbertB guilbert
B guilbert
 
Recuperer un document sur le LCS
Recuperer un document sur le LCSRecuperer un document sur le LCS
Recuperer un document sur le LCS
 
Dut métiers du multimédia et de l'internet
Dut métiers du multimédia et de l'internetDut métiers du multimédia et de l'internet
Dut métiers du multimédia et de l'internet
 
Forum des Minorités
Forum des MinoritésForum des Minorités
Forum des Minorités
 
Candidatos a la jal
Candidatos a la jalCandidatos a la jal
Candidatos a la jal
 
Marco Legal Pre-Sal Brasil
Marco Legal Pre-Sal BrasilMarco Legal Pre-Sal Brasil
Marco Legal Pre-Sal Brasil
 
Reportage photo
Reportage photoReportage photo
Reportage photo
 
Les fossé des générations
Les fossé des générationsLes fossé des générations
Les fossé des générations
 
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...L’homme contre la machine – une nouvelle approche de la vérification en hygiè...
L’homme contre la machine – une nouvelle approche de la vérification en hygiè...
 
E learning cardiologie
E learning cardiologieE learning cardiologie
E learning cardiologie
 
Presentation taxesejour.fr 2014
Presentation taxesejour.fr 2014Presentation taxesejour.fr 2014
Presentation taxesejour.fr 2014
 

Semelhante a Cassandra Lyon JUG

chapitre6_Le_Langage_SQL-2.pdf
chapitre6_Le_Langage_SQL-2.pdfchapitre6_Le_Langage_SQL-2.pdf
chapitre6_Le_Langage_SQL-2.pdfattamatta1234
 
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...Tarik Zakaria Benmerar
 
OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015Tarik Zakaria Benmerar
 
JSS2014 – Haute disponibilité dans Azure
JSS2014 – Haute disponibilité dans AzureJSS2014 – Haute disponibilité dans Azure
JSS2014 – Haute disponibilité dans AzureGUSS
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logiciellecyrilgandon
 
NoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamNoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamTelecomValley
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurMicrosoft Technet France
 
Lagom, reactive framework(paris jug2017)
Lagom, reactive framework(paris jug2017)Lagom, reactive framework(paris jug2017)
Lagom, reactive framework(paris jug2017)Fabrice Sznajderman
 
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-users
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-usersCe131 g formation-ibm-db2-sql-workshop-for-experienced-users
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-usersCERTyou Formation
 
Xebicon2019 m icroservices
Xebicon2019   m icroservicesXebicon2019   m icroservices
Xebicon2019 m icroservicesCédrick Lunven
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)Aymeric Weinbach
 
Procédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsProcédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsDenis Voituron
 
Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3davrous
 
4 ans de Duchess France : Cassandra 2.0
4 ans de Duchess France : Cassandra 2.04 ans de Duchess France : Cassandra 2.0
4 ans de Duchess France : Cassandra 2.0Duchess France
 

Semelhante a Cassandra Lyon JUG (20)

ParisJUG-2022-v0.4.pdf
ParisJUG-2022-v0.4.pdfParisJUG-2022-v0.4.pdf
ParisJUG-2022-v0.4.pdf
 
chapitre6_Le_Langage_SQL-2.pdf
chapitre6_Le_Langage_SQL-2.pdfchapitre6_Le_Langage_SQL-2.pdf
chapitre6_Le_Langage_SQL-2.pdf
 
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...
Design patterns et Design Emergeant - Micro Days - Modern Software Developmen...
 
MariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQLMariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQL
 
Jdbc
JdbcJdbc
Jdbc
 
OOP and Design Patterns
OOP and Design PatternsOOP and Design Patterns
OOP and Design Patterns
 
OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015
 
JSS2014 – Haute disponibilité dans Azure
JSS2014 – Haute disponibilité dans AzureJSS2014 – Haute disponibilité dans Azure
JSS2014 – Haute disponibilité dans Azure
 
LyonJUG-2023-v1.0.pdf
LyonJUG-2023-v1.0.pdfLyonJUG-2023-v1.0.pdf
LyonJUG-2023-v1.0.pdf
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logicielle
 
NoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamNoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler Softeam
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL Serveur
 
Lagom, reactive framework(paris jug2017)
Lagom, reactive framework(paris jug2017)Lagom, reactive framework(paris jug2017)
Lagom, reactive framework(paris jug2017)
 
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-users
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-usersCe131 g formation-ibm-db2-sql-workshop-for-experienced-users
Ce131 g formation-ibm-db2-sql-workshop-for-experienced-users
 
Xebicon2019 m icroservices
Xebicon2019   m icroservicesXebicon2019   m icroservices
Xebicon2019 m icroservices
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)
 
Procédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsProcédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénients
 
Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3Création d'une application html5 utilisant canvas, svg et les animations css3
Création d'une application html5 utilisant canvas, svg et les animations css3
 
4 ans de Duchess France : Cassandra 2.0
4 ans de Duchess France : Cassandra 2.04 ans de Duchess France : Cassandra 2.0
4 ans de Duchess France : Cassandra 2.0
 
Vert.x 3
Vert.x 3Vert.x 3
Vert.x 3
 

Cassandra Lyon JUG

Notas do Editor

  1. Distribué = cluster, != si vos données tiennent dans un smartphone Masterless ~= peer to peer, décentralisée, pas d’élection de maître
  2. Grosse structures/Startup Local/International Catalogues, collections, playlist Recommandation, personnalisation Détection de fraude Messagerie Objets connectés, capteurs
  3. Distribution ou partitionning On ne configure pas un nombre de partition/shards Token: entier 128bits Plage de tokens: disjointes et contigües
  4. Les données sont distribuées de manière homogène
  5. Tolérance aux pannes Distribution de la charge Rack-awereness
  6. Adapter la taille en fonction de la charge
  7. Différent d'un master Load balancing et failover de la charge de coordination Load balancing et failover pour l’accès aux réplicas
  8. Découpage Géographique ou Logique Placement des réplicas et Facteur de réplication Cloud: Google, Amazon , CloudStack
  9. Write CL ALL Concurrence Last Write Wins
  10. Write CL ONE Hinted handoff
  11. Read CL ALL Read repair
  12. Read CL ONE
  13. En pratique One est un bon choix Consistance par requête et par datacenter
  14. Create: type composite, pas de contrainte Insert: pas de contrainte, CAS Select: pas de join/group by/like, alternatives dénormaliser, SolR, Spark SQL
  15. Ecritures disque séquentielle vs aléatoire Pas de Read-before-Write