Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do...

25
Uma Análise do Foto-Caching do Facebook Mateus Landim Rolvander Pereira

Transcript of Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do...

Page 1: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Uma Análise do Foto-Caching do FacebookMateus Landim

Rolvander Pereira

Page 2: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

IntroduçãoInfra-estrutura de gerenciamento de imagens

do facebook.

Complexa e geograficamente distribuída.

Conta com caches do navegador em sistemas de usuários finais, caches de Edge PoPs, cache de origem e para algumas imagens, caching adicional via Akamai.65,5% do navegador, 20% de edge, 4,6% de

origem e 9,9 de back-end.

Page 3: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Introdução250 bilhões de fotos no Facebook (Setembro,

2013)

Page 4: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

IntroduçãoPopularização das redes sociais.

Aumento na quantidade de conteúdo.

Objetivo principal é explorar a dinâmica dos serviços de fotos do facebook entre o navegador e o servidor.

Page 5: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

IntroduçãoPara melhor entendimento, foi necessário

estudar e examinar toda uma infra-estrutura que serve imagens para internet, em uma escala maciça.

O fluxo de tráfego geográfico, para infra-estrutura, muitas vezes é servido em uma grande distância em vez de localmente.

Adotando alguns algoritmos mais avançados, tem-se a oportunidade de melhoria de vida de caches.

Page 6: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Facebook Photo-Caching Stack

Altas quantidades de fotos em nome dos usuários.

Facebook conta com uma pilha de veiculação de fotos em massa distribuída, em uma escala geográfica.

Para entregar todo o conteúdo de forma eficiente , com alta disponibilidade e baixa latência.

Page 7: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Facebook Photo-Caching StackQuando um usuário recebe um arquivo HTML

de servidores do Facebook front-end web, um navegador ou aplicativo cliente móvel começa a baixar fotos com base nas URLs embutidas no arquivo.

Essas URLs são geradas pelos servidores da Web para controlar a distribuição de tráfego em toda a pilhaincluem um identificador original da foto ,

especificações e dimensões da imagem de exibição e o caminho de busca

Page 8: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Facebook Photo-Caching Stack

Há três camadas de caches na frente dos servidores de back-end que armazenam as fotos reais. Estes caches, ordenados por sua proximidade com os clientes, são:Cache do navegador do clienteEdge CacheCache de Origem.

Page 9: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Navegador

O cache do navegador típico é localizado com o cliente, usa uma tabela hash na memória para testar a existência do cache, e usa o algoritmo LRU. Há muitas variações sobre o cache do navegador típico. Se um pedido perde no cache do navegador, o navegador envia uma solicitação HTTP para a Internet. O caminho de buscar determina se o pedido é enviado para o Facebook Edge.

Page 10: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Edge Cache

Formada por um conjunto de edge caches que são executados dentro de pontos de presença ( PoPs ) próximo aos usuários finais. Há um pequeno número de edge caches espalhados por todo os EUA que todas as funções executam de forma independente.

Page 11: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

OrigemSão encaminhados a partir de edge caches

para os servidores na origem de cache usando um mapeamento de hash com base no id único da foto que está sendo acessada. Como os edge caches, cada servidor de origem de cache tem uma tabela hash em memória que contém os metadados sobre as fotos armazenadas e uma memória flash grande que armazena as fotos reais. Ele usa uma política de remoção FIFO.

Page 12: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Facebook Photo-Caching Stack

Page 13: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Foto Transformações

Diferentes formas de fotos, para usuários diferentes.

O redimensionamento e o recorte de fotos é feito na pilha de caching

Page 14: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Objetivo do Stack CachingOs objetivos do stack caching do Facebook,

diferem por camada.

O principal objetivo do cache Edge é reduzir a largura de banda entre o Edge e a Origem nos datacenters.

Enquanto que o principal objetivo para outros caches é o tráfego para abrigar seus servidores de back-end, que são de I/O.

Page 15: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

MetodologiaColeta de Dados Multi-Ponto

A fim de acompanhar os eventos através de todas as camadas do Facebook. É necessário começar independentemente da instrução dos vários componentes da pilha, a coleta de uma amostra representativa de uma forma que permite a correlação de eventos relacionados com a mesma, solicitado mesmo quando eles ocorrem em locais largamente distribuídos na hierarquia

Preservação de privacidade.

Page 16: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Carga de Trabalho

A análise examina mais de 70 TB de dados.

Todos os pedidos iniciados pelo cliente que atravessaram o Facebook, durante um período de amostragem de um mês de correspondente

Cada tamanho de uma foto é um objeto distinto para fins de armazenamento em cache.

Page 17: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Carga de Trabalho

Função de Distribuição Acumulativa, baseada no tamanho do objeto sendo transferido através da origem.

Page 18: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Análise de Rede Social

Foram estudadas duas propriedades que intuitivamente deve ser fortemente associados ao tráfego foto: a idade de fotos e o número de seguidores no Facebook associados com o proprietário.

Page 19: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Análise de Rede SocialEfeito Idade

Supõe-se geralmente que o novo conteúdo vai chamar atenção e, portanto, representam a maioria do tráfego visto dentro da pilha.

Nosso conjunto de dados permite avaliar tais hipóteses para a hierarquia das imagens no Facebook, ligando os vestígios coletados em diferentes camadas no banco de dados de fotos.

Page 20: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Análise de Rede SocialRealizou-se esta análise , categorizando buscas

por imagens pela idade do conteúdo de destino , em seguida, olhando para a forma como essa informação varia em cada camada da pilha.

Idade Foto (em horas) foi determinado subtraindo-se o tempo de criação de fotos a partir do momento do pedido, assim, mesmo uma foto enviada no mesmo dia terá solicitações associadas classificadas em 24 categorias por hora.

Page 21: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Análise de Rede Social

Nossa análise revela que as diferenças de tráfego entre caches implantados (navegadores , Edge Cache) e armazenamento de back-end (que inclui a origem de cache) são mais visíveis para fotos novas do que para as antigas.

Page 22: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Análise de Rede Social

Tráfego dos maiores Edge Caches com os data centers de Origem.

Page 23: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Trabalhos RelacionadosMuitos estudos de medição examinaram os

padrões de acesso web para os serviços associados à entrega de conteúdo , armazenamento e web hosting.

Analisar a carga de trabalho do mundo real na escala do Facebook, e traçar com sucesso um grande volume de eventos, através de saída de uma pilha massivamente distribuída.

Page 24: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

Conclusão

Foi possível identificar uma oportunidade de melhorar o desempenho do cliente, aumentando os tamanho de cache do navegador para clientes muito ativos e permitindo um redimensionamento fotográfico local para clientes menos ativos.

Page 25: Mateus Landim Rolvander Pereira. Introdução Infra-estrutura de gerenciamento de imagens do facebook. Complexa e geograficamente distribuída. Conta com.

ReferênciasAn Analysis of Facebook Photo Caching

- Qi Huang, Ken Birman, Robbert van Renesse (Cornell University), Wyatt Lloyd (Princeton University), Sanjeev Kumar, Harry C. Li (Facebook Inc.)

www.akamai.com