Você está na página 1de 63

Computao em escala

Warehouse
Arquitetura e Organizao de computadores
Ivanei
Marlon
Novembro, 2016

Sumrio
1. Introduo
2. Modelos de Programao
3. Arquitetura de Computadores em escala Warehouse
4. Computao em nuvem
5. Questes Cruzadas
6. Google Warehouse
7. Referncias

1. Introduo
Clusters
Datacenters
WSC
3

Introduo

Computao em escala Warehouse (WSC) a base dos servios de


Internet de hoje.
Pesquisas, redes sociais, mapa, compartilhamento de vdeo, compras on-line,
e-mail, etc.

Embora possam parecer grandes datacenters sua arquitetura e


operao so diferentes

Introduo
WSCs agem como uma grande mquina
Pode custar at valores da ordem de US$ 150 milhes 1
Incluindo: infraestruturas eltrica e de refrigerao, servidores e equipamento de rede

Consistem de 50.000 a 100.000 servidores conectados 1

WSC atuais podem ser vistos como os descendentes dos


supercomputadores
Porm, ao invs de oferecerem computao de alto desempenho (HPC) para
cientistas e engenheiros oferecem informaes para o mundo.
1 Patterson & Hennessy , Computer Architecture: A Quantitative Approach, 2011.

Introduo: Demandas
A pesar de sua diferena, existem um conjunto de demandas
similares as de servidores:

Custo-desempenho
Eficincia de energia
Confiabilidade atravs de redundncia
E/S de rede
Cargas de trabalho

Introduo: Caractersticas

Tambm existem caractersticas no compartilhadas com servidores:


Amplo paralelismo
Custos operacionais relevantes
Escala

Introduo: Caractersticas
Amplo paralelismo
Servidores preocupam-se se h paralelismo suficiente nas aplicaes,
para justificar o hardware paralelo
WSC no possuem essas preocupao:
Paralelismo de dados: Aplicaes se beneficiam de dados independentes que
requerem processamento independente; e.g. web crawlers
Paralelismo em nvel de requisio: utilizando aplicaes de servio
interativo, conhecido como software as a service (SaaS)
8

Introduo: Caractersticas
Custos operacionais relevantes
Arquitetos de servidor geralmente ignoram os custos de operao,
presumindo que so baixos em comparao ao custo de aquisio
WSCs tm tempo de vida longos e os custos operacionais so
significativos: energia, distribuio de energia e refrigerao
representam mais de 30% dos custos de um WSC em 10 anos.
9

Introduo: Caractersticas
Escala
Custos unitrios menores, visto que possvel alugar partes do
processamento da WSC, gerando lucro
Complexidade adicional com menor confiabilidade (maiores taxas de
falha)

10

Introduo: Clusters x WSCs?


Clusters
Coleo de computadores independentes conectados usando redes
locais e switches
Computao efetiva para cargas de trabalho que no exigem
comunicao intensa
Percursores aos WSCs
11

Introduo: Clusters x WSCs?


Clusters modernos podem ter custos similares a WSCs
Clusters so utilizados para computao de alto desempenho
Possui processadores e redes muito mais rpidas, pois aplicaes so mais
interdependentes e se comunicao com mais frequncia

Enfatiza paralelismo em nvel de thread e dados


Tendem a manter servidores totalmente utilizados, durante semanas
12

Utilizao mdia de CPU de 5000 servidores durante um perodo de seis meses no Google
Patterson & Hennessy , Computer Architecture: A Quantitative Approach, 2011.

13

Introduo: Datacenters x WSCs?


Datacenters esto em uma escala menor
Cada aplicao executada em um hardware especifico,
desacoplado e protegido dos demais.
Um datacenter pode ter aplicaes de diferentes companhias
Aplicaes tem pouco em comum em termos de hardware, software,
ou estrutura de manuteno
Tendem a no ter comunicao entre as demais aplicaes
14

Introduo: Datacenters x WSCs?


WSC sustentam servios online de grandes empresas, como Google,
Amazon, Yahoo e Microsoft
Diferenas de datacenters

Pertencem a uma nica empresa


Usam hardware e software relativamente homogneos
Compartilham camada de gerenciamento
Frequentemente, necessidades para gerenciar WSC so solues criadas em
casa, ao invs de utilizar solues de terceiros

15

Introduo: Datacenters x WSCs?


WSCs executam uma pequena quantidade de aplicaes muito
grandes (ou servios de internet)
Infraestrutura comum de gerenciamento de recursos permite
significativa flexibilidade de implantao
Servios de Internet devem possuir alta disponibilidade, tipicamente
99.99% uptime
cerca de uma hora de indisponibilidade por ano
16

