SlideShare a Scribd company logo
1 of 39
Download to read offline
Ciel ! Mes données ne sont 
plus relationnelles 
BLEND WEB MIX 
01 Octobre 2013 
1
Xavier Gorse 
2 
@xgorse
3 
Association Française des Utilisateurs de PHP 
• Crée en 2001 
• Forum PHP ( 21 & 22 Novembre 2013 à Paris) 
• AperoPHP et Rendez Vous 
• Antennes Locale 
• Président en 2009 www.afup.org 
Association Francophone des utilisateurs de SYmfony 
• Initié en 2010 par Hugo Hamon 
• Pas encore une vraie association 
• Sfpot mensuel avec conférence suivie d’un apéro 
• Antenne à Marseille, Lyon ?? 
www.afsy.fr
4 
Elao 
• Fondateur en 2005 
• Lyon & Paris 
• Agence Web Technique de 15 personnes 
• Symfony depuis 2006 
• Partenaire officiel SensioLabs 
www.elao.com
5
Plan 
• Trend 
• Key-value databases 
• Document databases 
• Graph databases 
• Column-oriented databases 
6
RDBMS performance 
7 
Data complexity 
Performance 
Relational database 
Requirement of application 
Salary&list& 
Most&Web&apps& 
Social&Network& 
Loca5on7based&services& 
Source @ianSrobinson - @jimwebber from NeoTechnology
complexity = f(size, connectedness, uniformity) 
8
Data Size 
9 
2007 2008 2009 2010 2011 
2012 
2013
Data Size 
• 500 million page views a day 
• ~3TB of new data to store a day 
• Posts are about 50GB a day. 
Follower list updates are about 
2.7TB a day. 
10
Connectedness 
11 
Wikis) 
Blogs) 
Tagging) 
Ontologies) 
RDFa) 
web 1.0 web 2.0 “web 3.0” 
1990 2000 2010 2020 
Source @ianSrobinson - @jimwebber from NeoTechnology 
Informa(on)connec(vity) Text) 
Documents) 
Hypertext) 
Feeds) 
UGC) 
Folksonomies) 
GGG)
Uniformity 
• Semi-­‐structured 
data 
• Different 
data 
lifecycle 
• Store 
more 
data 
about 
each 
en7ty 
• Individualisa7on 
& 
decentraliza7on 
of 
content 
genera7on 
12
NoSQL 
Not Only SQL 
13
NoSQL 
• Non-­‐Rela7onal 
• Cluster 
Friendly 
• Schema 
less 
• Distributed 
architecture 
14
ACID & CAP Theorem 
ACID 
• Atomicity 
• Consistency 
• Isola7on 
• Durability 
15 
Cap 
Theorem 
• Consistency 
• Availability 
• Par77on 
Tolerance
Column 1 : value 
Column 2 : value 
Column 3 : value 
Key 
Key 
Key/Value Column-oriented 
Field 1 : value 
Field A : value 
Field B : value 
Field 2 : value 
Node 1 
Node 3 
Node 2 
Node 4 
Node 5 
Document 
oriented 
Graph 
Key Value 
Key Value 
Key Value 
Key Value 
16
Column 1 : value 
Column 2 : value 
Column 3 : value 
Key 
Key 
Key/Value Column-oriented 
Field 1 : value 
Field A : value 
Field B : value 
Field 2 : value 
Node 1 
Node 3 
Node 2 
Node 4 
Node 5 
Document 
oriented 
Graph 
Key Value 
Key Value 
Key Value 
Key Value 
17
Key-value databases 
• Inspired by Amazon’s Dynamo (2007) 
• Global collection of key-value 
• Big scalable HashMap 
18
• Strengths 
• Simple data model 
• High performance 
• Great at scaling out horizontally 
• Weaknesses 
• Simplistic data model 
• Poor for complex data 
19 
Key-value databases
• Written in C - BSD License - 2009 
• Very fast and light-weigth 
• All data in memory 
• Persistence 
• Master/Slave Replication 
• Used for caching, session or working 
queue 
20 
Key-value databases 
http://redis.io/
• Riak 
• Memcache (RAM) 
• Voldemort 
• Amazon DynamoDB (Saas) 
• IronCache (Saas) 
21 
Key-value databases
Column 1 : value 
Column 2 : value 
Column 3 : value 
Key 
Key 
Key/Value Column-oriented 
Field 1 : value 
Field A : value 
Field B : value 
Field 2 : value 
Node 1 
Node 3 
Node 2 
Node 4 
Node 5 
Document 
oriented 
Graph 
Key Value 
Key Value 
Key Value 
Key Value 
22
Document databases 
• Inspired by IBM Lotus Notes/Domino 
• Idem from Key/Value with value as a 
document 
• A document is a key-value collection 
• Flexible schema 
• Non-relational, data is de-normalized 
23
Document databases 
• Strengths 
• Simple, powerful data model 
• Good scaling, Easy/Auto sharding 
• Usually “ACID” compliant 
• Weaknesses 
• Unsuited for interconnected data 
• Query model limited to keys (and indexes) 
24
Document databases 
• Written in C++ - License AGPL - 2009 
• JSON-style documents 
• Full Index Support 
• Fast In-Place Updates 
• Auto-Sharding 
• Replication & High Availability 
• A lot of Connector 
• Big Community 
• Commercial Support 
25 
http://www.mongodb.org
Document databases 
• Lotus Notes / Domino 
• CouchDB 
written in Erlang, Javascript for Query 
• OrientDB 
written in Java, relationship as graph 
26
Column 1 : value 
Column 2 : value 
Column 3 : value 
Key 
Key 
Key/Value Column-oriented 
Field 1 : value 
Field A : value 
Field B : value 
Field 2 : value 
Node 1 
Node 3 
Node 2 
Node 4 
Node 5 
Document 
oriented 
Graph 
Key Value 
Key Value 
Key Value 
Key Value 
27
Graph databases 
• Nodes with properties 
• Named relationships with properties 
• Focus on the data structure 
• Direct pointer to its adjacent element and 
no indexlookups are necessary 
28
Graph databases 
• Strengths 
• Powerful data model 
• Fast for connected data 
• A new data architecture 
• Weaknesses 
• No Sharding : All data in one instance 
• Using Node/Relation property for Query kill 
performance 
• A new data architecture 
29
Graph databases 
• Java - GPL/Commercial - 2007 
• Query language : Cypher / Gremlin 
• REST Interface 
• Embed Mode 
• High Availability ( Master / Slave) 
• Commercial Support 
http://neo4j.org 
30
GraphDB - Products 
• Titan 
• OrientDB 
• InfiniteGraph 
• AllegroGraph 
31
Column 1 : value 
Column 2 : value 
Column 3 : value 
Key 
Key 
Key/Value Column-oriented 
Field 1 : value 
Field A : value 
Field B : value 
Field 2 : value 
Node 1 
Node 3 
Node 2 
Node 4 
Node 5 
Document 
oriented 
Graph 
Key Value 
Key Value 
Key Value 
Key Value 
32
Column-oriented database 
• A big table, with column families 
• Data stored by column instead of row 
• Build for distributed architecture 
• Map-reduce for querying/processing 
• Flexible schema 
• Easy sharding (partitioning) 
33
Column-oriented database 
• Strengths 
• Data model supports semi-structured data 
• Naturally indexed (columns) 
• Horizontally scalable – RW increase linearly 
• Fault tolerant – no single point of failure 
• Weaknesses 
• Unsuited for interconnected data 
34
Column-oriented database 
• Java - Apache License 2 - 2008 
• Developed by Facebook 
• Decentralized 
• Supports replication and multi data center 
replication 
• Scalability 
• Fault-tolerant 
• MapReduce support 
http://cassandra.apache.org/ 
35
Column-oriented database 
• HBase (Apache) 
• HyperTable 
• BigTable (Google) 
36
Conclusion 
• Application architecture impact 
• Store your data in the way you want to 
query it 
• Denormalize your data and try to keep 
them up-to-date ! 
37
38
Merci

