!
!
Rodrigo D. A. Senra!
!
!
Rodrigo D. A. Senra!
Apenas um rapaz latino americano...
• Engenheiro de Computação Graduação-MSc-PhD IC-Unicamp
• Pythonista pioneiro (desde 1999)
de Software
• Especialista
no mercado desde 1996
na Globo.com desde 08/2012
2
Apenas um rapaz latino americano...
• Engenheiro de Computação Graduação-MSc-PhD IC-Unicamp
• Pythonista pioneiro (desde 1999)
de Software
• Especialista
no mercado desde 1996
na Globo.com desde 08/2012
2
BROADCAST
MOVIES
EVENTS
RADIO NETWORK
PAY TV
NEW VENTURES
INTERNET
MUSIC
PUBLISHING
NEWSPAPER
BROADCAST
MOVIES
EVENTS
RADIO NETWORK
PAY TV
NEW VENTURES
INTERNET
MUSIC
PUBLISHING
NEWSPAPER
Vamos falar sobre …
Vamos falar sobre …
Semântica
• Aplicações
• Modelo RDF
Vamos falar sobre …
Semântica
• Aplicações
• Modelo RDF
Brainiak API:
•
•
•
•
•
Por que foi criado ?
O que é ?
Como funciona ?
Quem desenvolve ?
Quando vira open-source ?
O ator Charles Chapling, famoso pelo personagem Carlitos,
personificou Adolph Hitler em “O Grande Ditador”.
globo
esporte
.com
globo
esporte
.com
Anotações Semânticas
Anotações Semânticas
Caso Isabella Nardoni
Túmulo de Isabella vira local de visitação em SP; casal Nardoni está
preso.
Juliana Cardilli
G1 SP
Isabella Nardoni foi morta em 29 de março de 2008
Isabella de Oliveira Nardoni, de 5 anos,
foi morta na noite de 29 de março de
2008. A perícia concluiu que a menina
foi atirada do sexto andar do prédio
onde moravam seu pai, Alexandre
Nardoni, sua madrasta, Anna Carolina
Jatobá, e dois filhos pequenos do casal,
na Vila Isolina Mazzei, na zona norte de
São Paulo.
Anotações Semânticas
Caso Isabella Nardoni
Túmulo de Isabella vira local de visitação em SP; casal Nardoni está
preso.
Juliana Cardilli
G1 SP
Isabella Nardoni foi morta em 29 de março de 2008
Isabella de Oliveira Nardoni, de 5 anos,
foi morta na noite de 29 de março de
2008. A perícia concluiu que a menina
foi atirada do sexto andar do prédio
onde moravam seu pai, Alexandre
Nardoni, sua madrasta, Anna Carolina
Jatobá, e dois filhos pequenos do casal,
na Vila Isolina Mazzei, na zona norte de
São Paulo.
Anotações Semânticas
Caso Isabella Nardoni
Túmulo de Isabella vira local de visitação em SP; casal Nardoni está
preso.
Juliana Cardilli
G1 SP
Isabella Nardoni foi morta em 29 de março de 2008
Isabella de Oliveira Nardoni, de 5 anos,
foi morta na noite de 29 de março de
2008. A perícia concluiu que a menina
foi atirada do sexto andar do prédio
onde moravam seu pai, Alexandre
Nardoni, sua madrasta, Anna Carolina
Jatobá, e dois filhos pequenos do casal,
na Vila Isolina Mazzei, na zona norte de
São Paulo.
FOAF
GEO
Dublin
Core
SKOS
RDF
Jornalista
CMA
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
cita
cita
http://semantica.globo.com/base/cita_a_entidade
http://globoesporte.globo.com/…/noticia-tal
http://semantica.globo.com/base/cita_a_entidade
http://globoesporte.globo.com/…/noticia-tal
http://semantica.globo.com/base/cita_a_entidade
http://semantica.globo.com/esportes/Equipe/Barcelona
sujeito
http://globoesporte.globo.com/…/noticia-tal
predicado
http://semantica.globo.com/base/cita_a_entidade
objeto
http://semantica.globo.com/esportes/Equipe/Barcelona
sujeito
predicado
objeto
http://semantica.globo.com/esportes/Equipe/Barcelona
sujeito
http://semantica.globo.com/esportes/Equipe/Barcelona
predicado
objeto
sujeito
http://semantica.globo.com/esportes/Equipe/Barcelona
predicado
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
objeto
http://semantica.globo.com/esportes/Equipe
Consulta SPARQL
listar todos times
select ?id ?nome!
from esportes:!
where {!
! ?id rdf:type esportes:Equipe .!
?id rdfs:label ?nome .!
}
Resposta SPARQL
?id
?nome
Jornalista
â
CMA
CDA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
Jornalista
â
CMA
CDA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
CDA
Caches
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
CDA
Caches
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
Internauta
Browser
Web
CDA
Caches
Jornalista
â
CMA
ia
s
r
e
é
t
õ
Ma otaç
An
m
Se
ca
nti
s
Internauta
Browser
Web
CDA
Caches
Inicialmente
Solr
Virtuosos
Inicialmente
Solr
Virtuosos
Inicialmente
Solr
Virtuosos
Inicialmente
Solr
Virtuosos
Inicialmente
Solr
Virtuosos
Atualmente
Solr
Legado
Virtuosos
Atualmente
Solr
Legado
Virtuosos
ElasticSearch
Brainiak
Atualmente
Solr
Legado
Barramento
Mercury
Brainiak
Virtuosos
ElasticSearch
Atualmente
Solr
Virtuosos
Legado
ElasticSearch
Barramento
Mercury
Brainiak
Eureka
VoceDaNota
A-Z
Sitemaps
CMAaS
Atualmente
Solr
Virtuosos
Legado
ElasticSearch
Barramento
Mercury
Brainiak
Eureka
VoceDaNota
Autenticação e Autorização
A-Z
Sitemaps
Backstage
CMAaS
Futuramente
ElasticSearch
Barramento
Brainiak
Virtuosos
Autenticação e Autorização
Eureka
VoceDaNota
A-Z
Sitemaps
Backstage
CMAaS
Brainiak é …
!
• 100% Python
• API RESTful • Hipermídia (HATEOAS)
• Json-schema ☜☞ RDF
Vamos examinar como o
Brainiak opera.
Consulta SPARQL
listar todos times
select ?id ?nome!
from esportes:!
where {!
! ?id rdf:type esportes:Equipe .!
?id rdfs:label ?nome .!
}
Consulta ao Brainiak
GET
/esportes/Equipe
Resposta do Brainiak
{!
"items": [!
{!
"title": "Atlético-MG",!
"@id": "http://semantica.globo.com/esportes/equipe/282",!
"class_prefix": "esportes",!
"resource_id": "282"!
},!
{!
"title": "Bahia de Feira",!
"@id": "http://semantica.globo.com/esportes/equipe/2590",!
"class_prefix": "esportes",!
"resource_id": "2590"!
}[!
],!
"@id": "esportes:Equipe"!
}
Esquema do Brainiak
/esportes/Equipe/_schema
{!
"links": [!
{!
"href": "/esportes/Equipe/_schema?class_prefix=http://semantica.globo.com/esportes/",!
"method": "GET",!
"rel": "class"!
},!
{!
"href": "/esportes/Equipe?class_prefix=http://semantica.globo.com/esportes/",!
"method": "POST",!
"rel": "create",!
"schema": {"$ref": "{+_base_url}"}!
},!
{!
"href": "/_/_/_?instance_uri={value}",!
"method": "GET",!
"rel": "relatedInstance"!
},!
…
Mapa de Hiper-navegação
> pip freeze
SPARQLWrapper==1.5.0-authdigest
DAD==1.0.2
ESTester==1.1.0
Fabric==1.6.0
Jinja2==2.7.1
MarkupSafe==0.18
Pygments==1.6
Sphinx==1.1.3
Unidecode==0.04.14
alf==0.4
astroid==1.0.0
coverage==3.7
distribute==0.7.3
docutils==0.11
ecdsa==0.9
nose-exclude==0.1.9
paramiko==1.12.0
pep8==1.4.1
pinocchio==0.3.1
pycrypto==2.6
pycurl==7.19.0
pyflakes==0.7.3
pylint==1.0.0
python-dateutil==2.2
python-slugify==0.0.7
rdflib==3.2.3
redis==2.7.6
requests==2.0.1
greenlet==0.4.0
gunicorn==0.14.6
isodate==0.4.9
jsonschema==2.3.0
ogilab-common==0.60.0
meld3==0.6.10
selenium==2.37.2
semantic-web-pygments==0.1.0
simplejson==3.3.1
six==1.5.2
sphinx-bootstrap-theme==0.1.8
sphinxcontrib-programoutput==0.8
splinter==0.5.4
stomp.py==3.1.3
supervisor==3.0b2
tornado==3.1
tornado-cors==0.3.2
ujson==1.33
uritemplate==0.6
wsgiref==0.1.2
mock==1.0.1
logilab-common==0.60.0
meld3==0.6.10
mock==1.0.1
nose==1.2.1
Vamos liberar o Brainiak !
!
@brainiak_api
Desenvolvedores
Desenvolvedores
Ícaro Medeiros
Tatiana Al-Chueyr
Rodrigo Senra
… e grande elenco de colaboradores !
globodev.tumblr.com
Obrigado a todos
pela atenção.
Rodrigo Dias Arruda Senra
!
[email protected]
http://rodrigo.senra.nom.br
@rodsenra
As opiniões e conclusões expressas nesta apresentação são de exclusiva responsabilidade de Rodrigo Senra. !
É necessário requisitar permissão do autor para o uso de partes ou do todo desta apresentação, favor
consultar o autor.
!
As ilustrações do Brainiac foram obtidas de domínio público e são de autoria de Alex Ross.
Download

Slides