2. Modelos de Programao
MapReduce & Hadoop
Sistema de Arquivos

17

Aplicaes WSCs
Utilizada para servios conhecidos na web

como busca, compartilhamento de vdeo e redes sociais

WSCs tambm so utilizadas para execuo de aplicaes de lote

como converso de vdeos em novos formatos, criao de ndices de busca a


partir de web crawlers

Framework mais popular para processamento em lote:


MapReduce (Google)
Hadoop (open source)

18

MapReduce & Hadoop

Inspirado nas funes Map e Reduce das linguagens funcionais


e.g. Lisp

Utilizado para processamento de grande quantidade de dados de


forma paralela e distribuda
De fcil compreenso e uso

19

MapReduce & Hadoop


1. Aplica uma funo fornecida em cada registro da entrada lgica
Executado em milhares de computadores para produzir um resultado
intermedirio de pares valores-chave

2. Reduz a coleta da sada dessas tarefas distribudas e as compacta


utilizando outra funo

20

MapReduce & Hadoop


Exemplo em Scala
Map:
val numbers = List(1,2,3,4,5)
numbers.map(x => x * x) == List(1,4,9,16,25)
Reduce:
val numbers = List(1,2,3,4,5)
numbers.reduce(_ + _) == 15
21

MapReduce & Hadoop


Exemplo de aplicao:
Calcular o nmero de ocorrncias de cada palavra em um conjunto de
documentos til no clculo de ndices invertidos para mquinas de busca

Para cada documento da coleo, o map ir gera um par


<palavra,ocorrncia> para a ocorrncia de cada palavra no
documento
Ento, reduce recebe essa coleo de pares e os agrupa, para poder
saber o total de ocorrncia de cada palavra na coleo
22

Sistema de Arquivos
Sucesso do MapReduce est atrelado a servios internos
Para fornecer arquivos a qualquer computador, permitindo tarefas serem
escalonadas em qualquer lugar, MapReduce depende do Sistema de
Arquivos Google (Google File System GFS)
Outros sistemas de armazenamento utilizados em WSCs:
Armazenamento de valores-chave da Amazon: Dynamo
Sistema de armazenamento de registros do Google: Bigtable

Podem fazer uso de outros sistemas


At os nativos do SO

23

Sistema de Arquivos
Desenvolvido localmente
Adaptvel a demandas locais
Monitoramento

Capaz de lidar com problemas especficos


Replicao de dados

24

3. Arquitetura de computadores
em escala warehouse
Armazenamento
Switches
Hierarquia de memria
25

Redes
WSCs usam uma hierarquia de rede anloga a hierarquia de memria.

26

Redes
Contagem de n (servidor) aproximadamente 50.000
Conectado com hierarquia de redes para reduzir custo por porta
Os ns (servidores) so mantidos em racks de 84 polegadas (213,36
cmts) que possuem 48 unidades = 48 U
Switch commodity GigE oferece 48 portas para acomodar no
rack padro
A contagem de uplink varia (2-8) o que d oversubscription em termos de
Largura de banda (48/2 a 48/8)

O projetista de software deve ter como objetivo mapear o emissor e


o mesmo rack
27

Armazenamento
Princpio de localidade
Armazenamento fornecido por discos locais conectados a um servidor
dentro do rack
Acesso externo atravs dos switches Ethernet

28

Switch de arrays
Maior conectividade
Tratamento para reduo do oversubscription
perda de largura de banda de um Switch para outro

100x mais caro que um switch ethernet comercial


por conta do custo considerado no tratamento da largura de banda na
proporo n
altas margens de lucro.

29

Hierarquia de memria
Dados para anlise de latncia, Largura de banda e hierarquia de
memria dentro de um WSC:
Cada servidor
16 Gb de memria
2 tera bytes de disco
2 sockets por placa compartilhando uma porta ethernet de 1Gbit/s

Cada par de racks inclui um switch de rack e contm 80 servidores 2U

30

Hierarquia de memria

Latncia, largura de banda e capacidade da hierarquia de memria de um WSC

31

Hierarquia de memria

Grfico da latncia, largura de banda e capacidade da hierarquia de memria de


um WSC para os dados da tabela do slide 31

32

Hierarquia de memria
Overhead de rede aumenta drasticamente a latncia da DRAM local
para o rack DRAM e array DRAM.
ambos tm latncia mais de 10 vezes melhor do que o disco local.