More Related Content

What's hot

Lantea platform
Lantea platformLantea platform
Lantea platformNeuzilla
 
introduction to Neo4j (Tabriz Software Open Talks)
introduction to Neo4j (Tabriz Software Open Talks)introduction to Neo4j (Tabriz Software Open Talks)
introduction to Neo4j (Tabriz Software Open Talks)Farzin Bagheri
 
Infinum Android Talks #04 - CouchBase Lite
Infinum Android Talks #04 - CouchBase LiteInfinum Android Talks #04 - CouchBase Lite
Infinum Android Talks #04 - CouchBase LiteDenis_infinum
 
An Introduction to Pentaho Kettle
An Introduction to Pentaho KettleAn Introduction to Pentaho Kettle
An Introduction to Pentaho KettleDan Moore
 
ACM TechTalks : Apache Arrow and the Future of Data Frames
ACM TechTalks : Apache Arrow and the Future of Data FramesACM TechTalks : Apache Arrow and the Future of Data Frames
ACM TechTalks : Apache Arrow and the Future of Data FramesWes McKinney
 
Introduction to NoSQL and MongoDB
Introduction to NoSQL and MongoDBIntroduction to NoSQL and MongoDB
Introduction to NoSQL and MongoDBAhmed Farag
 
Evolution of the Graph Schema
Evolution of the Graph SchemaEvolution of the Graph Schema
Evolution of the Graph SchemaJoshua Shinavier
 
