Helder Santana
Estudante


Helder Santana
Ciéncia da Computacéo(UFBA)

§

Estudante


Helder Santana
Ciéncia da Computacéo(UFBA)
ArangoDB

/ 

Estudante


Helder Santana
Helder Santana
Helder Santana
Helder Santana
Ciéncia da Computa<;5o(UFBA)
ArangoDB

/ 

Estudante


Helder Santana


/  Desenvolvedor Pleno O/ an-8
Colaborador 

/ 

C...
Ciéncia da Computa¢5o(UFBA)
ArangoDB

/ 

Estudante


Helder Santana

 


/  Desenvolvedor Pleno O/ an-3
Colaborador 
/  P...
ArangoDB

CFREE E CDDIGO ABERTO (G| THUB)D

CBANCO DE DADOS MULTI MODELO§

CDIVERSAS FORMAS DE ACESSOD

CEXTENSWEL ATRAVES...
ArangoDB

 

Facil de Usar
ArangoDB
CHAVE-VALOR

Mapeia um valor em um Linico identificador
Dado néo tem estrutura
Escala’vel e Particiona'vel facilm...
ArangoDB
DOCUMENTO

Normalmente baseado em chave-valor
Documentos séo salvos em uma colecéo
Dados normalmente possuem uma ...
firangefifi
“% ‘E-‘T: ,.: i': ‘.i_-F" _’

Vértices e Arestas séo Documentos
Algoritimos de grafos “buiIt-in”

Podem ser consu...
ArangoDB
MODOS DE ACESSO

Diferentes cena'rios requerem diferentes meios de acesso: 

CARI RESTFULL> CAGL LANGUAGE) <JAVAS...
Porque uma nova Iinguagem
de consulta?
SOL néo se adequou bem. 
UnQL parece esta morto. 
XQuery é poderosa mais muito complexa. 

J$ONiq ainda nao tinha sido ini...
Arangoflfi
QUERY LANGUAGE (AOL)

Linguagem declarativa baseada na Xauery. 
Difere do SQL devido a palavras-chave néo existen...
Arangoflfi

GUERY LANGUAGE (AQL)
EXEMPLO

FOR u IN users
COI. LEC'1' city =  u. contact. add. ress. city INTO g
LIMIT 0,20
R...
Arangofifi
EXTENSiVEL ATRAVES DE JAVASCRIPT

Transacao para mtiltiplas colecées
Operacées de delecfio e atualizacao em cascat...
Arangofifi
EXTENSiVEL ATRAVES DE JAVASCRIPT

Agregar resultados de mL'Iltiplas consultas em uma resposta tinica. 
Execucéo d...
fiarangofifi
ACTION SERVER

