nosql for search - riak
TRANSCRIPT
![Page 1: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/1.jpg)
NoSQL for Search
![Page 2: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/2.jpg)
Thiago Avelino@avelino0
![Page 3: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/3.jpg)
Quem esta fazendo?
![Page 4: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/4.jpg)
Quem usa?
![Page 5: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/5.jpg)
Mais um NoSQL?
2008, Akamai Technologies, Inc.
![Page 6: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/6.jpg)
DefiniçãoeLevelDB
![Page 7: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/7.jpg)
Bala de prata
solução para maquina de pesquisa
![Page 8: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/8.jpg)
Porque Riak?•Escalável
•Altamente disponível em rede
•Key/Value
•Erlang
•Total controle de memoria
•Ferramenta de Indexação
•Versão comercial
![Page 9: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/9.jpg)
Escrevendo com Chave e Value
Key/ValueKey/Value
Aplicação
Riak
![Page 10: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/10.jpg)
Escrevendo com Chave e Value
objectoobjecto
Aplicação
Riak
![Page 11: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/11.jpg)
Consulta com Chave e Value
keykey
Aplicação
Riak
objectoobjecto
![Page 12: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/12.jpg)
Consulta via Map/Reduce
key+funçãokey+função
Aplicação
Riak
objecto(s)objecto(s)
MapMap
MapMap
ReduceReduce
![Page 13: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/13.jpg)
Consulta por indexe secundario
where linguagem == "python"
where linguagem == "python"
Aplicação
Riak
WTF!!
WTF!!Aceito
pesquisa inteligente...
Aceito pesquisa
inteligente...
![Page 14: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/14.jpg)
Texto complexo
“Linguagem python ou ruby”
“Linguagem python ou ruby”
Aplicação
Riak
Agora você precisa de
Riak..
Agora você precisa de
Riak..
![Page 15: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/15.jpg)
Pesquisa de texto complexa e mecanismo de
indexação baseado em Riak
![Page 16: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/16.jpg)
Ambiente
Aplicação
Aplicação
RiakRiak
![Page 17: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/17.jpg)
Ambiente
Aplicação
Aplicação
RiakRiakInde
xInde
x
![Page 18: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/18.jpg)
Aplicação
Aplicação
RiakRiak
maquina de buscapreciso de mais index
?????????
?????????
![Page 19: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/19.jpg)
![Page 20: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/20.jpg)
Aplicação
Aplicação
RiakRiakLucene
ouSolr
Luceneou
Solr
O que achei?
![Page 21: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/21.jpg)
Aplicação
Aplicação
RiakRiakLucene
ouSolr
Luceneou
Solr
Java
Java
![Page 22: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/22.jpg)
Aplicação
Aplicação
Lucene
Lucene
RiakRiak
Lucene deve resolver o meu problema
![Page 23: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/23.jpg)
Aplicação
Aplicação
Lucene
LuceneLucene
LuceneLucene
Lucene
RiakRiak
Aumentando a capacidade de armazenamento
![Page 24: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/24.jpg)
Aplicação
Aplicação
Lucene
LuceneLucene
LuceneLucene
Lucene
Lucene
LuceneLucene
LuceneLucene
Lucene
Lucene
LuceneLucene
LuceneLucene
Lucene
RiakRiak
Replicar para adicionar mais produtividade
![Page 25: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/25.jpg)
Riak Search
Aplicação
Aplicação
Riak SearchRiak
Search
RiakRiak
Index
Index
RiakRiak
Index
Index
RiakRiak
Index
Index
![Page 26: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/26.jpg)
•Lucene Syntax
•Reutiliza Java Lucene Analyzers
•Solr Endpoints
•Integração via Riak Post-Commit Hook (Index)
•Integração via Riak Map/Reduce (Query)
•Schema-less
Funcionalidades como lucene
(e muito mais)
![Page 27: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/27.jpg)
•Adicionar maquina em tempo real (Processamento e mais espaço)
•Automatico Load Balance
•Replica (Duplicar dados ou performance)
•indexes e query em paralelo
•...
e muito mais
![Page 28: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/28.jpg)
Como é feito os indexes?
Documento
Index
NoSQL é o futuro de BigData#1#1
nosql, 1é, 1o, 1
futuro, 1de, 1
bigdata, 1
![Page 29: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/29.jpg)
Como é feito os indexes?
Documento
Index
NoSQL é o futuro de BigData#1#1
nosql, 1nosql, 2nosql, 3
é, 1é, 2
bigdata, 1bigdata, 3
...
É bom usar NoSQL em produção#2#2
Recomendado usar NoSQL com
BigData#3#3
![Page 30: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/30.jpg)
Consulta em tempo real
nosql E bigdata
bigdatanosql
E
![Page 31: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/31.jpg)
Consulta em tempo real
bigdatanosql
E
nosql, 1nosql, 2nosql, 3
bigdata, 1bigdata, 3
![Page 32: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/32.jpg)
Consulta em tempo real
(Merge intercessão)
Resultado: 1, 3
123
13
![Page 33: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/33.jpg)
Consulta em tempo real
(Merge união)
Resultado: 1, 2, 3
123
13
![Page 34: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/34.jpg)
Comportamento complexo
![Page 35: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/35.jpg)
Indexando documento
[{programadores: {nome: “Thiago Avelino”,linguagem: [“python”, “javascript”, “ruby”],nosql: [{nome: “riak”, tipo: [“key”, “valor”]},{nome: “mongodb”, tipo: [“documento”, “key”, “valor”]},]},}]
![Page 36: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/36.jpg)
Indexando documento
#programadores
#nome
#linguagem
#nosql
Thiago Avelino
pythonjavascript
ruby
#nome
#tipo
riakmongod
b
keyvalue
documento
![Page 37: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/37.jpg)
Dividindo index em node
Riak #1Riak #1 Riak #2Riak #2 Riak #3Riak #3
Index
Index
Index
Index
Index
Index
16 gb16 gb 6 gb6 gb 2 gb2 gb
![Page 38: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/38.jpg)
Dividindo index em node
#programadores
#nome
#linguagem
#nosql
Thiago Avelino
pythonjavascript
ruby
#nome
#tipo
riakmongod
b
keyvalue
documento
![Page 39: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/39.jpg)
Dividindo index em node
#programadores
#nome
#linguagem
#nosql
Thiago Avelino
pythonjavascript
ruby
#nome
#tipo
riakmongod
b
keyvalue
documento
Node #1Node #1 Node #2Node #2 Node #3Node #3
![Page 40: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/40.jpg)
Dividindo index em node#programador
es
#nome
#linguagem
#nosql
Thiago Avelino
pythonjavascript
ruby
#nome
#tipo
riakmongod
b
keyvalue
documento
$node #1
$node #2
$node #3
![Page 41: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/41.jpg)
Drivers
•Python
•Ruby
•php
•Javascript (NodeJS)
•.Net
![Page 42: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/42.jpg)
Links•http://basho.com/
•http://basho.com/products/riak-control/
•http://basho.com/products/riak-enterprise/
•http://wiki.basho.com/
•https://github.com/basho
•http://shop.oreilly.com/product/0636920018957.do (Book)
![Page 43: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/43.jpg)
Quer saber mais sobre Riak?
Pergunta-me como!
Quer saber mais sobre Riak?
Pergunta-me como!
![Page 44: NoSQL for Search - Riak](https://reader037.vdocuments.net/reader037/viewer/2022100300/55856249d8b42a970b8b4bff/html5/thumbnails/44.jpg)
Obrigado!Perguntas?
Thiago Avelino@avelino0
www.avelino.usthiagoavelinoster@gma
il.com