Presto at Hadoop Summit 2016
Presto at Hadoop Summit 2016Presto at Hadoop Summit 2016
Presto at Hadoop Summit 2016kbajda
 
On-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the CloudOn-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the CloudMarin Dimitrov
 
BDM8 - Near-realtime Big Data Analytics using Impala
BDM8 - Near-realtime Big Data Analytics using ImpalaBDM8 - Near-realtime Big Data Analytics using Impala
BDM8 - Near-realtime Big Data Analytics using ImpalaDavid Lauzon
 
Approaching graph db
Approaching graph dbApproaching graph db
Approaching graph dbSergey Enin
 
Does it Mix? Cassandra and RDBMS working together!
Does it Mix? Cassandra and RDBMS working together!Does it Mix? Cassandra and RDBMS working together!
Does it Mix? Cassandra and RDBMS working together!Carlos Juzarte Rolo
 
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use case
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use caseBDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use case
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use caseDavid Lauzon
 

What's hot (19)

Lantea platform
Lantea platformLantea platform
Lantea platform
 
introduction to Neo4j (Tabriz Software Open Talks)
introduction to Neo4j (Tabriz Software Open Talks)introduction to Neo4j (Tabriz Software Open Talks)
introduction to Neo4j (Tabriz Software Open Talks)
 
GraphDb in XPages
GraphDb in XPagesGraphDb in XPages
GraphDb in XPages
 
Infinum Android Talks #04 - CouchBase Lite
Infinum Android Talks #04 - CouchBase LiteInfinum Android Talks #04 - CouchBase Lite
Infinum Android Talks #04 - CouchBase Lite
 
An Introduction to Pentaho Kettle
An Introduction to Pentaho KettleAn Introduction to Pentaho Kettle
An Introduction to Pentaho Kettle
 
Find your data
Find your dataFind your data
Find your data
 
ACM TechTalks : Apache Arrow and the Future of Data Frames
ACM TechTalks : Apache Arrow and the Future of Data FramesACM TechTalks : Apache Arrow and the Future of Data Frames
ACM TechTalks : Apache Arrow and the Future of Data Frames
 
Introduction to NoSQL and MongoDB
Introduction to NoSQL and MongoDBIntroduction to NoSQL and MongoDB
Introduction to NoSQL and MongoDB
 
Evolution of the Graph Schema
Evolution of the Graph SchemaEvolution of the Graph Schema
Evolution of the Graph Schema
 
Presto at Hadoop Summit 2016
Presto at Hadoop Summit 2016Presto at Hadoop Summit 2016
Presto at Hadoop Summit 2016
 
HypergraphDB
HypergraphDBHypergraphDB
HypergraphDB
 
Introduction to Big Data
Introduction to Big DataIntroduction to Big Data
Introduction to Big Data
 
On-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the CloudOn-Demand RDF Graph Databases in the Cloud
On-Demand RDF Graph Databases in the Cloud
 
