SlideShare uma empresa Scribd logo
1 de 32
Banco de Dados em Nuvem
Aula 1 - Conceitos básicos
Luiz Henrique Zambom Santana
Prof. Dr. Ronaldo dos Santos Mello
Agenda
● Computação em nuvem
● Banco de dados em nuvens
● Vantagens e desvantagens
● Principais fornecedores
● Consistência
● Alta disponibilidade
● SQL nas nuvens
● NoSQL nas nuvens
● Exercício
● Conclusões
2
Computação em nuvem
● Provisionamento dinâmico
de recursos sob demanda
● Escalabilidade
● Cobrança baseada no uso
do recurso ao invés de uma
taxa fixa
● Distribuição geográfica dos
recursos
3
Computação em nuvem
4
● SaaS é caracterizado
principalmente pela não-aquisição
de licenças de software
● PaaS envolve um ambiente virtual
para criação, hospedagem e
controle de softwares e bancos de
dados
● IaaS apenas abstraí aspectos
relacionados à parte física de
servidores e redes
Computação em nuvem
5
Banco de dados nas nuvens
● Variação da computação nas nuvens para bancos de dados
● Vantagens
○ Menor TCO
○ Facilidade de manutenção
○ Maior elasticidade
○ Menor investimento inicial
● Desvantagens
○ Maior percepção de custo
○ Segurança e privacidade (dados enviados para um provedor externo)
6
Banco de dados como serviço
● Virtualização: permite que banco de
dados seja instalado em uma máquina
virtual
● DBaaS: fornece uma plataforma flexível
escalável, sob demanda que está
orientada para o autosserviço e
gerenciamento fácil, particularmente em
termos de provisionamento de um
negócio no próprio ambiente
7
Principais fornecedores
8
Como se diferenciam
9
● Ofertas de produtos (NoSQL, SQL, produtos)
● Modelo de cobrança
● Serviços agregados
● Apoio na migração de on-prem para dbaas
● Data centers (Redis Labs não tem datacenter no Brasil)
Como se diferenciam
(AWS)
10
Como se diferenciam
(Rackspace)
11
Como se diferenciam (Oracle)
12
DB-Ranking
13
SQL nas nuvens
14
Fornecedor SGBDs
Microsoft Azure SQL Database, MySQL Database1
Amazon AWS RDS (MySQL, PostgreSQL, Oracle, Microsoft SQL)
Google Cloud Cloud SQL
RedHat OpenShift PostgreSQL, MySQL, SQLite
IBM Bluemix DB2, MySQL1, PostgreSQL1
Oracle Database
MongoLab –
Heroku PostgreSQL
RedisLabs –
ClearDB MySQL
NoSQL nas nuvens
15
Fornecedor NoSQL
Microsoft Azure Azure DocumentDB, MongoDB1
Amazon AWS DynamoDB
Google Cloud Cloud Datastore, Cloud Bigtable
RedHat OpenShift MongoDB
IBM Bluemix Cloudant, MongoDB1
Oracle NoSQL Database2
MongoLab MongoDB
Heroku PostgreSQL
RedisLabs –
ClearDB –
SQL versus NoSQL
Not only SQL
Sadalage e Fowler, 2012
http://martinfowler.com/books/nosql.html
“Banco de Dados Relacional
será nota de rodapé na história”
Nathan Marz, 2014
http://goo.gl/WGXvPy
SQL and NoSQL will merge
“Not yet SQL”
Michael Stonebraker, 2015
https://www.youtube.com/watch?v=KRcecxdGxvQ
Diferença de desempenho pode ser brutal
• iColabora
CAP e BASE
20
Consistência eventual (Cassandra)
21
Consistência eventual (MongoDB)
22
Características NoSQL para Computação em Nuvem
● Particionamento horizontal
23
Características NoSQL para Computação em Nuvem
● Particionamento vertical
24
Alta disponibilidade
25
NoSQL escalabilidade
26
Persistência poliglota
27
“Sem tamanho único”
• “a panoply of data models,
and they typically operate on
flexible storage formats such
as JSON”
• “Increasingly, we see
applications that deploy
multiple engines, resulting in
a need to join data across
systems.”
Vantagens e desvantagens
(em relação ao SQL)
Vantagens Desvantagens
Maior desempenho Transações limitadas
Maior escalabilidade Limitação nas consultas*
Modelos de dados mais ricos Consistência relaxada
Schema-less “Dados não relacionados”
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/database 30
Conclusões
● Computação em nuvem é a
realidade para novas empresas e
startups, mas a maioria das
instalações ainda é on-premises
● As opções são tantas que é fácil
ficar perdido e/ou não atingir
soluções ótimas
31
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
32

