computação em nuvem -...

Post on 21-Nov-2018

232 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

COMPUTAÇÃO EM NUVEM

Conceitos, tecnologias e aplicações

Jaqueline Joice Brito Lucas de Carvalho Scabora

Sumário

• O que é Computação em Nuvem?

• Modelos de Serviços

• Prós e Contras

• Aplicações

• BigData

• Bancos de Dados NoSQL

• Hadoop

2

O que é Computação em Nuvem?

3 Imagem: http://antonioricardo.org/tag/cloud/

• Computação em nuvem é um modelo que possibilita acesso a um conjunto de recursos computacionais compartilhados e interligados via rede

O que é Computação em Nuvem?

4

A nuvem é uma metáfora para a Internet ou infraestrutura de comunicação entre os componentes arquiteturais

Abstração que oculta a complexidade de infraestrutura

Imagem: http://www.uolhost.com.br/blog/cloud-computing-a-importancia-das-nuvens#rmcl

O que é Computação em Nuvem?

5

Em resumo, é uma plataforma que provê serviços sob-demanda, que está sempre disponível, em qualquer lugar e a qualquer hora

Fonte da imagem: http://redes-e-servidores.blogspot.com.br/2013/03/a-evolucao-da-computacao-cloud-computing.html

O que é Computação em Nuvem?

Definição segundo NIST

“Computação em nuvem é um modelo para permitir acesso ubíquo, conveniente e sob demanda via rede a um agrupamento compartilhado e configurável de recursos computacionais (por exemplo, redes, servidores, equipamentos de armazenamento, aplicações e serviços), que pode ser rapidamente fornecido e liberado com esforços mínimos de gerenciamento ou interação com o provedor de serviços.”

6

NIST: Instituto Nacional de Padrões e Tecnologia do Departamento de Comércio Norte-Americano

O que é Computação em Nuvem? Principais Características

• Serviço sob demanda Alocação dinâmica de recursos

• Acesso via rede

• Compartilhamento de recursos

• Elasticidade

• Sensação de capacidade infinita de recursos

• Serviço mensurável

Modelo pay-as-you-go

7

O que é Computação em Nuvem?

8

Tecnologia Modelo de Negócio

Mainframe Computação Centralizada Alto custo de hardware e software

Cliente/Servidor Computação Distribuída Licença para SO e aplicativos

Computação em Nuvem Grandes data centers Custo proporcional ao uso

O que é Computação em Nuvem?

Modelos de implantação

• Privada

• Comunitária

• Pública

• Híbrida

9 Imagem: http://www.cloudproviderusa.com/the-difference-between-public-cloud-private-cloud/

Modelos de Serviços

10 Imagem: http://www.rividium.com/cloud.aspx

Modelos de Serviços

11

Termos Emergentes

Database as a Service (DBaaS) O provedor de serviço tem a responsabilidade de instalar e dar manutenção ao banco de dados. Assim, o usuário, que contratou o serviço, apenas paga um valor proporcional ao uso. Business Intelligence as a Service (BIaaS) Também chamado de Software como um servico de business inteligence (SaaS BI), consiste em instalar e gerenciar aplicações de BI na nuvem.

Modelos de Serviços

12 Adaptado de: http://www.rividium.com/cloud.aspx

SGBD

BD

instalation configuration maintenance

...

Modelos de Serviços

13

Exemplos

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

Prós e Contras

14

Principais Vantagens

Redução de investimento em TI (hardware e software)

Envolvendo custo de manutenção, de pessoal, de espaço físico e de energia

Confiabilidade

Replicação dos dados Disponibilidade das aplicações

Prós e Contras

15

Principais Vantagens

• Não há contratos complexos e duradouros de prestação de serviço

Cobra-se apenas pelos recursos multiplicados pelo tempo de uso

• Escala por demanda

Capacidade virtualmente infinitos

• Abstração da tecnologia sendo utilizada

Prós e Contras

16

Principais Desafios

Segurança e confidencialidade dos dados Gerenciamento dos dados Disponibilidade Integração de serviços Necessidade de uma banda maior de internet

Aplicações

17

Data Centers

Imagem: http://www.wdpo.org/world-data-protection-networks/

Aplicações

18

Data Centers

No Brasil, temos ao todo 29 data centers

Imagem: http://www.datacentermap.com/brazil/

19

Aplicações

ARMAZENAMENTO COM REDUNDÂNCIA

LOCAL (LRS)

ARMAZENAMENTO COM REDUNDÂNCIA GEOGRÁFICA (GRS)

ARMAZENAMENTO COM REDUNDÂNCIA DE

ZONA (ZRS)

ARMAZENAMENTO COM REDUNDÂNCIA GEOGRÁFICA NO ACESSO DE LEITURA (RA-GRS)