BDM8 - Near-realtime Big Data Analytics using Impala
BDM8 - Near-realtime Big Data Analytics using ImpalaBDM8 - Near-realtime Big Data Analytics using Impala
BDM8 - Near-realtime Big Data Analytics using Impala
 
Approaching graph db
Approaching graph dbApproaching graph db
Approaching graph db
 
Review of KohaCon18
Review of KohaCon18Review of KohaCon18
Review of KohaCon18
 
JugMarche: Neo4j 2 (Cypher)
JugMarche: Neo4j 2 (Cypher)JugMarche: Neo4j 2 (Cypher)
JugMarche: Neo4j 2 (Cypher)
 
Does it Mix? Cassandra and RDBMS working together!
Does it Mix? Cassandra and RDBMS working together!Does it Mix? Cassandra and RDBMS working together!
Does it Mix? Cassandra and RDBMS working together!
 
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use case
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use caseBDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use case
BDM9 - Comparison of Oracle RDBMS and Cloudera Impala for a hospital use case
 

Similar to Ciel, mes données ne sont plus relationnelles

Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQLDon Demcsak
 
No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageBethmi Gunasekara
 
Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Don Demcsak
 
Scaling the Web: Databases & NoSQL
Scaling the Web: Databases & NoSQLScaling the Web: Databases & NoSQL
Scaling the Web: Databases & NoSQLRichard Schneeman
 
Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Gavin Heavyside
 
Hpc lunch and learn
Hpc lunch and learnHpc lunch and learn
Hpc lunch and learnJohn D Almon
 
Big data hadoop-no sql and graph db-final
Big data hadoop-no sql and graph db-finalBig data hadoop-no sql and graph db-final
Big data hadoop-no sql and graph db-finalramazan fırın
 
Large Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphLarge Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphP. Taylor Goetz
 
Large Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphLarge Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphDataWorks Summit
 
Graph Database and Neo4j
Graph Database and Neo4jGraph Database and Neo4j
Graph Database and Neo4jSina Khorami
 
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesWebinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesMongoDB
 
introduction to NOSQL Database
introduction to NOSQL Databaseintroduction to NOSQL Database
introduction to NOSQL Databasenehabsairam
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxRahul Borate
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture OverviewChristopher Foot
 

Similar to Ciel, mes données ne sont plus relationnelles (20)

Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQL
 
No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data Storage
 
Nosql data models
Nosql data modelsNosql data models
Nosql data models
 
Graph Databases
Graph DatabasesGraph Databases
Graph Databases
 
Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)
 
NoSQL
NoSQLNoSQL
NoSQL
 
NoSQL-Overview
NoSQL-OverviewNoSQL-Overview
NoSQL-Overview
 
Scaling the Web: Databases & NoSQL
Scaling the Web: Databases & NoSQLScaling the Web: Databases & NoSQL
Scaling the Web: Databases & NoSQL
 
noSQL choices
noSQL choicesnoSQL choices
noSQL choices
 
Revision
RevisionRevision
Revision
 
Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011
 
Hpc lunch and learn
Hpc lunch and learnHpc lunch and learn
Hpc lunch and learn
 
Big data hadoop-no sql and graph db-final
Big data hadoop-no sql and graph db-finalBig data hadoop-no sql and graph db-final
Big data hadoop-no sql and graph db-final
 
Large Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphLarge Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraph
 
Large Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraphLarge Scale Graph Analytics with JanusGraph
Large Scale Graph Analytics with JanusGraph
 
Graph Database and Neo4j
Graph Database and Neo4jGraph Database and Neo4j
Graph Database and Neo4j
 
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesWebinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
 
introduction to NOSQL Database
introduction to NOSQL Databaseintroduction to NOSQL Database
introduction to NOSQL Database
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
 
NoSQL Architecture Overview
NoSQL Architecture OverviewNoSQL Architecture Overview
NoSQL Architecture Overview
 