Rede diminui a diferena entre a DRAM de rack e o disco de rack e


entre a DRAM de array e o disco de array.
O WSC precisa de 20 arrays para atingir 50.000 servidores
Logo, h mais de um nvel na hierarquia de rede.

33

Hierarquia de memria

A rede da camada 3 usada para ligar arrays entre si e para a internet


34

4. Computao em Nuvem
Se os computadores do tipo que eu defendi se tornarem os computadores do futuro, ento
em algum dia a computao poder ser organizada como um servio pblico, assim como o
sistema telefnico [...] O servio de computadores pode se tornar a base de uma nova e
importante indstria.
John McCarthy, Celebrao do centenrio do MIT(1961)
35

Computao em Nuvem
Utilizao da memria e da capacidade de
armazenamento e processamento de computadores e
servidores compartilhados e interligados por meio da
Internet, seguindo o princpio da computao em
grade.

36

Computao em Nuvem
Impulsionadas pela demanda cada vez maior de usurios
Amazon, Google e Microsoft, etc constroem computadores em escala
warehouse, a partir de componentes comerciais comuns
Levou a inovao em softwares de sistema para operar operaes
nessa escala
Tais como Bigtabel, Dynamo, GFS e MapReduce

37

Computao em Nuvem

Com essa escala vieram as economias de escala:


Custo de armazenamento
Custo de Administrao
Custo de rede- Custo dos equipamentos

38

Computao em Nuvem
Os servidores nos datacenter tendem a ser utilizados somente entre
10 e 20% do tempo
Picos de WSCs no correlacionados entre diferentes clientes podem
gerar uma utilizao mdia acima de 50%
Economias de escala para um WSC oferecem fatores de 7-7 para
diversos componentes de um WSC
alm de alguns fatores de 1.5-2 para todo o WSC

39

Computao em Nuvem: AWS


Falando um pouco da Amazon Web Services (AWS)
Comeou a oferecer computao como servio em 2006, com algumas
decises tcnicas inovadoras:
Proteger usurios uns dos outros
Distribuio simplificada de software dentro de um WSC
s era necessrio o cliente instalar uma imagem e ento o AWS vai
automaticamente distribu-la para todas as instncias sendo usadas

Capacidade de "matar" uma mquina virtual com confiabilidade


torna fcil para a Amazon e para os clientes controlarem o uso dos recursos.
40

Computao em Nuvem: AWS


Mquinas virtuais podem limitar o processador, memria e disco
possibilitou a definio de preos.

Mquinas virtuais ocultam a identidade de hardwares mais antigos


permitindo a Amazon a vender tempo em mquinas mais velhas
que se poderiam no ser atrativas caso essa identidade fosse visvel pelo cliente

Permitem apresentar hardware novo e mais rpido, empacotando


ainda mais ncleos virtuais por servidor, ou simplesmente oferecendo
instncias que tenham maior desempenho por nvel virtual.
41

Computao em Nuvem: AWS


Custo muito baixo
US$ 0.10 por instncia (uma mquina Virtual)

Dependncia (inicial) software open-source: Linux


Sem garantia (inicial) de servio
baixo custo era to atrativo que as pessoas podiam viver sem garantia

42

Computao em Nuvem: AWS


Nenhum contrato necessrio
em parte por custos serem muito baixos bastava ter um carto de crdito.

Possibilidade de reserva de instancia


feita uma previso de uso, podendo gerar uma economia de at 75% para
usurio

43

Computao em Nuvem: AWS

Preo por hora de muitas instncias EC2 aplicados pela Amazon em 2011
44

Computao em Nuvem: AWS


Servios oferecidos hoje
Computao

Servidores Virtuais, Conteiners, Implantao de Aplicativos, funes de


computao orientada a evento , Auto-Scaling e balanceamento de carga

Armazenamento e entrega de contedo

Armazenamento de objetos, CDN (Content Delivery Network),


armazenamento em bloco, armazenamento do sistema de arquivos,
armazenamento de arquivos morto, transporte de dados, e armazenamento
integrado.
45

Computao em Nuvem: AWS


Servios oferecidos hoje
Banco de Dados
Relacional, migrao do banco de dados, NoSQL, armazenamento em cache e
data warehouse.

Redes
Virtual Private Cloud, conexes diretas, Balanceamento de carga e DNS.

46

Computao em
Nuvem: AWS

AWS atua em 38 zonas de


disponibilidade em 14
regies geogrficas em
todo o mundo.

47

5. Questes Cruzadas
Infraestrutura fsica e custo dos computadores em ecala warehouse