e

Aplicações

20

Usos mais comuns da computação em nuvem

IaaS e PaaS

Armazenamento de dados

Ambientes de testes e desenvolvimento

Processamento e análise de Big Data

Backup

Big Data

21 Imagem: https://students.washington.edu/bits/club/wp-content/uploads/2014/05/Big-data.Red_.jpg

Big Data

22

Big Data

23

Big Data

Volume

Variedade Velocidade

3Vs

Big Data

24

Big Data

Volume

Veracidade

Variedade Velocidade

Valor

5Vs

Big Data

25

Dados possuem informações valiosas

• Análise de navegação e reviews de usuários

Recomendação personalizada de produtos

Análise de mensagens de redes sociais

Big Data

26

Observatório da Dengue

• Desenvolvido por pesquisadores da UFMG • Monitoramento de mensagens em redes sociais

• Aumento de mensagens relacionadas ao termo “dengue” em uma região pode indicar um possível surto

Imagem: http://www.ufmg.br/online/arquivos/anexos/Portal_Observatorio_Dengue.JPG

Big Data

27

Kevin Spacey e David Fincher possuiam grande aceitação

Mesmos usuários gostavam de thrillers políticos

Imagens: http://pt.slideshare.net/laodias/os-cinco-vs-do-big-data http://img.vivaolinux.com.br/imagens/dicas/comunidade/netflix.png

Armazenamento Distribuído de Dados

28

• Bancos de dados relacionais - Dados estruturados - Escopo limitado - Propriedades ACID

• Bancos de dados NoSQL (Not only SQL) - Dados semiestruturados e não estruturados - Esquema flexível ou nenhum esquema - Relaxamento das propriedades ACID

Armazenamento Distribuído de Dados

29 http://blog.triscal.com.br/wp-content/uploads/2013/06/cap-theoram-image.png

Bancos de Dados NoSQL

30

Algumas Características

Foco no armazenamento de grandes volumes de dados

Alto desempenho

Alta escalabilidade horizontal

Replicação dos dados

SQL não é a linguagem padrão

Usualmente classificados pelo modelo de dados

Chave-valor, documentos, famílias de colunas e grafos

Bancos de Dados NoSQL

31

• Chave-valor

Modelo simples

Coleção de pares chave-valor

Acesso aos dados pela chaves

Pesquisa rápida

Aplicações típicas

Gerenciamento de sessões

Bancos de Dados NoSQL

32

13487

13488

13489

13490

Chave Valor

TV 20’ LCD

TV 40’ LED

TV 50’ PLASMA

TV 32’ LED

Bancos de Dados NoSQL

33

• Documentos

Cada documento é uma coleção de

pares chave-valor

Formato JSON/XML

Permite consultas mais elaboradas

• Filtros por atributos

Aplicações típicas

• Aplicações Web

Bancos de Dados NoSQL

34

{ “Id”: 13490, “Produto”: “TV”, “Tamanho”: “32’”, “Tela”: “LED” }

{ “Id”: 13489, “Produto”: “TV”, “Tamanho”: “50’”, “Tela”: “PLASMA” }

{ “Id”: 13488, “Produto”: “TV”, “Tamanho”: “40’”, “Tela”: “LED” }

{ “Id”: 13487, “Produto”: “TV”, “Tamanho”: “20’”, “Tela”: “LCD” }

Bancos de Dados NoSQL

35

• Famílias de Colunas

Eficiente ao armazenar grandes quantidades

Valores identificados por uma tripla

Linha, coluna e timestamp

Colunas são armazenadas de forma

contígua

Não implementa junção

Aplicações típicas

• Gerenciamento de grandes volumes de dados

Bancos de Dados NoSQL

36

Reys

Rowkey

13487

13488

13489

13490

Famílias de Colunas

Principais

Produto

TV

TV

TV

TV

Tamanho

20’

40’

50’

32’

Adicionais

Tela

LCD

LED

PLASMA

LED

Tipo

SMART

SMART

Bancos de Dados NoSQL

37

• Grafos

Baseados na teoria dos grafos

Dados são modelados por nós e

arestas

Nós e arestas podem possuir

propriedades

Aplicações típicas

• Redes Sociais

• Recomendações

Bancos de Dados NoSQL

38

Loja1 Loja2 Loja3

13487

Produto: TV Tamanho: 20’ Tela: LCD

13488

Produto: TV Tamanho: 40’ Tela: LED

13487

Produto: TV Tamanho: 50’ Tela: PLASMA

13487

Produto: TV Tamanho: 32’ Tela: LED

Vende

Bancos de Dados NoSQL

39 Imagen: http://drzito.files.wordpress.com/2007/05/network.jpg

