5 de Julho The Developer's Conference 2012 - Trilha NoSQL 1
Armazenamento de Dados
para Web Semântica
Slide 2
Slide 2 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 2
Alexandre Gomes Gaigalas
http://about.me/alganet
Slide 3
Slide 3 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 3
Hoje você vai ver...
Slide 4
Slide 4 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 4
Hoje você vai ver...
●
Web Semântica: O que é, e porque é animal.
Slide 5
Slide 5 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 5
Hoje você vai ver...
●
Web Semântica: O que é, e porque é animal.
●
RDF: O que é, e porque é animal.
Slide 6
Slide 6 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 6
Hoje você vai ver...
●
Web Semântica: O que é, e porque é animal.
●
RDF: O que é, e porque é animal.
●
SPARQL: O que é, e porque é animal.
Slide 7
Slide 7 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 7
Slide 8
Slide 8 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 8
?1
Slide 9
Slide 9 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 9
?1 : cor : azul
?1
Slide 10
Slide 10 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 10
?
?1 : cor : azul
?1 : formato : circumferência
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 16
Sujeito : Predicado : Objeto
Slide 17
Slide 17 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 17
SujeitoID : PredicadoID : ObjetoID
Slide 18
Slide 18 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 18
SujeitoURI : PredicadoURI : ObjetoURI
RDF
Slide 19
Slide 19 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 19
SujeitoURI : PredicadoURI : ObjetoURI
PREFIX dbpedia: http://dbpedia.org/
dbpedia:resource/Yahoo_Mail dbpedia:ontology/developer dbpedia:resource/Yahoo
RDF
Slide 20
Slide 20 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 20
SujeitoURI : PredicadoURI : ObjetoURI
PREFIX dbpedia: http://dbpedia.org/
dbpedia:resource/Yahoo_Mail dbpedia:ontology/developer dbpedia:resource/Yahoo
dbpedia:ontology/developer rdfs:Class rdfs:Property
RDF
Slide 21
Slide 21 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 21
PREFIX foaf: http://xmlns.com/foaf/0.1/
SELECT ?person
WHERE {
?person rdfs:Class foaf:Person
}
SPARQL
Slide 22
Slide 22 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 22
PREFIX foaf: http://xmlns.com/foaf/0.1/
SELECT ?person
WHERE {
?person a foaf:Person
}
Atalho pra rdfs:Class
Atalhos
Slide 23
Slide 23 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 23
PREFIX foaf: http://xmlns.com/foaf/0.1/
SELECT ?person
WHERE {
?person a foaf:Person
?person foaf:mbox “[email protected]”
}
Condições
Slide 24
Slide 24 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 24
PREFIX foaf: http://xmlns.com/foaf/0.1/
SELECT ?person ?friend
WHERE {
?person foaf:knows ?friend
?person foaf:interest ?something
?something dc:title “NoSQL”
}
Expressando relacionamentos
Slide 25
Slide 25 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 25
PREFIX ex: http://example.com
SELECT ?foo ?bar
WHERE {
?foo ex:bar “baz”
}
ORDER BY ?foo
LIMIT 20
OFFSET 10
Cheatsheet
Slide 26
Slide 26 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 26
PREFIX foaf: http://xmlns.com/foaf/0.1/
CONSTRUCT {
?person foaf:knows ?friend
?person foaf:interest ?something
?something dc:title “NoSQL”
}
Construindo Grafos
Slide 27
Slide 27 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 27
Algumas Implementações
Slide 28
Slide 28 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 28
Algumas Implementações
●
AllegroGraph (gratuito/pago, proprietário)
●
+1 Trilhão de triplas
●
Carrega 800.000 triplas por segundo
Slide 29
Slide 29 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 29
Algumas Implementações
●
AllegroGraph (gratuito/pago, proprietário)
●
+1 Trilhão de triplas
●
Carrega 800.000 triplas por segundo
●
OpenLink Virtuoso (dual license)
●
+15 Bilhões de triplas
●
200.000 triplas por segundo
●
data.gov.uk
●
sudo apt-get install virtuoso-opensource
Slide 30
Slide 30 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 30
Algumas Implementações
●
AllegroGraph (gratuito/pago, proprietário)
●
+1 Trilhão de triplas
●
Carrega 800.000 triplas por segundo
●
OpenLink Virtuoso (dual license)
●
+15 Bilhões de triplas
●
200.000 triplas por segundo
●
data.gov.uk
●
sudo apt-get install virtuoso-opensource
●
4store (open source)
●
+15 Bilhões de triplas
●
150.000 triplas por segundo
●
sudo apt-get install 4store
Slide 31
Slide 31 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 31
4store
●
4s-backend-setup --node --cluster --segments --mirror
●
4s-cluster-create
●
4s-cluster-start
●
4s-cluster-stop
●
4s-cluster-file-backup
●
4s-import
●
4s-httpd
Slide 32
Slide 32 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 32
4s-httpd
●
PUT http://foobar/baz
●
ou PUT /data/http%3a%2f%2ffoobar%2fbaz
●
POST /data
●
POST /update/ (SPARUL)
●
DELETE
●
DROP
●
CLEAR
●
LOAD
●
LOAD INTO
Slide 33
Slide 33 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 33
Um banco de dados não substitui outro
Slide 34
Slide 34 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 34
Perguntas?
Slide 35
Slide 35 text
5 de Julho The Developer's Conference 2012 - Trilha NoSQL 35
Obrigado!