Pode responder requisicoes HTTP diretamente. 
Pode escrever suas proprias funcoes iavascript (“ac...
figrangoflfl
FOXX

Framework para construcao de APls. 
Criado para densenvolvedores front-end (utiliza a Iinguagem javascript...
"" " AV '34- I
-

EXEMPLO

Foxx =  require("org/ arangodb/ foxx"); 
controller =  Fox. Controller (Appcontext) ; 
contro1l...
Geracao automatica de documentacao. 
Modelos e Repositorios. 
Repositorio central de aplicacées Foxx para reuso. 

Modulo ...
amangonn Fécil uso
Interface de administracao web. 

Interface HTTP para consultas simples. 
AQL para consultas complexas

Sem dependéncias e...
W

‘s

-_: a-"rev  . pe -‘V '— fit‘.  “ e 9
.  . .  - .  .
. ”—§J . . . .;  gar .1 — ~‘—oI‘§n ‘-9

Sistema para uma rede co...
7%

'1'- Q [‘_i : = '1
,  r ‘:3. -
J  ~b¢ IA;  —: 

A II‘
at. ‘

 

Modelo Relacional muito complexo para gerenciar. 
Difi...
»L. I hi «
Primeiramente pensou em usar o MongoDB e o Neo4J. 
Simplificava a aplicacao,  mas aumentava a complexidade da infra-estrut...
HTTP Interface
Peformance aceitavel

Boa documentacao

Comunidade crescente
‘E

Q

IE
ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos
ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos
ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos
ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos
Nächste SlideShare
Wird geladen in …5
×

ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos

1.152 Aufrufe

Veröffentlicht am

Nesta palestra, apresento uma breve introdução ao mundo do banco de dados NoSQL, apontando os benefícios da persistência poliglota. Apresento o ArangoDB, um banco de dados universal de código aberto com um modelo de dados flexível para documentos, grafos e chave-valor. Crie aplicativos de alto desempenho usando uma linguagem de consulta sql-like ou extensões JavaScript/Ruby.

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.152
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
19
Aktionen
Geteilt
0
Downloads
10
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

ArangoDB – Persistência Poliglota e Banco de Dados Multi-Modelos

  1. 1. Helder Santana
  2. 2. Estudante Helder Santana
  3. 3. Ciéncia da Computacéo(UFBA) § Estudante Helder Santana
  4. 4. Ciéncia da Computacéo(UFBA) ArangoDB / Estudante Helder Santana
  5. 5. Helder Santana
  6. 6. Helder Santana
  7. 7. Helder Santana
  8. 8. Ciéncia da Computa<;5o(UFBA) ArangoDB / Estudante Helder Santana / Desenvolvedor Pleno O/ an-8 Colaborador / Certificado Zeno’
  9. 9. Ciéncia da Computa¢5o(UFBA) ArangoDB / Estudante Helder Santana / Desenvolvedor Pleno O/ an-3 Colaborador / PH P #SoftwareLivre J Certificado Zeno’
  10. 10. ArangoDB CFREE E CDDIGO ABERTO (G| THUB)D CBANCO DE DADOS MULTI MODELO§ CDIVERSAS FORMAS DE ACESSOD CEXTENSWEL ATRAVES DE JAVASCRIPTD (ALTA PERFORMANCE E USO EFICIENTE DO ESPACOD
  11. 11. ArangoDB Facil de Usar
  12. 12. ArangoDB CHAVE-VALOR Mapeia um valor em um Linico identificador Dado néo tem estrutura Escala’vel e Particiona'vel facilmente Pode ser visto como um caso especial de Documento. No futuro, tera' uma colecio do tipo chave-valor
  13. 13. ArangoDB DOCUMENTO Normalmente baseado em chave-valor Documentos séo salvos em uma colecéo Dados normalmente possuem uma estrutura(JSON) Pode ter atributos indexados e pode-se fazer consultas
  14. 14. firangefifi “% ‘E-‘T: ,.: i': ‘.i_-F" _’ Vértices e Arestas séo Documentos Algoritimos de grafos “buiIt-in” Podem ser consultados utilizando index geogréficos, full-text, SGL-Like Queries.
  15. 15. ArangoDB MODOS DE ACESSO Diferentes cena'rios requerem diferentes meios de acesso: CARI RESTFULL> CAGL LANGUAGE) <JAVASCR| PT ACTIONS?
  16. 16. Porque uma nova Iinguagem de consulta?
  17. 17. SOL néo se adequou bem. UnQL parece esta morto. XQuery é poderosa mais muito complexa. J$ONiq ainda nao tinha sido iniciada.
  18. 18. Arangoflfi QUERY LANGUAGE (AOL) Linguagem declarativa baseada na Xauery. Difere do SQL devido a palavras-chave néo existente nela. lmplementada em C e Javascript.
  19. 19. Arangoflfi GUERY LANGUAGE (AQL) EXEMPLO FOR u IN users COI. LEC'1' city = u. contact. add. ress. city INTO g LIMIT 0,20 RETURN { "city" : city, "users" : 1ength(g) }
  20. 20. Arangofifi EXTENSiVEL ATRAVES DE JAVASCRIPT Transacao para mtiltiplas colecées Operacées de delecfio e atualizacao em cascata Atribuicéo de permissées para as “actions” Travessia de grafos individualmente
  21. 21. Arangofifi EXTENSiVEL ATRAVES DE JAVASCRIPT Agregar resultados de mL'Iltiplas consultas em uma resposta tinica. Execucéo de operacées de dados intensas. Criacéio de aplicacées - Foxx App Framework.
  22. 22. fiarangofifi ACTION SERVER Pode responder requisicoes HTTP diretamente. Pode escrever suas proprias funcoes iavascript (“actions”). Sistema de permissoes. Pode ser usado como servidor de aplicacao.
  23. 23. figrangoflfl FOXX Framework para construcao de APls. Criado para densenvolvedores front-end (utiliza a Iinguagem javascript). Acesso direto ao banco de dados.
  24. 24. "" " AV '34- I - EXEMPLO Foxx = require("org/ arangodb/ foxx"); controller = Fox. Controller (Appcontext) ; contro1ler. get("/ users/ zname" , function (req, res) { res . json ( { hello: req. params ("name") ; }): }):
  25. 25. Geracao automatica de documentacao. Modelos e Repositorios. Repositorio central de aplicacées Foxx para reuso. Modulo de autenticacao.
  26. 26. amangonn Fécil uso
  27. 27. Interface de administracao web. Interface HTTP para consultas simples. AQL para consultas complexas Sem dependéncias externas. Multi Modelos.
  28. 28. W ‘s -_: a-"rev . pe -‘V '— fit‘. “ e 9 . . . - . . . ”—§J . . . .; gar .1 — ~‘—oI‘§n ‘-9 Sistema para uma rede comercial de venda de cosméticos. Perfis de usuério Grupos de usuario Relétorios dos grupos de usuérios Relacionamento entre usua'rios e grupos
  29. 29. 7% '1'- Q [‘_i : = '1 , r ‘:3. - J ~b¢ IA; —: A II‘ at. ‘ Modelo Relacional muito complexo para gerenciar. Dificuldade em tratar os dados como estrutura de a'rvore/ grafo. Gerenciamento de espaco. Relacionamento entre usuérios e grupos.
  30. 30. »L. I hi «
  31. 31. Primeiramente pensou em usar o MongoDB e o Neo4J. Simplificava a aplicacao, mas aumentava a complexidade da infra-estrutura. ArangoDB como Linica ferramenta de banco de dados.
  32. 32. HTTP Interface Peformance aceitavel Boa documentacao Comunidade crescente
  33. 33. ‘E Q IE

×