Recently uploaded

Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptJasonTagapanGulla
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfROCENODodongVILLACER
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
Industrial Safety Unit-IV workplace health and safety.ppt
Industrial Safety Unit-IV workplace health and safety.pptIndustrial Safety Unit-IV workplace health and safety.ppt
Industrial Safety Unit-IV workplace health and safety.pptNarmatha D
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the weldingMuhammadUzairLiaqat
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONTHE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONjhunlian
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...Amil Baba Dawood bangali
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
Steel Structures - Building technology.pptx
Steel Structures - Building technology.pptxSteel Structures - Building technology.pptx
Steel Structures - Building technology.pptxNikhil Raut
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating SystemRashmi Bhat
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 

Recently uploaded (20)

Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.ppt
 
Risk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdfRisk Assessment For Installation of Drainage Pipes.pdf
Risk Assessment For Installation of Drainage Pipes.pdf
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
Industrial Safety Unit-IV workplace health and safety.ppt
Industrial Safety Unit-IV workplace health and safety.pptIndustrial Safety Unit-IV workplace health and safety.ppt
Industrial Safety Unit-IV workplace health and safety.ppt
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the welding
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONTHE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uae Dubai Abu Dhabi ...
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
Steel Structures - Building technology.pptx
Steel Structures - Building technology.pptxSteel Structures - Building technology.pptx
Steel Structures - Building technology.pptx
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating System
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 