48

Questes Cruzadas
A rede WSC como gargalo
O Switch de nvel 3 uma frao significativa do custo de um WSC
equipamento de rede acima do switch de rack (Juniper- 8216)

So grandes consumidores de energia


Configurados manualmente
tornam frgeis trabalhando em grande escala

Preo dificulta ter mais que redundncia dupla


US$500.000
49

Questes Cruzadas
Usando energia com eficincia dentro do servidor
O PUE mede a energia do WSC
diz nada sobre a energia gasta dentro prprio equipamento de TI

Fontes so superdimensionadas para suportar as vrias variaes de


energia dentro do servidor
gera uma perda de eficincia

Fonte no segue uma proporcionalidade energtica


utiliza a energia proporcional a quantidade de trabalho realizada.
50

Questes Cruzadas

A figura mostra o quo distantes est em atingir o objetivo. Usando o Specpower um


benchmark de servidor que mede a energia utilizada em diferentes nveis de desempenho.

51

Questes Cruzadas
O Sistema de software foi projetado para usar todos os recursos
disponveis caso melhore potencialmente o desempenho, sem
preocupao com as implicaes energticas
Arquitetos de softwares precisam considerar a energia, assim como o
desempenho nos projetos futuros

52

6. Google Warehouse
Um exemplo de WSC

53

Google Warehouse
WSC Google
Douglas Country, Gergia,
EUA
gua 100% reciclada

54

Google
Warehouse
Google conta com dezenas de
datacenters espalhados pelo
mundo, alguns com gigantescas
fazendas de servidores e centenas
de milhares de containers
recheados de dados
Tudo, claro, dando preferncia
aos pases mais frios, para
economizar em sistemas de
resfriamento.

55

Google
Warehouse
A segurana parte do DNA da
Google
Ela cria com exclusivamente os
servidores atualmente para os
data centers, nunca vende ou
distribui externamente
Eles so projetados para que no
incluam hardware ou software
desnecessrio, o que reduz o
nmero de possveis
vulnerabilidades.
56

Google Warehouse
Possui medidas de recuperao de
desastres robustas.
Por exemplo, em caso de incndio
ou de qualquer outro desastre,
mudado o acesso aos dados
automtica e uniformemente para
outro Datacenter, para que os
usurios possam continuar
trabalhando ininterruptamente.
Os geradores de emergncia
continuam a alimentar os
Datacenter, mesmo em caso de
falha de energia.

57

Google
Warehouse
Em vez de armazenar os dados de
cada usurio em uma nica
mquina ou conjunto de mquinas,
eles so distribudos (incluindo
prprios dados da Google) em
vrios computadores e em locais
diferentes
Depois disso, eles so divididos em
blocos e copiados em vrios
sistemas para evitar pontos de falha
Eles so nomeados aleatoriamente
como uma medida extra de
segurana, tornando-os ilegveis ao
olho humano.

58

Google Warehouse
Durante o trabalho, os
servidores fazem backup
automtico dos dados
crticos. Assim, quando
houver (se o computador
falhar ou for roubado) volta
ativa em questo de segundos

59

Google Warehouse
rastreado rigorosamente a localizao e o status de cada
disco rgido nos Datacenter
So destrudos os discos rgidos que chegam ao fim de suas
vidas em um processo complexo e formado por vrias etapas,
para impedir o acesso aos dados.
60

Google Warehouse
Efetividade na utilizao de energia (PUE) do Google

Mesmo contando com mais de 1 milho de


servidores trabalhando de forma ativa, a
empresa consome apenas 0,01% da energia
produzida em todo planeta
61

Google Warehouse
Efetividade na utilizao de energia (PUE) do Google
PUE mdio de 19 Datacenters em 2006 era de 1,69
A Google Hoje tem um PUE de 1,12
isso considerando toda a frota de Datacenters no somente as mais novas e
com melhores instalaes,
medio e feita durante os 12 meses do ano no somente em pocas mais frias.

Google a empresa com o melhor PUE em relao a mdia, que esta


em 1,70
de acordo com o Uptime Institute's 2014 Data Center Survey
62

Referencial Bibliogrfico
Patterson and Hennessy, Computer Architecture: A Quantitative
Approach, 5th Ed., Morgan Kaufman, 2011
Barroso and Hlzle, The Datacenter as a Computer: An Introduction to
the Design of Warehouse-Scale Machines, 2nd Ed., Morgan & Claypool,
2009
Paulo Andre Castro, Computao em escala Warehouse, Notas de Aula

63

Você também pode gostar