Académique Documents
Professionnel Documents
Culture Documents
04/07/2011
1. 2.
3.
4.
04/07/2011
Introduo. Que problemas apresentam as BD Clssicas O que NoSql. Exemplo de aplicao, problemas que resolve e outros. Concluses.
GBD Ufscar 2
04/07/2011
GBD Ufscar
04/07/2011
GBD Ufscar
04/07/2011
GBD Ufscar
04/07/2011
GBD Ufscar
Gleicon Moraes.
04/07/2011
GBD Ufscar
Gleicon Moraes.
04/07/2011
GBD Ufscar
Gleicon Moraes.
04/07/2011
GBD Ufscar
Gleicon Moraes.
10
04/07/2011
GBD Ufscar
Gleicon Moraes.
11
04/07/2011
GBD Ufscar
Gleicon Moraes.
12
04/07/2011
GBD Ufscar
Gleicon Moraes.
13
D a d o s
04/07/2011
GBD Ufscar
14
04/07/2011
GBD Ufscar
15
NoSql
04/07/2011 GBD Ufscar 17
BD No Relacional.
Com Escalabilidade e desempenho.
04/07/2011
GBD Ufscar
19
O que ?
04/07/2011 GBD Ufscar 20
04/07/2011
GBD Ufscar
Xiang, P., Hou, R., Zhou, Z. Cache and consistency in NOSQL IEEE 2010
22
Bd Bigtable pelo google, 2004. O Bd Dynamo pelo Amazom,2007. O Bd Cassandra pelo Facebook,2008. O BD OD CouchDB pelo Apache 2008.
Bancos de dados nosql x SGBDs Relacionais: Analise comparativa. Ricardo W. Brito, Facultad Farias Brito e universidade de 23 Fortaleza.
04/07/2011
GBD Ufscar
04/07/2011
GBD Ufscar
Fonte: What Goes Around Comes Around por Michael Stonebraker e Joey Hellerstein(200524 2006).
04/07/2011
GBD Ufscar
25
04/07/2011
GBD Ufscar
26
1.-Correta afinao dos parmetros do SO. 2.- Otimizao das consultas SQL. 3.-Comprar um servidor melhor.
04/07/2011
GBD Ufscar
27
Servidores
com nveis de uso de capacidade computacional bastantes baixos, com medias 510%, em perodos de pico usa o 30% a 40%.
Upgrade no Servidor.
04/07/2011
GBD Ufscar
28
04/07/2011
GBD Ufscar
29
04/07/2011
GBD Ufscar
30
04/07/2011
GBD Ufscar
31
04/07/2011
GBD Ufscar
32
04/07/2011
GBD Ufscar
33
SIM
04/07/2011
GBD Ufscar
34
Servidor Web
04/07/2011
GBD Ufscar
36
Ecomerce.
04/07/2011
GBD Ufscar
37
04/07/2011
GBD Ufscar
39
e ainda carrega todo o peso de um SGBDR. Escalar possvel, mais se perde as caractersticas que tornam SGBDR teis.
Mauricio Diana Ime Usp 2010
04/07/2011 GBD Ufscar 41
Fonte: [1] 10 Regras para escalar com desempenho em simples operaes de banco de dados. Michael Stonebraker e Rick Catel ( junho 2011).
6.- Evite operaes Multi-Node. 7 .- No tente construir consistncia ACID voc mesmo. 9 .- Preste ateno ao desempenho do n.
10 Regras para escalar com desempenho em simples operaes de banco de dados. Michael Stonebraker e Rick Catel ( junho 2011).
04/07/2011 GBD Ufscar 42
04/07/2011
GBD Ufscar
43
Partio de operaes e dados significa simplicidade administrativa, no assumir uma medida para tudo. (Michael Stonebraker e Rick Cattell).
04/07/2011
GBD Ufscar
44
04/07/2011
GBD Ufscar
45
Site Mukirama, promove leiles onde os usurios participam comprando itens com valores bem abaixo daqueles praticados no mercado. Usurios simultneos usando o sistema!!!
04/07/2011 GBD Ufscar 47
Com BDR paga um preo alto pela concorrncia, visto que comearia a demorar para obter o lock, refazer o lock e atualizar o status da tarefa.
04/07/2011
GBD Ufscar
48
04/07/2011
GBD Ufscar
49
1.-Controle da concorrncia
Numero usurios por Minuto. Numero Requisies simultneas. Numero requisies por Minuto. Usurios simultneos usando o sistema.
04/07/2011
GBD Ufscar
50
Buscando eficincia, para o controle e persistncia* das tarefas que precisam escrever simultaneamente.
Nosql evita os Locks(Modelo de concorrncia Simplificado).
Cache Distribudo
04/07/2011
GBD Ufscar
52
04/07/2011
GBD Ufscar
53
Gleicon Moraes.
04/07/2011 GBD Ufscar 54
5.-Resultados de querys como tabelas no cache. 6.- Arquivos log como tabelas. 7.- Stoned Procedures.
Antipatterns sql!!!
04/07/2011
GBD Ufscar
Gleicon Moraes.
55
Antipatterns Sql
Alternativ as
Modelo de dados orientado a documentos. Chavevalor propiedades Sharding. Desnormalizar, serializar objetos. Modelo de dados orientado a documentos/ modelo de dados chave-valor.
04/07/2011
Gleicon Moraes.
GBD Ufscar
56
Antip. Sql
Querys como tabelas no cache Log como Tabela Stoned Procedures
Alternativ as
Desnormalizar, MemCached, Redis + AOF + EXPIRE
04/07/2011
GBD Ufscar
Gleicon Moraes.
57
PAC
04/07/2011
GBD Ufscar
Fonte: Fayaz Yusuf Khan, Guided by, Nimi Prakash P. System Analyst Computer Science & Engineering Department September 29, 2010 to CS 708 Seminar NoSQL.
58
Consistncia. Disponibilidade. Tolerncia a particionamento.- Se um ou mais ns falhar, o sistema ainda funciona e se torna consistente quando o sistema entra em operao.
Fonte: Fayaz Yusuf Khan, Guided by, Nimi Prakash P. System Analyst Computer Science & Engineering Department September 29, 2010 to CS 708 Seminar NoSQL.
04/07/2011
GBD Ufscar
59
Embora seja desejvel ter PAC em cada sistema, infelizmente, nenhum sistema pode atingir os trs ao mesmo tempo.
04/07/2011
GBD Ufscar
60
(confiar
04/07/2011
GBD Ufscar
61
C+A (consistncia + disponibilidade) A+P (disponibilidade + tolerncia a particionamento) C+P(consistncia +tolerncia a particionamento)
Controvrsia!!!
04/07/2011 GBD Ufscar 62
Basicamente Disponveis.
04/07/2011
GBD Ufscar
63
Google, Yahoo, Facebook, Amazon, eBay, etc. Constri grandes aplicaes com o CAP e BASE.
04/07/2011
GBD Ufscar
Fonte: Fayaz Yusuf Khan, Guided by, Nimi Prakash P. System Analyst Computer Science & Engineering Department September 29, 2010 to CS 708 Seminar NoSQL. 64
04/07/2011
GBD Ufscar
65
A estrutura de dados do Apache Cassandra trabalha da seguinte forma: Keyspaces, ColumnFamily, Column, SuperColumn,....
04/07/2011
GBD Ufscar
66
04/07/2011
GBD Ufscar
67
04/07/2011
GBD Ufscar
68
id.....nome.........endereo...................telefone ============================================== 1......Fulano.......Av. Paulista, 100.........9999-9999 2......Ciclano......Av. dos Estados, 10.....8888-8888 Banco de dados Relacional [1],[Fulano],[Av. Paulista, 100],[9999-9999]; [2],[Ciclano],[Av. dos Estados, 10],[8888-8888]; Banco de dados Orientado a Columna [1],[2], [Fulano],[Ciclano], [Av. Paulista, 100], [Av. dos Estados, 10], [9999-9999], [8888-8888];
04/07/2011 GBD Ufscar 69
Um grafo representado como um conjunto de pontos (vrtices) ligados por retas (as arestas). Dependendo da aplicao, as arestas podem ser direcionadas, e so representadas por setas.
04/07/2011
GBD Ufscar
70
Web as pginas na web se relacionam atravs de links criando um gigantesco grafo. Redes sociais: As pessoas se interligam atravs da amizade. Se A amigo de B e B amigo de C, indiretamente, A esta conectado a Orkut um exemplo de rede de amigos que, um grafo. Voc possui amigos e est conectado a eles.
GBD Ufscar 71
04/07/2011
04/07/2011
GBD Ufscar
72
Esquema livre.
Distribudos .
Escalabilidade horizontal. Consistncia eventual/ Base(Not Acid). Facil suporte replicao .* API Simple*.
Fonte: http://nosql-database.org/ [based on 5 sources, 11 constructive feedback emails and1 disliking comment.
04/07/2011 GBD Ufscar
Port (Eventual: significa talvez no acontea) En ( vai acontecer mais no se sabe em que momento). Fonte: Mauricio Diana.
74
Aderindo a um banco de dados NoSql muita da responsabilidade de cuidar dos dados fica a cargo da aplicao. Mais vc conta com uma arquitetura e modelo de dados flexvel onde vc vai ter menos dor de cabea quando cresce teu BD.
Ver grfico estatstico dos pases que pesquisa NoSql: http://www.google.com/trends?q=nosql
04/07/2011 GBD Ufscar 75
1.- NoSql mais funcional frente ao sistema clssico: porque cada entrada(registro) no nosql, pode guardar todas as verses pelo que ele passou com uma velocidade de acesso e uma capacidade de indexao e criao de ndices superior a um SGBDR. Tambm conta com replicao bidirecional* e escalamento.
04/07/2011
GBD Ufscar
76
2.-Foras, fraquezas, riscos(nosql escenario menos definido, no esquecer que o mais promissor). 3.-DBA poliglota.- NoSql tem varias solues para cenrios especficos. 4.-Contexto importa.- Cada caso deve ser estudado com cuidado.
04/07/2011
GBD Ufscar
77
Simpsios
Mauricio Diana (Mestrado Ime-Usp)Perdas e Ganhos NoSql. http://www.slideshare.net/mdediana/no-sql-perdaseganhos. Lucindo Moraes (Mestrado Ime-U Escalabilidade no Qcon 2010. http://qconsp.com/palestrante/renato-lucindo. Alexandre Porcelli e Gleicom Moraes NoSql no infoq 2010.
http://www.7co.cc/ http://www.infoq.com/br/author/Alexandre-Porcelli-e-Gleicon-Moraes
04/07/2011
GBD Ufscar
78
04/07/2011
[1]: FayazYusuf Khan, Guided by, Nimi Prakash P. System Analyst Computer Science & Engineering Department September 29, 2010 to CS 708 Seminar NoSQL. [2]: http://www.webartigos.com/articles/17334/1/um-exemplo-deimplementacao-de-banco-de-dadosdistribuido/pagina1.html#ixzz1OiBMCcii [3]. Artigo de Bancos de dados nosql x SGBDs Relacionais: Analise comparativa Ricardo W. Brito, Facultad Farias Brito e universidade de Fortaleza. [4]Seminar NoSql Prepared by Mimi Parakash P. Systema Analist Computer Science & Engineerin Department, setember 2010. [6]NoSql Relational Database Management System:Home page Strozzi.it.http://www.strozzi.it/cgibin/CSA/tw7/I/en_Us/nosql/Homepage.Acessado 13/05/2011 [7] 10 Regras para escalar com desempenho em simples operaes de banco de dados. Michael Stonebraker e Rick Catel ( junho 2011). [8] What Goes Around Comes Around por Michael Stonebraker e Joey Hellerstein(2005-2006). [9]Xiang, P., Hou, R., Zhou, Z. Cache and consistency in NOSQL IEEE 2010.
GBD Ufscar 79
04/07/2011
GBD Ufscar
80