Hadoop • Framework de processamento paralelo de dados em

larga escala • Altamente escalável • Tolerante a falhas • Disponível

• Principais componentes

• Armazenamento • HDFS – Hadoop Distributed File System

• Processamento • MapReduce

40

HDFS - Hadoop Distributed File System

41

DataNode 1 DataNode 2 DataNode 3 DataNode 4

NameNode

HDFS - Hadoop Distributed File System

42

DataNode 1 DataNode 2 DataNode 3 DataNode 4

NameNode

HDFS - Hadoop Distributed File System

43

DataNode 1 DataNode 2 DataNode 3 DataNode 4

NameNode

Metadados

Cada bloco possui 3 réplicas distribuídas entre os DataNodes

MapReduce

44

casa rio boneca rio dado casa

dado boneca dado casa boneca rio

rio casa boneca dado

MapReduce

45

casa rio boneca rio dado casa

dado boneca dado casa

dado rio rio casa rio dado

casa rio boneca rio

dado casa dado boneca

dado casa dado rio

rio casa rio dado

MapReduce

46

casa rio boneca rio

dado casa dado boneca

dado casa dado rio

rio casa rio dado

casa,1 rio, 1

boneca, 1 rio,1

dado,1 casa, 1 dado, 1

boneca, 1

dado,1 casa, 1 dado, 1 rio, 1

rio,1 casa, 1 rio, 1

dado, 1

casa rio boneca rio dado casa

dado boneca dado casa

dado rio rio casa rio dado

chave valor

MapReduce

47

casa rio boneca rio

dado casa dado boneca

dado casa dado rio

rio casa rio dado

casa,1 rio, 1

boneca, 1 rio,1

dado,1 casa, 1 dado, 1

boneca, 1

dado,1 casa, 1 dado, 1 rio, 1

rio,1 casa, 1 rio, 1

dado, 1

boneca, 1 boneca, 1

casa,1 casa, 1 casa, 1 casa, 1

dado, 1 dado, 1 dado, 1 dado, 1 dado, 1

rio, 1 rio, 1 rio, 1 rio, 1 rio, 1

casa rio boneca rio dado casa

dado boneca dado casa

dado rio rio casa rio dado

chave valor

MapReduce

48

casa rio boneca rio

dado casa dado boneca

dado casa dado rio

rio casa rio dado

casa,1 rio, 1

boneca, 1 rio,1

dado,1 casa, 1 dado, 1

boneca, 1

dado,1 casa, 1 dado, 1 rio, 1

rio,1 casa, 1 rio, 1

dado, 1

boneca, 1 boneca, 1

casa,1 casa, 1 casa, 1 casa, 1

dado, 1 dado, 1 dado, 1 dado, 1 dado, 1

rio, 1 rio, 1 rio, 1 rio, 1 rio, 1

boneca, 2 casa, 4 dado, 5 rio, 5

casa rio boneca rio dado casa

dado boneca dado casa

dado rio rio casa rio dado

MapReduce

49

Função Map

MapReduce

50

Função Reduce

Evolução do MapReduce

Apache Pig

• PigLatin - Linguagem

procedural de alto nível

• Scripts são traduzidos para sequências de programas MapReduce

51

• HiveQL – Linguagem similar ao SQL para acessar os dados

Apache Hive

Oportunidades Data Scientist

• Alguns conhecimentos necessários

Saber programação

Ser capaz de criar modelos estatísticos

Compreender as diferentes plataformas de Big Data

• Usualmente esse profissional é formado em Estatística, Matemática, Física ou Ciências da Computação

52 Imagem: http://brmtecnologia.files.wordpress.com/2012/07/bi-analyze.png

Oportunidades

53

Oportunidades

54

Oportunidades

55

Oportunidades

56

Referências

57

http://www.sciencedaily.com/releases/2013/05/130522085217.htm

http://www-3.unipv.it/ingegneria/copisteria_virtuale/motta/doss/13-PV-DoES-18-BigData-v3.pdf

http://pig.apache.org/

http://hadoop.apache.org/

https://hive.apache.org/

http://azure.microsoft.com/en-us/pricing/details/storage/

http://thoughtsoncloud.com/2014/02/top-7-most-common-uses-of-cloud-computing/

http://pt.slideshare.net/laodias/os-cinco-vs-do-big-data

http://www.microsoft.com/en-us/news/presskits/cloud/docs/the-economics-of-the-cloud.pdf

http://www.cloudproviderusa.com/the-difference-between-public-cloud-private-cloud/

http://observatorio.inweb.org.br/dengueapp?next=/dengueapp/relatorio

https://www.youtube.com/watch?v=jyx8iP5tfCI&feature=youtu.be

58

Obrigado

top related