Ciel, mes données ne sont plus relationnelles

  • 1. Ciel ! Mes données ne sont plus relationnelles BLEND WEB MIX 01 Octobre 2013 1
  • 2. Xavier Gorse 2 @xgorse
  • 3. 3 Association Française des Utilisateurs de PHP • Crée en 2001 • Forum PHP ( 21 & 22 Novembre 2013 à Paris) • AperoPHP et Rendez Vous • Antennes Locale • Président en 2009 www.afup.org Association Francophone des utilisateurs de SYmfony • Initié en 2010 par Hugo Hamon • Pas encore une vraie association • Sfpot mensuel avec conférence suivie d’un apéro • Antenne à Marseille, Lyon ?? www.afsy.fr
  • 4. 4 Elao • Fondateur en 2005 • Lyon & Paris • Agence Web Technique de 15 personnes • Symfony depuis 2006 • Partenaire officiel SensioLabs www.elao.com
  • 5. 5
  • 6. Plan • Trend • Key-value databases • Document databases • Graph databases • Column-oriented databases 6
  • 7. RDBMS performance 7 Data complexity Performance Relational database Requirement of application Salary&list& Most&Web&apps& Social&Network& Loca5on7based&services& Source @ianSrobinson - @jimwebber from NeoTechnology
  • 8. complexity = f(size, connectedness, uniformity) 8
  • 9. Data Size 9 2007 2008 2009 2010 2011 2012 2013
  • 10. Data Size • 500 million page views a day • ~3TB of new data to store a day • Posts are about 50GB a day. Follower list updates are about 2.7TB a day. 10
  • 11. Connectedness 11 Wikis) Blogs) Tagging) Ontologies) RDFa) web 1.0 web 2.0 “web 3.0” 1990 2000 2010 2020 Source @ianSrobinson - @jimwebber from NeoTechnology Informa(on)connec(vity) Text) Documents) Hypertext) Feeds) UGC) Folksonomies) GGG)
  • 12. Uniformity • Semi-­‐structured data • Different data lifecycle • Store more data about each en7ty • Individualisa7on & decentraliza7on of content genera7on 12
  • 13. NoSQL Not Only SQL 13
  • 14. NoSQL • Non-­‐Rela7onal • Cluster Friendly • Schema less • Distributed architecture 14
  • 15. ACID & CAP Theorem ACID • Atomicity • Consistency • Isola7on • Durability 15 Cap Theorem • Consistency • Availability • Par77on Tolerance
  • 16. Column 1 : value Column 2 : value Column 3 : value Key Key Key/Value Column-oriented Field 1 : value Field A : value Field B : value Field 2 : value Node 1 Node 3 Node 2 Node 4 Node 5 Document oriented Graph Key Value Key Value Key Value Key Value 16
  • 17. Column 1 : value Column 2 : value Column 3 : value Key Key Key/Value Column-oriented Field 1 : value Field A : value Field B : value Field 2 : value Node 1 Node 3 Node 2 Node 4 Node 5 Document oriented Graph Key Value Key Value Key Value Key Value 17
  • 18. Key-value databases • Inspired by Amazon’s Dynamo (2007) • Global collection of key-value • Big scalable HashMap 18
  • 19. • Strengths • Simple data model • High performance • Great at scaling out horizontally • Weaknesses • Simplistic data model • Poor for complex data 19 Key-value databases
  • 20. • Written in C - BSD License - 2009 • Very fast and light-weigth • All data in memory • Persistence • Master/Slave Replication • Used for caching, session or working queue 20 Key-value databases http://redis.io/
  • 21. • Riak • Memcache (RAM) • Voldemort • Amazon DynamoDB (Saas) • IronCache (Saas) 21 Key-value databases
  • 22. Column 1 : value Column 2 : value Column 3 : value Key Key Key/Value Column-oriented Field 1 : value Field A : value Field B : value Field 2 : value Node 1 Node 3 Node 2 Node 4 Node 5 Document oriented Graph Key Value Key Value Key Value Key Value 22
  • 23. Document databases • Inspired by IBM Lotus Notes/Domino • Idem from Key/Value with value as a document • A document is a key-value collection • Flexible schema • Non-relational, data is de-normalized 23
  • 24. Document databases • Strengths • Simple, powerful data model • Good scaling, Easy/Auto sharding • Usually “ACID” compliant • Weaknesses • Unsuited for interconnected data • Query model limited to keys (and indexes) 24
  • 25. Document databases • Written in C++ - License AGPL - 2009 • JSON-style documents • Full Index Support • Fast In-Place Updates • Auto-Sharding • Replication & High Availability • A lot of Connector • Big Community • Commercial Support 25 http://www.mongodb.org
  • 26. Document databases • Lotus Notes / Domino • CouchDB written in Erlang, Javascript for Query • OrientDB written in Java, relationship as graph 26
  • 27. Column 1 : value Column 2 : value Column 3 : value Key Key Key/Value Column-oriented Field 1 : value Field A : value Field B : value Field 2 : value Node 1 Node 3 Node 2 Node 4 Node 5 Document oriented Graph Key Value Key Value Key Value Key Value 27
  • 28. Graph databases • Nodes with properties • Named relationships with properties • Focus on the data structure • Direct pointer to its adjacent element and no indexlookups are necessary 28
  • 29. Graph databases • Strengths • Powerful data model • Fast for connected data • A new data architecture • Weaknesses • No Sharding : All data in one instance • Using Node/Relation property for Query kill performance • A new data architecture 29
  • 30. Graph databases • Java - GPL/Commercial - 2007 • Query language : Cypher / Gremlin • REST Interface • Embed Mode • High Availability ( Master / Slave) • Commercial Support http://neo4j.org 30
  • 31. GraphDB - Products • Titan • OrientDB • InfiniteGraph • AllegroGraph 31
  • 32. Column 1 : value Column 2 : value Column 3 : value Key Key Key/Value Column-oriented Field 1 : value Field A : value Field B : value Field 2 : value Node 1 Node 3 Node 2 Node 4 Node 5 Document oriented Graph Key Value Key Value Key Value Key Value 32
  • 33. Column-oriented database • A big table, with column families • Data stored by column instead of row • Build for distributed architecture • Map-reduce for querying/processing • Flexible schema • Easy sharding (partitioning) 33
  • 34. Column-oriented database • Strengths • Data model supports semi-structured data • Naturally indexed (columns) • Horizontally scalable – RW increase linearly • Fault tolerant – no single point of failure • Weaknesses • Unsuited for interconnected data 34
  • 35. Column-oriented database • Java - Apache License 2 - 2008 • Developed by Facebook • Decentralized • Supports replication and multi data center replication • Scalability • Fault-tolerant • MapReduce support http://cassandra.apache.org/ 35
  • 36. Column-oriented database • HBase (Apache) • HyperTable • BigTable (Google) 36
  • 37. Conclusion • Application architecture impact • Store your data in the way you want to query it • Denormalize your data and try to keep them up-to-date ! 37
  • 38. 38
  • 39. Merci