23
SEM LIMITES COM NOSQL

Sem limites com NoSQL

Embed Size (px)

Citation preview

Page 1: Sem limites com NoSQL

SEM LIMITES COM NOSQL

Page 2: Sem limites com NoSQL

SOBRE – JHONATHAN DE SOUZA SOARES

• Bacharel Ciência da Computação - UNIFENAS

• Pós Graduado em Arquitetura de Software - IGTI

• MBA em Gestão de TI - UNIS

• Most Valuable Professional (MVP) - Microsoft

• Top 50 World Certified - Neo4j

• Evangelist e Ambassador - MongoDB

• Scrum Master PSM – Scrum.org

• Professor na FIAP e Bandtec

• Lead Architect na Lumini IT Solutions

Page 3: Sem limites com NoSQL

SURGIMENTO NOSQL

• Primeiramente introduzido em 1998 por Carlo Strozzi, como

NoREL

• Conceito BigTable – 2006 Google Inc

•NÃO ACID ( Atomicidade, Consistência, Isolamento e

Durabilidade )

• SIM BASE (Basic Availability , Soft-state , Eventual consistency )

Page 4: Sem limites com NoSQL

FUNDAMENTOS NOSQL

BASE - Basically Available, Soft state, Eventual consistency

• Basic Availability

• Caracteriza-se por ser basicamente disponível, ou seja, o sistema parece

estar funcionando o tempo todo;

• Soft-state

• Em estado leve, o sistema não precisa ser consistente o tempo todo nem

possuir esquema rígido

• Eventual consistency

• Eventualmente consistente, o sistema torna-se consistente no momento

devido, priorizando a disponibilidade do que a consistência.

Page 5: Sem limites com NoSQL
Page 6: Sem limites com NoSQL

FUNDAMENTOS NOSQL

• BIG DATA – Grande volume de dados

• BIG DATA – Velocidade para análise de dados

• BIG DATA – Capturar, armazenar e analisar dados não

estruturados

• Flexibilidade no desenvolvimento

• “Nova” Arquitetura em Nuvem

• Internet of things – tudo conectado

•Demandas por escalabilidade é cada vez maior

Page 7: Sem limites com NoSQL

90% das empresas top

100 que mais faturam no

mundo utilizam algum

NoSQL!

Page 8: Sem limites com NoSQL

NOSQL NÃO SUBSTITUI SQL, E SIM TRABALHA EM CONJUNTO -

POLIGLOTA

NoSQLNão Relacional, distribuído, alta performance para e alta escalabilidade;

SQLRelacional, processamento de transações, concorrência, consistência, baixíssima latência;

Dificuldades para escalar; Não serve para tudo;

Page 9: Sem limites com NoSQL

TIPOS DE NOSQL

• Colunar | Wide Column | Column Families

• Hadoop – Hbase – Cassandra – Google BigTable – Azure Tables

• Orientado à Documentos | Document Store

• MongoDB – CouchBase – DocumentDB – ElasticSearch

• Chave-Valor | Tuple Store | Key Value

• DynamoDB – Redis – Memcache

• Orientado à Grafos | Graph Databases

• Neo4j – TitanDB - GraphData

•MULTI MODEL DATABASES (ou quase)

• ArangoDB – OrientDB – Azure CosmosDB – MongoDB

Page 10: Sem limites com NoSQL

TIPOS DE NOSQL

Key Value

Column

Document

Graph

SQL Store

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7 8 9 10

Escala

bilid

ade

Complexidade

Complexidade x Escalabilidade NoSQL

Page 11: Sem limites com NoSQL

TEOREMA DE CAP

Page 12: Sem limites com NoSQL

FUNDAMENTOS NOSQL

NoSQL = No Join (?) = Not Only Join

O que substitui o JOIN ?

•Hierarquia;

•Duplicar Dados (desnormalizar);

•Diferentes modelos para consultas e indexação;

Page 13: Sem limites com NoSQL

FUNDAMENTOS NOSQL

Qual é a prioridade ?

•Alta consistência ?

•Alta performance de leitura ?

•Alta performance de escrita ?

Page 14: Sem limites com NoSQL

FUNDAMENTOS NOSQL

Page 15: Sem limites com NoSQL

FUNDAMENTOS NOSQL

REPLICASET = + REDUNDÂNCIA /

DISPONIBILIDADE

Page 16: Sem limites com NoSQL

FUNDAMENTOS NOSQL

REPLICASET = + REDUNDÂNCIA /

DISPONIBILIDADE

Page 17: Sem limites com NoSQL

FUNDAMENTOS NOSQL

REPLICASET = + REDUNDÂNCIA /

DISPONIBILIDADE

Page 18: Sem limites com NoSQL

FUNDAMENTOS NOSQL

SHARDING = + ESCALABILIDADE /

PERFORMANCE

Page 19: Sem limites com NoSQL

FUNDAMENTOS NOSQL

SHARDING = + ESCALABILIDADE /

PERFORMANCE

Page 20: Sem limites com NoSQL

FUNDAMENTOS NOSQL

BENCHMARKS ARE NOT TRUSTFUL

Page 21: Sem limites com NoSQL

FUNDAMENTOS NOSQL

Our database is too slow and is not big enough!We need NoSql!

Our database is too slow and is not big enough!We need NoSql!

Page 22: Sem limites com NoSQL

FUNDAMENTOS NOSQL

KISS

● Avoid complexity

● Product First

● MVP

● Baby Step

Page 23: Sem limites com NoSQL

FIM! OBRIGADO!

http://codigosimples.net