nosql: uma análise crítica

9
1 NoSQL: Uma análise crítica Ms. Mauro C. Pichiliani ([email protected]) @pichiliani @databasecast

Upload: pichiliani

Post on 25-May-2015

1.030 views

Category:

Technology


2 download

DESCRIPTION

Slides da minha apresentação no evento 7Masters NoSQL realizado na sede do iMasters em 26/02/2014

TRANSCRIPT

Page 1: NoSQL: Uma análise crítica

1

NoSQL: Uma análise crítica

Ms. Mauro C. Pichiliani ([email protected])@pichiliani

@databasecast

Page 2: NoSQL: Uma análise crítica

2

Page 3: NoSQL: Uma análise crítica

3

Tópicos

� NoSQL é novo

� NoSQL é fácil e rápido de instalar, usar e manter

� NoSQL e armazenamento para BigData

� NoSQL é barato

� NoSQL e performance

Page 4: NoSQL: Uma análise crítica

4

NoSQL é novo?

� Que tal DBF? CSV? XML?� Grafos? Uso massivo desde 1990… (academia)� Bancos sem necessidade de transação?� Que tal o maior banco de dados distribuído do mundo?� E o banco de dados mais utilizado?

Page 5: NoSQL: Uma análise crítica

5

NoSQL: fácil e rápido� Contexto: aplicações web que nascem do dia para noite

� Startup tem que ter algo para mostrar. Agora. � Beta eterno

� Usabilidade é subjetiva, mas há critérios e avaliação objetiva

� Bootstrap inicial rápido leva a problemas no futuro?

� Instalar: MongoDB x Hadoop

� Usar: MapReduce x SELECT … GROUP BY…

� Manter: 10-20 anos de experiência cluster x ambiente distribuído para escalabilidade

Page 6: NoSQL: Uma análise crítica

6

NoSQL e armazenamento

� Aguenta o tranco? Certamente!� Mas e a gestão dos dados no longo prazo?

� Segurança além do básico?� Opções adequadas de backup, compactação?� E a validação, cleasing e qualidade de dados?� Interoperabilidade além de importação/exportação?� Opções de tunning além de índices?� Compatilidade com o legado (sistemas e versões antigas?)� Migrações? Comparações?

� Será que o resposta será: “tudo ficará a cargo da aplicação” para sempre?

� E rodar o NoSQL na nuvem, resolve estas questões?

Page 7: NoSQL: Uma análise crítica

7

NoSQL é barato� Certamente NoSQL na nuvem é mais barato do que on-premisses

� Mas em todos os cenários com muitos dados isso é verdade?

� Foco na comparação de preço deixa aspectos técnicos de lado?

� E outros fatores ocultos que influenciam no custo:� Largura de banda e QoS da conexão?� Custo de upload/download de dados para cloud?� Custo da mão de obra?� Tempo de treinamento?� Suporte?� Espaço em HD, processamento e memória para testes?� Custo de não poder ter flexibilidade para ajustes finos no hardware?

� É justo comparar custo quando você muda o hardware, a plataforma, a aplicação, o banco de dados, a arquitetura os dados e mantém apenas o usuário?

Page 8: NoSQL: Uma análise crítica

8

NoSQL e peformance� No mundo NoSQL parece que performance = escalabilidade

� Tendência de pensar que performance se resolve adicionando mais nós, fazendo mais sharding, comprando mais máquina virtual, instalando mais instâncias, contratando novo provedor da nuvem…

� Tais abordagens podem ser rápidas e práticas

� E muitas vezes são empregadas “a rodo” � Tendência a usar mais configuração/instalação do que implementação?

� Que tal investir em:� Modelagem� Técnicas de tuning� Algoritmos melhores� Conhecimento dos dados, simulações e previsões� Exploração do paralelismo de múltiplos cores em um único servidor� Capacitação das pessoas� Arquitetura e organização de todos os componentes

� Uma ideia maluca: que tal se concentrar mais no problema do que na solução?

Page 9: NoSQL: Uma análise crítica

9

Conclusão

� NoSQL já não é mais o garoto novo na quebrada

� Passamos do ponto de discutir semântia e argumentosbásicos

� Dizer que “produto x ou y é melhor para z ou w” já não é maissuficiente

� Evolução do NoSQL mostra bons e maus caminhos

� Ainda engatinhamos em comparações objetivas

� Adoção fortemente influenciada por aspectos de negócio,economia ou comportamento de manada

� Bons e maus cases precisam ser mais detalhados (edivulgados)