Mais conteúdo relacionado

Mais procurados

Introdução a Informática
Introdução a InformáticaIntrodução a Informática
Introdução a InformáticaDaniel Brandão
 
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rocha
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rochaFundamentos do desenvolvimento mobile - Daniel da cruz do amaral rocha
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rochaDanielAmaral70
 
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...Fernando Belome Feltrin
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugolGabriel Faustino
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linuxRogério Cardoso
 
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...Sérgio Souza Costa
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Renato William
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileCloves da Rocha
 
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...Labin2bpm
 
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos IniciaisFundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos IniciaisHelder Lopes
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Gercélia Ramos
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento WebSérgio Souza Costa
 
Aula UML - Unified Modeling Language
Aula UML - Unified Modeling LanguageAula UML - Unified Modeling Language
Aula UML - Unified Modeling LanguageCloves da Rocha
 
Áreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareÁreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareElaine Cecília Gatto
 

Mais procurados (20)

Introdução a Informática
Introdução a InformáticaIntrodução a Informática
Introdução a Informática
 
Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
ISO/IEC 15504 SPICE + 33000
ISO/IEC 15504 SPICE + 33000ISO/IEC 15504 SPICE + 33000
ISO/IEC 15504 SPICE + 33000
 
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rocha
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rochaFundamentos do desenvolvimento mobile - Daniel da cruz do amaral rocha
Fundamentos do desenvolvimento mobile - Daniel da cruz do amaral rocha
 
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...
300 Exercícios Resolvidos e Comentados em Python - Fernando Feltrin - Amostra...
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linux
 
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...
Software Livre (Conceitos, contextualização histórica, licenças, sistemas ope...
 
Eng.ª do Software - 2. Requisitos
Eng.ª do Software - 2. RequisitosEng.ª do Software - 2. Requisitos
Eng.ª do Software - 2. Requisitos
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao Mobile
 
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...
Classificação de software. Livre, demo e proprietário. Básico, Aplicativo e u...
 
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos IniciaisFundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Aula sobre Linux.
Aula sobre Linux. Aula sobre Linux.
Aula sobre Linux.
 
Aula UML - Unified Modeling Language
Aula UML - Unified Modeling LanguageAula UML - Unified Modeling Language
Aula UML - Unified Modeling Language
 
Áreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareÁreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de Software
 

Semelhante a Banco de Nuvem Conceitos

Apostila NoSql.pdf
Apostila NoSql.pdfApostila NoSql.pdf
Apostila NoSql.pdfEizo Edson
 
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisNoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisCarlo Pires
 
L'esprit de l'escalier
L'esprit de l'escalierL'esprit de l'escalier
L'esprit de l'escalierGleicon Moraes
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Ambiente Livre
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infosimples
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de DadosDeep Tech Brasil
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaAugusto Giles
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfssuser1198af
 
Sql Azure no Access Aay Lite 2010
Sql Azure no Access Aay Lite 2010Sql Azure no Access Aay Lite 2010
Sql Azure no Access Aay Lite 2010Ronaldo Ramires
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Amazon Web Services LATAM
 
Bancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagemBancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagemJoão Gabriel Lima
 
PASS SQLSATURDAY 663 Rio de Janeiro, Brazil
PASS SQLSATURDAY 663 Rio de Janeiro, BrazilPASS SQLSATURDAY 663 Rio de Janeiro, Brazil
PASS SQLSATURDAY 663 Rio de Janeiro, BrazilAlexandre Araujo
 
NoSQL: Uma análise crítica
NoSQL: Uma análise críticaNoSQL: Uma análise crítica
NoSQL: Uma análise críticapichiliani
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBPaulo Bischof
 

Semelhante a Banco de Nuvem Conceitos (20)

Apostila NoSql.pdf
Apostila NoSql.pdfApostila NoSql.pdf
Apostila NoSql.pdf
 
Meetup Tivir - Big Data Clusters
Meetup Tivir - Big Data ClustersMeetup Tivir - Big Data Clusters
Meetup Tivir - Big Data Clusters
 
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisNoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
 
L'esprit de l'escalier
L'esprit de l'escalierL'esprit de l'escalier
L'esprit de l'escalier
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
 
Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas Monografia
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdf
 
Sql Azure no Access Aay Lite 2010
Sql Azure no Access Aay Lite 2010Sql Azure no Access Aay Lite 2010
Sql Azure no Access Aay Lite 2010
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
 
Material Seminário NoSQL
Material Seminário NoSQLMaterial Seminário NoSQL
Material Seminário NoSQL
 
Bancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagemBancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagem
 
PASS SQLSATURDAY 663 Rio de Janeiro, Brazil
PASS SQLSATURDAY 663 Rio de Janeiro, BrazilPASS SQLSATURDAY 663 Rio de Janeiro, Brazil
PASS SQLSATURDAY 663 Rio de Janeiro, Brazil
 
Artigo Nosql
Artigo NosqlArtigo Nosql
Artigo Nosql
 
NoSQL: Uma análise crítica
NoSQL: Uma análise críticaNoSQL: Uma análise crítica
NoSQL: Uma análise crítica
 
Banco de Dados - NoSQL
Banco de Dados - NoSQLBanco de Dados - NoSQL
Banco de Dados - NoSQL
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDB
 

Mais de Luiz Henrique Zambom Santana

Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...
Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...
Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...Luiz Henrique Zambom Santana
 
Apache Sedona: how to process petabytes of agronomic data with Spark
Apache Sedona: how to process petabytes of agronomic data with SparkApache Sedona: how to process petabytes of agronomic data with Spark
Apache Sedona: how to process petabytes of agronomic data with SparkLuiz Henrique Zambom Santana
 
De Arquiteto para Gerente: como debugar uma equipe
De Arquiteto para Gerente: como debugar uma equipeDe Arquiteto para Gerente: como debugar uma equipe
De Arquiteto para Gerente: como debugar uma equipeLuiz Henrique Zambom Santana
 
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLVoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLLuiz Henrique Zambom Santana
 
Uma visão sobre Fast-Data: Spark, VoltDB e Elasticsearch
Uma visão sobre Fast-Data: Spark, VoltDB e ElasticsearchUma visão sobre Fast-Data: Spark, VoltDB e Elasticsearch
Uma visão sobre Fast-Data: Spark, VoltDB e ElasticsearchLuiz Henrique Zambom Santana
 
Workload-Aware RDF Partitioning and SPARQL Query Caching for Massive RDF Gra...
Workload-Aware RDF Partitioning  and SPARQL Query Caching for Massive RDF Gra...Workload-Aware RDF Partitioning  and SPARQL Query Caching for Massive RDF Gra...
Workload-Aware RDF Partitioning and SPARQL Query Caching for Massive RDF Gra...Luiz Henrique Zambom Santana
 
A middleware for storing massive RDF graphs into NoSQL
A middleware for storing massive RDF graphs into NoSQLA middleware for storing massive RDF graphs into NoSQL
A middleware for storing massive RDF graphs into NoSQLLuiz Henrique Zambom Santana
 
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL Databases
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL DatabasesA Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL Databases
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL DatabasesLuiz Henrique Zambom Santana
 
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...Luiz Henrique Zambom Santana
 
Novidades do elasticsearch 2.0 e como usá-lo com PHP
Novidades do elasticsearch 2.0 e como usá-lo com PHPNovidades do elasticsearch 2.0 e como usá-lo com PHP
Novidades do elasticsearch 2.0 e como usá-lo com PHPLuiz Henrique Zambom Santana
 
Design of Experiments on Federator Polystore Architecture
Design of Experiments on Federator Polystore ArchitectureDesign of Experiments on Federator Polystore Architecture
Design of Experiments on Federator Polystore ArchitectureLuiz Henrique Zambom Santana
 
An Approach for RDF-based Semantic Access to NoSQL Repositories
An Approach for RDF-based Semantic Access to NoSQL RepositoriesAn Approach for RDF-based Semantic Access to NoSQL Repositories
An Approach for RDF-based Semantic Access to NoSQL RepositoriesLuiz Henrique Zambom Santana
 

Mais de Luiz Henrique Zambom Santana (20)

Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...
Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...
Perspectives on the use of data in Agriculture - Luiz Santana - Leaf Agricult...
 
Apache Sedona: how to process petabytes of agronomic data with Spark
Apache Sedona: how to process petabytes of agronomic data with SparkApache Sedona: how to process petabytes of agronomic data with Spark
Apache Sedona: how to process petabytes of agronomic data with Spark
 
De Arquiteto para Gerente: como debugar uma equipe
De Arquiteto para Gerente: como debugar uma equipeDe Arquiteto para Gerente: como debugar uma equipe
De Arquiteto para Gerente: como debugar uma equipe
 
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLVoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
 
IBM Watson, Apache Spark ou TensorFlow?
IBM Watson, Apache Spark ou TensorFlow?IBM Watson, Apache Spark ou TensorFlow?
IBM Watson, Apache Spark ou TensorFlow?
 
Uma visão sobre Fast-Data: Spark, VoltDB e Elasticsearch
Uma visão sobre Fast-Data: Spark, VoltDB e ElasticsearchUma visão sobre Fast-Data: Spark, VoltDB e Elasticsearch
Uma visão sobre Fast-Data: Spark, VoltDB e Elasticsearch
 
Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2
 
Workload-Aware RDF Partitioning and SPARQL Query Caching for Massive RDF Gra...
Workload-Aware RDF Partitioning  and SPARQL Query Caching for Massive RDF Gra...Workload-Aware RDF Partitioning  and SPARQL Query Caching for Massive RDF Gra...
Workload-Aware RDF Partitioning and SPARQL Query Caching for Massive RDF Gra...
 
A middleware for storing massive RDF graphs into NoSQL
A middleware for storing massive RDF graphs into NoSQLA middleware for storing massive RDF graphs into NoSQL
A middleware for storing massive RDF graphs into NoSQL
 
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL Databases
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL DatabasesA Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL Databases
A Workload-Aware Middleware for Storing Massive RDF Graphs into NoSQL Databases
 
Normalização
NormalizaçãoNormalização
Normalização
 
SQL Joins
SQL JoinsSQL Joins
SQL Joins
 
Consultas básicas em SQL
Consultas básicas em SQLConsultas básicas em SQL
Consultas básicas em SQL
 
Processamento em Big Data
Processamento em Big DataProcessamento em Big Data
Processamento em Big Data
 
Seminário de Andamento de Doutorado
Seminário de Andamento de DoutoradoSeminário de Andamento de Doutorado
Seminário de Andamento de Doutorado
 
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...
Como modelar, integrar e desenvolver aplicações com múltiplos bancos de dados...
 
Workshop de ELK - EmergiNet
Workshop de ELK - EmergiNetWorkshop de ELK - EmergiNet
Workshop de ELK - EmergiNet
 
Novidades do elasticsearch 2.0 e como usá-lo com PHP
Novidades do elasticsearch 2.0 e como usá-lo com PHPNovidades do elasticsearch 2.0 e como usá-lo com PHP
Novidades do elasticsearch 2.0 e como usá-lo com PHP
 
Design of Experiments on Federator Polystore Architecture
Design of Experiments on Federator Polystore ArchitectureDesign of Experiments on Federator Polystore Architecture
Design of Experiments on Federator Polystore Architecture
 
An Approach for RDF-based Semantic Access to NoSQL Repositories
An Approach for RDF-based Semantic Access to NoSQL RepositoriesAn Approach for RDF-based Semantic Access to NoSQL Repositories
An Approach for RDF-based Semantic Access to NoSQL Repositories
 

Banco de Nuvem Conceitos

  • 1. Banco de Dados em Nuvem Aula 1 - Conceitos básicos Luiz Henrique Zambom Santana Prof. Dr. Ronaldo dos Santos Mello
  • 2. Agenda ● Computação em nuvem ● Banco de dados em nuvens ● Vantagens e desvantagens ● Principais fornecedores ● Consistência ● Alta disponibilidade ● SQL nas nuvens ● NoSQL nas nuvens ● Exercício ● Conclusões 2
  • 3. Computação em nuvem ● Provisionamento dinâmico de recursos sob demanda ● Escalabilidade ● Cobrança baseada no uso do recurso ao invés de uma taxa fixa ● Distribuição geográfica dos recursos 3
  • 4. Computação em nuvem 4 ● SaaS é caracterizado principalmente pela não-aquisição de licenças de software ● PaaS envolve um ambiente virtual para criação, hospedagem e controle de softwares e bancos de dados ● IaaS apenas abstraí aspectos relacionados à parte física de servidores e redes
  • 6. Banco de dados nas nuvens ● Variação da computação nas nuvens para bancos de dados ● Vantagens ○ Menor TCO ○ Facilidade de manutenção ○ Maior elasticidade ○ Menor investimento inicial ● Desvantagens ○ Maior percepção de custo ○ Segurança e privacidade (dados enviados para um provedor externo) 6
  • 7. Banco de dados como serviço ● Virtualização: permite que banco de dados seja instalado em uma máquina virtual ● DBaaS: fornece uma plataforma flexível escalável, sob demanda que está orientada para o autosserviço e gerenciamento fácil, particularmente em termos de provisionamento de um negócio no próprio ambiente 7
  • 9. Como se diferenciam 9 ● Ofertas de produtos (NoSQL, SQL, produtos) ● Modelo de cobrança ● Serviços agregados ● Apoio na migração de on-prem para dbaas ● Data centers (Redis Labs não tem datacenter no Brasil)
  • 12. Como se diferenciam (Oracle) 12
  • 14. SQL nas nuvens 14 Fornecedor SGBDs Microsoft Azure SQL Database, MySQL Database1 Amazon AWS RDS (MySQL, PostgreSQL, Oracle, Microsoft SQL) Google Cloud Cloud SQL RedHat OpenShift PostgreSQL, MySQL, SQLite IBM Bluemix DB2, MySQL1, PostgreSQL1 Oracle Database MongoLab – Heroku PostgreSQL RedisLabs – ClearDB MySQL
  • 15. NoSQL nas nuvens 15 Fornecedor NoSQL Microsoft Azure Azure DocumentDB, MongoDB1 Amazon AWS DynamoDB Google Cloud Cloud Datastore, Cloud Bigtable RedHat OpenShift MongoDB IBM Bluemix Cloudant, MongoDB1 Oracle NoSQL Database2 MongoLab MongoDB Heroku PostgreSQL RedisLabs – ClearDB –
  • 16. SQL versus NoSQL Not only SQL Sadalage e Fowler, 2012 http://martinfowler.com/books/nosql.html “Banco de Dados Relacional será nota de rodapé na história” Nathan Marz, 2014 http://goo.gl/WGXvPy
  • 17. SQL and NoSQL will merge “Not yet SQL” Michael Stonebraker, 2015 https://www.youtube.com/watch?v=KRcecxdGxvQ
  • 18.
  • 19. Diferença de desempenho pode ser brutal • iColabora
  • 23. Características NoSQL para Computação em Nuvem ● Particionamento horizontal 23
  • 24. Características NoSQL para Computação em Nuvem ● Particionamento vertical 24
  • 28. “Sem tamanho único” • “a panoply of data models, and they typically operate on flexible storage formats such as JSON” • “Increasingly, we see applications that deploy multiple engines, resulting in a need to join data across systems.”
  • 29. Vantagens e desvantagens (em relação ao SQL) Vantagens Desvantagens Maior desempenho Transações limitadas Maior escalabilidade Limitação nas consultas* Modelos de dados mais ricos Consistência relaxada Schema-less “Dados não relacionados”
  • 30. 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/database 30
  • 31. Conclusões ● Computação em nuvem é a realidade para novas empresas e startups, mas a maioria das instalações ainda é on-premises ● As opções são tantas que é fácil ficar perdido e/ou não atingir soluções ótimas 31