Banco de dados nas nuvens - aula 3

24
Banco de Dados em Nuvem Aula 3 - Uma visão sobre NewSQL Luiz Henrique Zambom Santana Prof. Dr. Ronaldo dos Santos Mello

Transcript of Banco de dados nas nuvens - aula 3

Banco de Dados em NuvemAula 3 - Uma visão sobre NewSQL

Luiz Henrique Zambom SantanaProf. Dr. Ronaldo dos Santos Mello

Exercício

Escolher um provedor de nuvem, criar um banco de dados de preferência e

descrever suas características (e.g., modelo de dados, características não

funcionais, preço). Exemplos:

● https://cloud.google.com/sql/docs/

● https://aws.amazon.com/pt/rds/

● https://azure.microsoft.com/

● https://www.rackspace.comcloud/databases

● https://www.mongodb.com/cloud/atlas

● https://www.elastic.co/

● https://redislabs.com/products/redis-cloud/

● https://cloud.oracle.com/database2

Exercício

3

Exercício - Modelar considerando múltiplos modelos

4

Agenda

● NoSQL vs. NewSQL

● Perspectiva para NewSQL

● HStore

● VoltDB

● Exercício

● Conclusões

5

Problema NoSQL: Persistência poliglota

6

Problema SQL: múltiplos gargalos

7

NewSQL: comparação

8

NewSQL: definições

● Definições○ SQL como interface principal

○ Suporte a transações ACID

○ Sem lock no controle de concorrência

○ Alto desempenho

○ Arquitetura escalável (share nothing)

● In-memory○ Alta

○ Baixa latência

○ Sem gerenciamento de bugger

○ Sem locks e latches

● HBase, Clustrix, NuoDB e VoltDB

9

Share nothing

10

NewSQL: como?

● Particionamento○ Sharding

● Controle de concorrência por agendamento ou multi-versões

● Indexação

● Replicação

11

NoSQL vs. NewSQL: produtos

12

Mercado NewSQL

13

HStore

14

VoltDB

● Evolução do C-Store e H-Store○ http://hstore.cs.brown.edu/documentation/faq/

● Visão:

○ VoltDB relies on horizontal partitioning

down to the individual hardware thread to

scale, k-safety (synchronous replication) to

provide high availability, and a

combination of continuous snapshots and

command logging for durability (crash

recovery)

15

K-safety

16

● A segurança K é uma medida

de quantas cópias dos dados

existem no cluster

VoltDB: console

17

VoltDB

18

VoltDB: arquitetura

19

VoltDB: integrações

20

Command logging

21

Recuperação de desastre

22

Exercício

Estudar o documento:

https://www.voltdb.com/wp-content/uploads/2017/05/VoltDB_for_Amazon_AWS_DS.pdf

Discutir as implicações do uso do VoltDB na nuvem, vantagens e desvantagens e

possíveis dificuldades do seu uso em produção.

23

Referências

● https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/

● https://www.databaselabs.io/database-as-a-service/hidden-costs-of-databases

24