SlideShare uma empresa Scribd logo
1 de 139
Baixar para ler offline
A D D I N G N O S Q L T O
Y O U R A R S E N A L
A D D I N G N O S Q L T O
Y O U R A R S E N A L
A K A
T E N D ATA B A S E S
I N H A L F A N H O U R
SQL
D A TA B A S E # 1 :
T H E
I N D U S T RY
S TA N D A R D
R D B M S
( R E L AT I O N A L D ATA B A S E
M A N A G E M E N T S Y S T E M )
R D B M S
• Schema-driven
• Set-based operations
• ACID transactionality
S C H E M A
D R I V E N
Name Species
S E T- B A S E D
O P E R AT I O N
R E A D D A TA O U T W I T H
E V E RY R O W I S A “ T H I N G ”
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
“ W H E R E ” ( I N T E R S E C T I O N )
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
U N I O N S
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
5 Nemo
6 Moby Dick
7 Wanda
J O I N S
Name Species
Species Coolness
Rating
1 Puss 0
2 Dinah 0
3 Einstein 10
4 Jess 0
C A R T E S I A N P R O D U C T S
0 10
0 10
0 10
C A R T E S I A N P R O D U C T S
0 10
0 10
0 10
– R O N E R N E S T
( & T H E S Q L C O M M U N I T Y AT L A R G E )
“Cursors are evil.”
A C I D
W R I T E D A TA I N W I T H
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
DonaldPlutoMickey
{ }
Ducks aren’t mammals
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
The database is always in a valid state, as defined
by a whole number of queries
regardless of:
(1) invalid data;
(2) concurrent requests;
(3) system failures
The database is always in a valid state, as defined
by a whole number of queries
regardless of:
(1) invalid data;
(2) concurrent requests;
(3) system failures
The database is always in a valid state, as defined
by a whole number of queries
regardless of:
(1) invalid data;
(2) concurrent requests;
(3) system failures
The database is always in a valid state, as defined
by a whole number of queries
regardless of:
(1) invalid data;
(2) concurrent requests;
(3) system failures
A C I D
• Atomicity
• Consistency
• Isolation
• Durability
W H AT I S W R O N G
W I T H S Q L ?
N O T H I N G
N O T H I N G *
* As long as you use it for the right job
– M A S L O W ’ S H A M M E R
“If all you have is a hammer,
everything looks like a nail.”
T O C O M E
• 10 different ‘flavours’ of
NoSQL Databases
• Just enough to whet the
appetite!
MongoDB
D A TA B A S E # 2 :
D O C U M E N T
S T O R E
E V E RY R O W I S A “ T H I N G ”
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
E V E RY R O W I S A “ T H I N G ”
N A M E = P U S S
C O O L N E S S = 0
!
N A M E = J E S S
C O O L N E S S = 0
!
N A M E = D I N A H
C O O L N E S S = 0
!
N A M E = E I N S T E I N
C O O L N E S S = 1 0
!
D O C U M E N T
B E WA R E !
T H AT ’ S T H E P O I N T
D E N O R M A L I S E D D ATA
F O R E X A M P L E
E V E RY R O W I S A “ T H I N G ”
N A M E = P U S S
C O O L N E S S = 0
!
N A M E = J E S S
C O O L N E S S = 0
!
N A M E = D I N A H
C O O L N E S S = 0
!
N A M E = E I N S T E I N
C O O L N E S S = 1 0
!
D O C U M E N T
E A S Y
S H A R D I N G
G E O S PAT I A L
I N D E X E S
S C H E M A L E S S
Eloquera
D A TA B A S E # 3 :
O B J E C T
D ATA B A S E
E V E RY R O W I S A “ T H I N G ”
Name Species
1 Puss
2 Dinah
3 Einstein
4 Jess
E V E RY R O W I S A “ T H I N G ”
N A M E = P U S S
C O O L N E S S = 0
!
N A M E = J E S S
C O O L N E S S = 0
!
N A M E = D I N A H
C O O L N E S S = 0
!
N A M E = E I N S T E I N
C O O L N E S S = 1 0
!
D O C U M E N T
E V E RY R O W I S A “ T H I N G ”
O B J E C T
public class Thing {
public int coolness { get; set; }
public string name { get; set; }
public Species species { get; set;}
}
T R A N S PA R E N C Y T O T H E D B
neo4j
D A TA B A S E # 4 :
G R A P H D ATA B A S E
N E O 4 J
I M P L E M E N T E D B Y …
T H E D ATA
I S T H E
R E L AT I O N S
Voldemort
D A TA B A S E # 5 :
– D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E
S T O R E
“Reliability at massive scale is one of the biggest
challenges we face at Amazon.com. Even the
slightest outage has significant financial
consequences and impacts customer trust.”
– D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E
S T O R E
“Experience at Amazon has shown that data stores
that provide ACID guarantees tend to have poor
availability”
– D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E
S T O R E
“Dynamo targets applications that operate with
weaker consistency if this results in high
availability.”
C O N S I S T E N C Y
A
B C
C O N S I S T E N C Y
A
B C
D Y N A M O I M P L E M E N TAT I O N S
V O L D E M O R T
K E Y / VA L U E
S T O R E
store.put(key, value)
value = store.get(key)
store.delete(key)
B E WA R E :
I T ’ S V E RY
L I M I T E D …
L O W
L AT E N C Y
H I G H
AVA I L A B I L I T Y
HBase/Hadoop
D A TA B A S E # 6 :
B I G
D ATA
W H E N T O U S E H A D O O P …
– C H R I S S T U C C H I O
“Don't use Hadoop - your data isn't that big.”
L I N E A R
S C A L A B I L I T Y
A U T O M AT I C
S H A R D I N G
A N D S T R O N G
C O N S I S T E N C Y
B U I LT- I N
E F F I C I E N T
Q U E RY
M E T H O D S
Marmotta
D A TA B A S E # 7 :
L I N K E D
M E D I A
F R A M E W O R K
– L I N K E D M E D I A G U I D E L I N E S
Use URIs as names for things.
Use HTTP URIs, so that people can look up those names.
– L I N K E D M E D I A G U I D E L I N E S
When someone looks up a URI, provide useful
information, using the standards (RDF, SPARQL).
– L I N K E D M E D I A G U I D E L I N E S
Include links to other URIs, so that they can discover
more things.
C O O L
S K AT I N G
V I D E O
C O O L
S K AT I N G
V I D E O
C O O L
S K AT E R
C O O L
S K AT I N G
E V E N T
C O O L
S K AT I N G
V I D E O
C O O L
S K AT E R
W I N D S U R F E R
( A K A C O O L
S K AT E R ’ S
H U S B A N D )
C O O L
S K AT I N G
E V E N T
S P O N S O R O F
C O O L S K AT I N G
E V E N T
C O O L
S K AT I N G
V I D E O
C O O L
S K AT E R
W I N D S U R F E R
( A K A C O O L
S K AT E R ’ S
H U S B A N D )
W R I T E U P O F
W I N D S U R F I N G
E V E N T
C O O L
S K AT I N G
E V E N T
S P O N S O R O F
C O O L S K AT I N G
E V E N T
I N T E R V I E W
W I T H C E O O F
S P O N S O R
A PA C H E
M A R M O T TA
O U T O F T H E B O X …
T R I P L E
VA L U E
S T O R E
T R I P L E
VA L U E S T O R E
• Video A contains Alice
McSkaterton
• Alice McSkaterton is
married to Brock
Windsurferling
• Article B contains Brock
Windsurferling
T R I P L E
VA L U E S T O R E
• Video A contains Alice
McSkaterton
• Alice McSkaterton is
married to Brock
Windsurferling
• Article B contains Brock
Windsurferling
• ENGINE SAYS VIDEO A IS
RELATED TO ARTICLE B
ElasticSearch
D A TA B A S E # 8 :
D O C U M E N T
S T O R E
E V E RY R O W I S A “ T H I N G ”
N A M E = P U S S
C O O L N E S S = 0
!
N A M E = J E S S
C O O L N E S S = 0
!
N A M E = D I N A H
C O O L N E S S = 0
!
N A M E = E I N S T E I N
C O O L N E S S = 1 0
!
D O C U M E N T
A PA C H E
L U C E N E
“Apache Lucene is a high-performance, full-
featured text search engine library … It is a
technology suitable for nearly any application that
requires full-text search”
F O C U S E D
A R O U N D
T E X T
S E A R C H I N G
Q U E R I E S
{
"query": {
"match": {"hobbies": "skateboard"}
}
}
{
"query": {
{"fuzzy": {"hobbies": “skateboarig"}}
}
}
{
"query": {
{"match": {"hobbies": {"query": "writing
reddit comments", "type": "phrase"}}}
}
}
TempoDB
D A TA B A S E # 9 :
T I M E S E R I E S
D ATA B A S E
T I M E S TA M P /
VA L U E
PA I R S
Timestamp Value
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:30:00+0100 32
T I M E S E R I E S
D ATA B A S E A S
A S E R V I C E
!
T E M P O D B
S P E C I A L I S E D Q U E R I E S
T I M E R O L L U P S
Timestamp Value
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:45:00+0100 36
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:45:00+0100 36
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:45:00+0100 36
Timestamp Average Max Min
2014-06-10T12:00:00+0100 35 36 17
2014-06-11T12:00:00+0100 21 22 20
2014-06-12T12:30:00+0100 20.5 21 19
2014-06-13T12:45:00+0100 20 20 20
2014-06-14T13:00:00+0100 18.5 19 18
T E M P O R A L I N T E R P O L AT I O N
Timestamp Value
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:45:00+0100 36
Timestamp Value
2014-06-10T12:00:00+0100 17
2014-06-10T12:15:00+0100 17
2014-06-10T12:30:00+0100 20
2014-06-10T12:45:00+0100 22
2014-06-10T13:00:00+0100 24
2014-06-10T13:15:00+0100 28
2014-06-10T13:30:00+0100 31.5
2014-06-10T13:45:00+0100 36
PostgreSQL
D A TA B A S E # 1 0 :
A L L T H E
G O O D S T U F F
O F S Q L
– P E T E R WAY N E R
“The smart NoSQL developers simply noted that
NoSQL stood for "Not Only SQL." If the masses
misinterpreted the acronym, that was their
problem.”
O P E N
S O U R C E A N D
M AT U R E
F O R E I G N
D ATA
W R A P P E R S
F O R E I G N D ATA W R A P P E R S
neo4j File Store
Legacy Oracle
System
F O R E I G N D ATA W R A P P E R S
neo4j File Store
Legacy Oracle
System
F O R E I G N D ATA W R A P P E R S
neo4j File Store
Legacy Oracle
System
S E L E C T S T U F F F R O M N E O 4 J
J O I N S T U F F F R O M F I L E S T O R E
J O I N S T U F F F R O M O R A C L E
F O R E I G N D ATA W R A P P E R S
neo4j
e.g. Patient
Data
File Store
e.g. Academic
Results
Legacy Oracle
System
e.g. Clinical Trials
S E L E C T S T U F F F R O M N E O 4 J
J O I N S T U F F F R O M F I L E S T O R E
J O I N S T U F F F R O M O R A C L E
F O R E I G N D ATA
W R A P P E R S
• SQL Databse Wrappers
• NoSQL Databases (Mongo,
neo4j etc.)
• Hadoop
• Files (JSON,
FixedLengthText)
• Web services
• Twitter
In conclusion…
R E A S O N S T O U S E O T H E R
D ATA B A S E S
• Geospatial indexes
• Schemaless data for query-time
efficiency
• Transparent Sharding
• Be transparent to the database
backend.
• More intuitive for the domain
• Cheap ‘joins’
• Low latency for simple data
• High availability in distributed
systems
• Dealing with very large datasets
• Meeting standards such as Linked
Media
• Support for time series databases
• Utilise pre-built text searching
functionality.
• Interface for other data sources
A N Y Q U E S T I O N S ?
T H A N K Y O U …

Mais conteúdo relacionado

Mais procurados

Decoupled APIs through Microservices
Decoupled APIs through MicroservicesDecoupled APIs through Microservices
Decoupled APIs through MicroservicesDavid Simons
 
iCue - an Intuitive To-Do List Reminder App- Pitch Deck
iCue - an Intuitive To-Do List Reminder App- Pitch DeckiCue - an Intuitive To-Do List Reminder App- Pitch Deck
iCue - an Intuitive To-Do List Reminder App- Pitch DeckStephanie Lin
 
Statistical Programming with JavaScript
Statistical Programming with JavaScriptStatistical Programming with JavaScript
Statistical Programming with JavaScriptDavid Simons
 
April Wensel - Crafting Compassionate Code
April Wensel - Crafting Compassionate CodeApril Wensel - Crafting Compassionate Code
April Wensel - Crafting Compassionate CodeApril Wensel
 
Will 3D printing change everything?
Will 3D printing change everything?Will 3D printing change everything?
Will 3D printing change everything?Martina F. Ferracane
 
The net is dark and full of terrors - James Bennett
The net is dark and full of terrors - James BennettThe net is dark and full of terrors - James Bennett
The net is dark and full of terrors - James BennettLeo Zhou
 
CIA For WordPress Developers
CIA For WordPress DevelopersCIA For WordPress Developers
CIA For WordPress DevelopersDavid Brumbaugh
 
How To Take Your Business From Survive To Thrive
How To Take Your Business From Survive To ThriveHow To Take Your Business From Survive To Thrive
How To Take Your Business From Survive To ThriveSixDisciplines
 
Infographics webinar
Infographics webinar Infographics webinar
Infographics webinar Kira Smith
 
Erik Hanson -- Innovation in the Enterprise: Beyond the Pixels
Erik Hanson -- Innovation in the Enterprise: Beyond the PixelsErik Hanson -- Innovation in the Enterprise: Beyond the Pixels
Erik Hanson -- Innovation in the Enterprise: Beyond the PixelsWorld IA Day Los Angeles
 
How to Write a Book in Four Easy Steps
How to Write a Book in Four Easy StepsHow to Write a Book in Four Easy Steps
How to Write a Book in Four Easy StepsStan Phelps
 
IoT_CONASTA64
IoT_CONASTA64IoT_CONASTA64
IoT_CONASTA64garybau
 
Data Visualizations in Digital Products (ProductCamp Boston 2016)
Data Visualizations in Digital Products (ProductCamp Boston 2016)Data Visualizations in Digital Products (ProductCamp Boston 2016)
Data Visualizations in Digital Products (ProductCamp Boston 2016)ProductCamp Boston
 
You Created a Plugin. Now What?
You Created a Plugin. Now What?You Created a Plugin. Now What?
You Created a Plugin. Now What?Adam W. Warner
 
How to Reuse Your Content - Search Marketing Summit Sydney
How to Reuse Your Content - Search Marketing Summit SydneyHow to Reuse Your Content - Search Marketing Summit Sydney
How to Reuse Your Content - Search Marketing Summit SydneyAshley Segura
 
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...Distilled
 
You Created a Plugin. Now What? WordCamp Sacramento
You Created a Plugin. Now What? WordCamp SacramentoYou Created a Plugin. Now What? WordCamp Sacramento
You Created a Plugin. Now What? WordCamp SacramentoAdam W. Warner
 

Mais procurados (20)

Decoupled APIs through Microservices
Decoupled APIs through MicroservicesDecoupled APIs through Microservices
Decoupled APIs through Microservices
 
iCue - an Intuitive To-Do List Reminder App- Pitch Deck
iCue - an Intuitive To-Do List Reminder App- Pitch DeckiCue - an Intuitive To-Do List Reminder App- Pitch Deck
iCue - an Intuitive To-Do List Reminder App- Pitch Deck
 
Statistical Programming with JavaScript
Statistical Programming with JavaScriptStatistical Programming with JavaScript
Statistical Programming with JavaScript
 
April Wensel - Crafting Compassionate Code
April Wensel - Crafting Compassionate CodeApril Wensel - Crafting Compassionate Code
April Wensel - Crafting Compassionate Code
 
Will 3D printing change everything?
Will 3D printing change everything?Will 3D printing change everything?
Will 3D printing change everything?
 
The net is dark and full of terrors - James Bennett
The net is dark and full of terrors - James BennettThe net is dark and full of terrors - James Bennett
The net is dark and full of terrors - James Bennett
 
CIA For WordPress Developers
CIA For WordPress DevelopersCIA For WordPress Developers
CIA For WordPress Developers
 
How To Take Your Business From Survive To Thrive
How To Take Your Business From Survive To ThriveHow To Take Your Business From Survive To Thrive
How To Take Your Business From Survive To Thrive
 
Infographics webinar
Infographics webinar Infographics webinar
Infographics webinar
 
Erik Hanson -- Innovation in the Enterprise: Beyond the Pixels
Erik Hanson -- Innovation in the Enterprise: Beyond the PixelsErik Hanson -- Innovation in the Enterprise: Beyond the Pixels
Erik Hanson -- Innovation in the Enterprise: Beyond the Pixels
 
How to Write a Book in Four Easy Steps
How to Write a Book in Four Easy StepsHow to Write a Book in Four Easy Steps
How to Write a Book in Four Easy Steps
 
IoT_CONASTA64
IoT_CONASTA64IoT_CONASTA64
IoT_CONASTA64
 
Data Visualizations in Digital Products (ProductCamp Boston 2016)
Data Visualizations in Digital Products (ProductCamp Boston 2016)Data Visualizations in Digital Products (ProductCamp Boston 2016)
Data Visualizations in Digital Products (ProductCamp Boston 2016)
 
You Created a Plugin. Now What?
You Created a Plugin. Now What?You Created a Plugin. Now What?
You Created a Plugin. Now What?
 
Tournament trends 2018
Tournament trends 2018Tournament trends 2018
Tournament trends 2018
 
How to Reuse Your Content - Search Marketing Summit Sydney
How to Reuse Your Content - Search Marketing Summit SydneyHow to Reuse Your Content - Search Marketing Summit Sydney
How to Reuse Your Content - Search Marketing Summit Sydney
 
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...
SearchLove San Diego 2018 | Ashley Ward | Reuse, Recycle: How to Repurpose Yo...
 
DATA FLOWS & NATIONAL SECURITY
DATA FLOWS & NATIONAL SECURITYDATA FLOWS & NATIONAL SECURITY
DATA FLOWS & NATIONAL SECURITY
 
AUA Data Science Meetup
AUA Data Science MeetupAUA Data Science Meetup
AUA Data Science Meetup
 
You Created a Plugin. Now What? WordCamp Sacramento
You Created a Plugin. Now What? WordCamp SacramentoYou Created a Plugin. Now What? WordCamp Sacramento
You Created a Plugin. Now What? WordCamp Sacramento
 

Semelhante a 10 d bs in 30 minutes

SEO orientado a Ventas - DSMVALENCIA 2017
SEO orientado a Ventas - DSMVALENCIA 2017SEO orientado a Ventas - DSMVALENCIA 2017
SEO orientado a Ventas - DSMVALENCIA 2017Luis M Villanueva
 
Pro Dev Day 2018 - Passwords are Dead
Pro Dev Day 2018 - Passwords are DeadPro Dev Day 2018 - Passwords are Dead
Pro Dev Day 2018 - Passwords are DeadDaniel Ayala
 
The New Norm(al): Confronting What Open Means for Higher Education
The New Norm(al): Confronting What Open Means for Higher EducationThe New Norm(al): Confronting What Open Means for Higher Education
The New Norm(al): Confronting What Open Means for Higher EducationBonnie Stewart
 
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...UX STRAT
 
Accidental Ecologist
Accidental EcologistAccidental Ecologist
Accidental EcologistLaura James
 
How to Become a Martian
How to Become a MartianHow to Become a Martian
How to Become a MartianBrian Shiro
 
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015 A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015 Adam Yuret
 
Master Track B: “Innovation, Design, & the Seamless User Experience”
Master Track B: “Innovation, Design, & the Seamless User Experience”Master Track B: “Innovation, Design, & the Seamless User Experience”
Master Track B: “Innovation, Design, & the Seamless User Experience”iMedia Connection
 
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]Netex Learning
 
Thinking Outside the Book KPR
Thinking Outside the Book KPRThinking Outside the Book KPR
Thinking Outside the Book KPRlrougeux
 
Trends, organisatie impact en social media presentatie
Trends, organisatie impact en social media presentatieTrends, organisatie impact en social media presentatie
Trends, organisatie impact en social media presentatieMirror Wise
 
APItheDocs: How Can API Documentation Be Agile?
APItheDocs: How Can API Documentation Be Agile?APItheDocs: How Can API Documentation Be Agile?
APItheDocs: How Can API Documentation Be Agile?eBranding Ninja
 
The Ethics of Everybody Else
The Ethics of Everybody ElseThe Ethics of Everybody Else
The Ethics of Everybody ElseTyler Schnoebelen
 
In de weerd presentatie social media
In de weerd presentatie social mediaIn de weerd presentatie social media
In de weerd presentatie social mediaMirror Wise
 
TECHnosterone and UXtrogens: field check
TECHnosterone and UXtrogens: field checkTECHnosterone and UXtrogens: field check
TECHnosterone and UXtrogens: field checkGoulven Champenois
 
Should we have a pedagogy of technology?
Should we have a pedagogy of technology?Should we have a pedagogy of technology?
Should we have a pedagogy of technology?Ashley Casey
 
Security and Privacy in Healthcare
Security and Privacy in HealthcareSecurity and Privacy in Healthcare
Security and Privacy in HealthcareTyrone Grandison
 
Encontrar puntos de acuerdo ante los retos digitales
Encontrar puntos de acuerdo ante los retos digitalesEncontrar puntos de acuerdo ante los retos digitales
Encontrar puntos de acuerdo ante los retos digitalesEduardo Chávez
 

Semelhante a 10 d bs in 30 minutes (20)

SEO orientado a Ventas - DSMVALENCIA 2017
SEO orientado a Ventas - DSMVALENCIA 2017SEO orientado a Ventas - DSMVALENCIA 2017
SEO orientado a Ventas - DSMVALENCIA 2017
 
Pro Dev Day 2018 - Passwords are Dead
Pro Dev Day 2018 - Passwords are DeadPro Dev Day 2018 - Passwords are Dead
Pro Dev Day 2018 - Passwords are Dead
 
The New Norm(al): Confronting What Open Means for Higher Education
The New Norm(al): Confronting What Open Means for Higher EducationThe New Norm(al): Confronting What Open Means for Higher Education
The New Norm(al): Confronting What Open Means for Higher Education
 
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...
XD Immersive: Jessica Outlaw, Augmented Reality and the Future of Immersive E...
 
Accidental Ecologist
Accidental EcologistAccidental Ecologist
Accidental Ecologist
 
How to Become a Martian
How to Become a MartianHow to Become a Martian
How to Become a Martian
 
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015 A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015
A Twenty-Minute Intro to Scrum Lean Agile Scotland 2015
 
Master Track B: “Innovation, Design, & the Seamless User Experience”
Master Track B: “Innovation, Design, & the Seamless User Experience”Master Track B: “Innovation, Design, & the Seamless User Experience”
Master Track B: “Innovation, Design, & the Seamless User Experience”
 
What is Student Centered Coaching?
What is Student Centered Coaching?What is Student Centered Coaching?
What is Student Centered Coaching?
 
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]
i-lovelearning Madrid 2017 | The Role of L&D in the Modern Organisation [EN]
 
Thinking Outside the Book KPR
Thinking Outside the Book KPRThinking Outside the Book KPR
Thinking Outside the Book KPR
 
Trends, organisatie impact en social media presentatie
Trends, organisatie impact en social media presentatieTrends, organisatie impact en social media presentatie
Trends, organisatie impact en social media presentatie
 
Dropbox
DropboxDropbox
Dropbox
 
APItheDocs: How Can API Documentation Be Agile?
APItheDocs: How Can API Documentation Be Agile?APItheDocs: How Can API Documentation Be Agile?
APItheDocs: How Can API Documentation Be Agile?
 
The Ethics of Everybody Else
The Ethics of Everybody ElseThe Ethics of Everybody Else
The Ethics of Everybody Else
 
In de weerd presentatie social media
In de weerd presentatie social mediaIn de weerd presentatie social media
In de weerd presentatie social media
 
TECHnosterone and UXtrogens: field check
TECHnosterone and UXtrogens: field checkTECHnosterone and UXtrogens: field check
TECHnosterone and UXtrogens: field check
 
Should we have a pedagogy of technology?
Should we have a pedagogy of technology?Should we have a pedagogy of technology?
Should we have a pedagogy of technology?
 
Security and Privacy in Healthcare
Security and Privacy in HealthcareSecurity and Privacy in Healthcare
Security and Privacy in Healthcare
 
Encontrar puntos de acuerdo ante los retos digitales
Encontrar puntos de acuerdo ante los retos digitalesEncontrar puntos de acuerdo ante los retos digitales
Encontrar puntos de acuerdo ante los retos digitales
 

Mais de David Simons

Four Architectural Patterns
Four Architectural Patterns Four Architectural Patterns
Four Architectural Patterns David Simons
 
Data Modelling at Scale
Data Modelling at ScaleData Modelling at Scale
Data Modelling at ScaleDavid Simons
 
Non-Functional Requirements
Non-Functional RequirementsNon-Functional Requirements
Non-Functional RequirementsDavid Simons
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-EndDavid Simons
 
Build Tools & Maven
Build Tools & MavenBuild Tools & Maven
Build Tools & MavenDavid Simons
 
Graph theory in Practise
Graph theory in PractiseGraph theory in Practise
Graph theory in PractiseDavid Simons
 
Decoupled APIs through microservices
Decoupled APIs through microservicesDecoupled APIs through microservices
Decoupled APIs through microservicesDavid Simons
 
TDD: What is it good for?
TDD: What is it good for?TDD: What is it good for?
TDD: What is it good for?David Simons
 
Domain Driven Design: A Precis
Domain Driven Design: A PrecisDomain Driven Design: A Precis
Domain Driven Design: A PrecisDavid Simons
 
Using Clojure to Marry Neo4j and Open Democracy
Using Clojure to Marry Neo4j and Open DemocracyUsing Clojure to Marry Neo4j and Open Democracy
Using Clojure to Marry Neo4j and Open DemocracyDavid Simons
 
Exploring Election Results with Neo4J
Exploring Election Results with Neo4JExploring Election Results with Neo4J
Exploring Election Results with Neo4JDavid Simons
 

Mais de David Simons (12)

Four Architectural Patterns
Four Architectural Patterns Four Architectural Patterns
Four Architectural Patterns
 
Data Modelling at Scale
Data Modelling at ScaleData Modelling at Scale
Data Modelling at Scale
 
Non-Functional Requirements
Non-Functional RequirementsNon-Functional Requirements
Non-Functional Requirements
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-End
 
Build Tools & Maven
Build Tools & MavenBuild Tools & Maven
Build Tools & Maven
 
Graph Modelling
Graph ModellingGraph Modelling
Graph Modelling
 
Graph theory in Practise
Graph theory in PractiseGraph theory in Practise
Graph theory in Practise
 
Decoupled APIs through microservices
Decoupled APIs through microservicesDecoupled APIs through microservices
Decoupled APIs through microservices
 
TDD: What is it good for?
TDD: What is it good for?TDD: What is it good for?
TDD: What is it good for?
 
Domain Driven Design: A Precis
Domain Driven Design: A PrecisDomain Driven Design: A Precis
Domain Driven Design: A Precis
 
Using Clojure to Marry Neo4j and Open Democracy
Using Clojure to Marry Neo4j and Open DemocracyUsing Clojure to Marry Neo4j and Open Democracy
Using Clojure to Marry Neo4j and Open Democracy
 
Exploring Election Results with Neo4J
Exploring Election Results with Neo4JExploring Election Results with Neo4J
Exploring Election Results with Neo4J
 

Último

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

10 d bs in 30 minutes

  • 1. A D D I N G N O S Q L T O Y O U R A R S E N A L
  • 2. A D D I N G N O S Q L T O Y O U R A R S E N A L
  • 3. A K A T E N D ATA B A S E S I N H A L F A N H O U R
  • 4. SQL D A TA B A S E # 1 :
  • 5. T H E I N D U S T RY S TA N D A R D
  • 6. R D B M S ( R E L AT I O N A L D ATA B A S E M A N A G E M E N T S Y S T E M )
  • 7. R D B M S • Schema-driven • Set-based operations • ACID transactionality
  • 8. S C H E M A D R I V E N
  • 10. S E T- B A S E D O P E R AT I O N R E A D D A TA O U T W I T H
  • 11. E V E RY R O W I S A “ T H I N G ” Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 12. “ W H E R E ” ( I N T E R S E C T I O N ) Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 13. U N I O N S Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess 5 Nemo 6 Moby Dick 7 Wanda
  • 14. J O I N S Name Species Species Coolness Rating 1 Puss 0 2 Dinah 0 3 Einstein 10 4 Jess 0
  • 15. C A R T E S I A N P R O D U C T S 0 10 0 10 0 10
  • 16. C A R T E S I A N P R O D U C T S 0 10 0 10 0 10
  • 17. – R O N E R N E S T ( & T H E S Q L C O M M U N I T Y AT L A R G E ) “Cursors are evil.”
  • 18. A C I D W R I T E D A TA I N W I T H
  • 19. Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 22. Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 23. The database is always in a valid state, as defined by a whole number of queries regardless of: (1) invalid data; (2) concurrent requests; (3) system failures
  • 24. The database is always in a valid state, as defined by a whole number of queries regardless of: (1) invalid data; (2) concurrent requests; (3) system failures
  • 25. The database is always in a valid state, as defined by a whole number of queries regardless of: (1) invalid data; (2) concurrent requests; (3) system failures
  • 26. The database is always in a valid state, as defined by a whole number of queries regardless of: (1) invalid data; (2) concurrent requests; (3) system failures
  • 27. A C I D • Atomicity • Consistency • Isolation • Durability
  • 28. W H AT I S W R O N G W I T H S Q L ?
  • 29. N O T H I N G
  • 30. N O T H I N G * * As long as you use it for the right job
  • 31. – M A S L O W ’ S H A M M E R “If all you have is a hammer, everything looks like a nail.”
  • 32. T O C O M E • 10 different ‘flavours’ of NoSQL Databases • Just enough to whet the appetite!
  • 33. MongoDB D A TA B A S E # 2 :
  • 34. D O C U M E N T S T O R E
  • 35. E V E RY R O W I S A “ T H I N G ” Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 36. E V E RY R O W I S A “ T H I N G ” N A M E = P U S S C O O L N E S S = 0 ! N A M E = J E S S C O O L N E S S = 0 ! N A M E = D I N A H C O O L N E S S = 0 ! N A M E = E I N S T E I N C O O L N E S S = 1 0 ! D O C U M E N T
  • 37. B E WA R E !
  • 38. T H AT ’ S T H E P O I N T
  • 39. D E N O R M A L I S E D D ATA F O R E X A M P L E
  • 40. E V E RY R O W I S A “ T H I N G ” N A M E = P U S S C O O L N E S S = 0 ! N A M E = J E S S C O O L N E S S = 0 ! N A M E = D I N A H C O O L N E S S = 0 ! N A M E = E I N S T E I N C O O L N E S S = 1 0 ! D O C U M E N T
  • 41.
  • 42. E A S Y S H A R D I N G
  • 43.
  • 44. G E O S PAT I A L I N D E X E S
  • 45.
  • 46. S C H E M A L E S S
  • 47. Eloquera D A TA B A S E # 3 :
  • 48. O B J E C T D ATA B A S E
  • 49. E V E RY R O W I S A “ T H I N G ” Name Species 1 Puss 2 Dinah 3 Einstein 4 Jess
  • 50. E V E RY R O W I S A “ T H I N G ” N A M E = P U S S C O O L N E S S = 0 ! N A M E = J E S S C O O L N E S S = 0 ! N A M E = D I N A H C O O L N E S S = 0 ! N A M E = E I N S T E I N C O O L N E S S = 1 0 ! D O C U M E N T
  • 51. E V E RY R O W I S A “ T H I N G ” O B J E C T public class Thing { public int coolness { get; set; } public string name { get; set; } public Species species { get; set;} }
  • 52. T R A N S PA R E N C Y T O T H E D B
  • 53. neo4j D A TA B A S E # 4 :
  • 54. G R A P H D ATA B A S E
  • 55.
  • 56. N E O 4 J I M P L E M E N T E D B Y …
  • 57.
  • 58. T H E D ATA I S T H E R E L AT I O N S
  • 59.
  • 60.
  • 61.
  • 62. Voldemort D A TA B A S E # 5 :
  • 63. – D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E S T O R E “Reliability at massive scale is one of the biggest challenges we face at Amazon.com. Even the slightest outage has significant financial consequences and impacts customer trust.”
  • 64. – D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E S T O R E “Experience at Amazon has shown that data stores that provide ACID guarantees tend to have poor availability”
  • 65. – D Y N A M O : A M A Z O N ’ S H I G H LY AVA I L A B L E K E Y- VA L U E S T O R E “Dynamo targets applications that operate with weaker consistency if this results in high availability.”
  • 66. C O N S I S T E N C Y A B C
  • 67. C O N S I S T E N C Y A B C
  • 68. D Y N A M O I M P L E M E N TAT I O N S
  • 69. V O L D E M O R T
  • 70. K E Y / VA L U E S T O R E
  • 74. B E WA R E : I T ’ S V E RY L I M I T E D …
  • 75. L O W L AT E N C Y
  • 76. H I G H AVA I L A B I L I T Y
  • 77. HBase/Hadoop D A TA B A S E # 6 :
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85. B I G D ATA W H E N T O U S E H A D O O P …
  • 86. – C H R I S S T U C C H I O “Don't use Hadoop - your data isn't that big.”
  • 87.
  • 88. L I N E A R S C A L A B I L I T Y
  • 89. A U T O M AT I C S H A R D I N G A N D S T R O N G C O N S I S T E N C Y
  • 90. B U I LT- I N E F F I C I E N T Q U E RY M E T H O D S
  • 91. Marmotta D A TA B A S E # 7 :
  • 92. L I N K E D M E D I A F R A M E W O R K
  • 93. – L I N K E D M E D I A G U I D E L I N E S Use URIs as names for things. Use HTTP URIs, so that people can look up those names.
  • 94. – L I N K E D M E D I A G U I D E L I N E S When someone looks up a URI, provide useful information, using the standards (RDF, SPARQL).
  • 95. – L I N K E D M E D I A G U I D E L I N E S Include links to other URIs, so that they can discover more things.
  • 96.
  • 97. C O O L S K AT I N G V I D E O
  • 98. C O O L S K AT I N G V I D E O C O O L S K AT E R C O O L S K AT I N G E V E N T
  • 99. C O O L S K AT I N G V I D E O C O O L S K AT E R W I N D S U R F E R ( A K A C O O L S K AT E R ’ S H U S B A N D ) C O O L S K AT I N G E V E N T S P O N S O R O F C O O L S K AT I N G E V E N T
  • 100. C O O L S K AT I N G V I D E O C O O L S K AT E R W I N D S U R F E R ( A K A C O O L S K AT E R ’ S H U S B A N D ) W R I T E U P O F W I N D S U R F I N G E V E N T C O O L S K AT I N G E V E N T S P O N S O R O F C O O L S K AT I N G E V E N T I N T E R V I E W W I T H C E O O F S P O N S O R
  • 101. A PA C H E M A R M O T TA O U T O F T H E B O X …
  • 102. T R I P L E VA L U E S T O R E
  • 103. T R I P L E VA L U E S T O R E • Video A contains Alice McSkaterton • Alice McSkaterton is married to Brock Windsurferling • Article B contains Brock Windsurferling
  • 104. T R I P L E VA L U E S T O R E • Video A contains Alice McSkaterton • Alice McSkaterton is married to Brock Windsurferling • Article B contains Brock Windsurferling • ENGINE SAYS VIDEO A IS RELATED TO ARTICLE B
  • 105. ElasticSearch D A TA B A S E # 8 :
  • 106. D O C U M E N T S T O R E
  • 107. E V E RY R O W I S A “ T H I N G ” N A M E = P U S S C O O L N E S S = 0 ! N A M E = J E S S C O O L N E S S = 0 ! N A M E = D I N A H C O O L N E S S = 0 ! N A M E = E I N S T E I N C O O L N E S S = 1 0 ! D O C U M E N T
  • 108. A PA C H E L U C E N E
  • 109. “Apache Lucene is a high-performance, full- featured text search engine library … It is a technology suitable for nearly any application that requires full-text search”
  • 110. F O C U S E D A R O U N D T E X T S E A R C H I N G Q U E R I E S
  • 111. { "query": { "match": {"hobbies": "skateboard"} } }
  • 112. { "query": { {"fuzzy": {"hobbies": “skateboarig"}} } }
  • 113. { "query": { {"match": {"hobbies": {"query": "writing reddit comments", "type": "phrase"}}} } }
  • 114. TempoDB D A TA B A S E # 9 :
  • 115. T I M E S E R I E S D ATA B A S E
  • 116. T I M E S TA M P / VA L U E PA I R S
  • 117.
  • 118. Timestamp Value 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:30:00+0100 32
  • 119. T I M E S E R I E S D ATA B A S E A S A S E R V I C E ! T E M P O D B
  • 120. S P E C I A L I S E D Q U E R I E S
  • 121. T I M E R O L L U P S
  • 122. Timestamp Value 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:45:00+0100 36 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:45:00+0100 36 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:45:00+0100 36
  • 123. Timestamp Average Max Min 2014-06-10T12:00:00+0100 35 36 17 2014-06-11T12:00:00+0100 21 22 20 2014-06-12T12:30:00+0100 20.5 21 19 2014-06-13T12:45:00+0100 20 20 20 2014-06-14T13:00:00+0100 18.5 19 18
  • 124. T E M P O R A L I N T E R P O L AT I O N
  • 125. Timestamp Value 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:45:00+0100 36
  • 126. Timestamp Value 2014-06-10T12:00:00+0100 17 2014-06-10T12:15:00+0100 17 2014-06-10T12:30:00+0100 20 2014-06-10T12:45:00+0100 22 2014-06-10T13:00:00+0100 24 2014-06-10T13:15:00+0100 28 2014-06-10T13:30:00+0100 31.5 2014-06-10T13:45:00+0100 36
  • 127. PostgreSQL D A TA B A S E # 1 0 :
  • 128. A L L T H E G O O D S T U F F O F S Q L
  • 129. – P E T E R WAY N E R “The smart NoSQL developers simply noted that NoSQL stood for "Not Only SQL." If the masses misinterpreted the acronym, that was their problem.”
  • 130. O P E N S O U R C E A N D M AT U R E
  • 131. F O R E I G N D ATA W R A P P E R S
  • 132. F O R E I G N D ATA W R A P P E R S neo4j File Store Legacy Oracle System
  • 133. F O R E I G N D ATA W R A P P E R S neo4j File Store Legacy Oracle System
  • 134. F O R E I G N D ATA W R A P P E R S neo4j File Store Legacy Oracle System S E L E C T S T U F F F R O M N E O 4 J J O I N S T U F F F R O M F I L E S T O R E J O I N S T U F F F R O M O R A C L E
  • 135. F O R E I G N D ATA W R A P P E R S neo4j e.g. Patient Data File Store e.g. Academic Results Legacy Oracle System e.g. Clinical Trials S E L E C T S T U F F F R O M N E O 4 J J O I N S T U F F F R O M F I L E S T O R E J O I N S T U F F F R O M O R A C L E
  • 136. F O R E I G N D ATA W R A P P E R S • SQL Databse Wrappers • NoSQL Databases (Mongo, neo4j etc.) • Hadoop • Files (JSON, FixedLengthText) • Web services • Twitter
  • 138. R E A S O N S T O U S E O T H E R D ATA B A S E S • Geospatial indexes • Schemaless data for query-time efficiency • Transparent Sharding • Be transparent to the database backend. • More intuitive for the domain • Cheap ‘joins’ • Low latency for simple data • High availability in distributed systems • Dealing with very large datasets • Meeting standards such as Linked Media • Support for time series databases • Utilise pre-built text searching functionality. • Interface for other data sources
  • 139. A N Y Q U E S T I O N S ? T H A N K Y O U …