O documento discute o Azure CosmosDB da Microsoft como uma plataforma de banco de dados NoSQL na nuvem. Apresenta os principais tipos de bancos de dados NoSQL, como funciona o CosmosDB, incluindo sua arquitetura distribuída global e APIs flexíveis para vários modelos de dados. Também explica como configurar partições e gerenciar throughput para obter escalabilidade elástica.
6. Mundo NoSQL
NoSql não significa “No SQL” e
sim Not Only SQL
Significa que também não
substitui o RDBMS
Redes Sociais e explosão do
Google impulsionaram o
movimento
RDBMS não foi projetado para
ambientes distribuídos e cluster
7. Mundo NoSQL – Características
Livre de Schema “Schemaless”
Distribuído e Particionado
Vantagens Desvantagens
Massiva Escalabilidade Consistência eventual
Persistência Poliglota Não tem padrão
Barato comparado com
big players RDBMS
Baixa portabilidade
Distribuição Geográfica Baixo controle de acesso
Evita Complexas Queries
SQL
Impossibilita Queries
SQL complexas
12. Cloud – Cenário atual
Hoje a maioria das novas aplicações
estão sendo executadas em um sistema
de nuvem privada, pública ou híbrida.
Nos bancos de dados os RDBMS no
inicio do cloud eram a escolha popular
Bancos NoSQL são construídos a
partir do zero para serem
distribuídos, escaláveis e ,portanto,
adequados ao cloud
SQL Server 2016 Stretch for Cloud
17. Azure Cosmos - Arquitetura
GLOBAL
DISTRIBUTION
TUNABLE
CONSISTENCY
ELASTIC
SCALE OUT
FULLY
MANAGED
UNDERLINE
PLATAFORM
PLATAFORM
KEY- VALUE DOCUMENT GRAPH COLUNAR
OVERLINE
PLATFORM
Table Azure
DocumentDB
MongoDB
Gremlin Cassandra ?
Partition
Agnostic
Data
Indexing
Self
Scheme ARS
Multi Model
APIs
Single Model
Containers
19. Azure Cosmos - Partitions
Estratégia de Partições é chave do sucesso de um NoSQL
Basedo no Workload e padrões de query do objetivo final
Estruturado em Containers que armazenam os dados
Dentro de Containers existe o partition key
Partition Key = { estado }
Container mensagens
SP
RJ AC PI
12 Nós
21. Azure Cosmos – Thorughput
Ru’s Request Unit é uma abstração lógica de recursos físicos
performando operações no seu database.
RU’s
CPU
MEMORIA
IOPS (DISCO)
C – Create { dados, index e replicação } 05 RU’s session/1KB
R – Read { 01 registro = 01 RU per session 1 KB
U – Update = 05 RU’s session/1KB
D – Delete= 05 RU’s session/1KB
Q – Query { Dinamicamente full scans, index }
25. DocumentDB API
CLIENT
SERVER
REST API DIRECT CONNECT
GATEWAY MODE
RUBY
X AWS
ETC.
PYTHON
SDK
JAVA
.NET
NODE JS
CLIENT
GUI
DIRECT
CONNECT
SQL
JS
REST API
33. vNext DBA – Solução Híbrida
PLATAFORMA DE COMÉRCIO ELETRÔNICO
Dados de sessão
e carrinho
Pedidos
Finalizados
Estoque
Financeiro
Grafo Social do
Cliente
DB
Chave
Valor
DB
DOCTO
DB
RDBMS
DB
GRAFOS
DB
LEGADO
RDBMS
34. vNext DBA – DBA e o Futuro
Segurança
Tuning
Deploy
Monitoração
Remodelagem
Integração