quarta-feira, 14 de agosto de 2013

Facebook lidera o Apache banco de dados do projeto gráfico com o código de fresco


Whitepaper gratuito: Incremente sua infra-estrutura


Facebook tem empurrado código volta para o ramo do tronco de Giraph, uma de processamento gráfico projeto open source Apache que imita o sistema do Google avançado "Pregel".


As atualizações deixar gráficos processo Giraph com trilhões de bordas - as conexões entre entidades em um banco de dados gráfico - e foram anunciados pela empresa em um post no blog na quarta-feira , em que os engenheiros também explicou por que eles escolheram para trazer Giraph em ecossistema de software da rede social , e como eles adicionado a ele para deixá-lo lidar com gráficos maiores, em forma menos intensa memória.







Giraph é uma implementação do banco de dados do Google Pregel, que a Fábrica de Chocolate construído para deixá-lo extrair a sua vasta gama de pontos de dados e identificar as interconexões valioso. A companhia publicou informações sobre Pregel em junho de 2009 .


Facebook usa Giraph para ajudá-lo a analisar a sua rede social enorme, e decidiu atualizar sua tecnologia, no verão de 2012. Ao analisar os dados contidos nas conexões entre seus peões usuários e marcas e grupos, o Facebook pode certamente desenvolver melhores ferramentas para oferecer aos seus anunciantes.


"Analisando estes gráficos do mundo real na escala de centenas de bilhões ou mesmo um trilhão (10 ^ 12) bordas com software disponível era impossível no ano passado. Precisávamos de uma estrutura de programação para expressar uma ampla variedade de algoritmos de gráfico de uma forma simples e escala los para conjuntos de dados grandes. Após as melhorias descritas neste artigo, Apache Giraph forneceu a solução para as nossas necessidades ", os engenheiros escreveram.


A empresa também avaliou Apache Hive, GraphLab e Apache Giraph, mas plumped para Giraph devido ao fato de que é executado como um trabalho MapReduce, e é escrito em Java e assim pode interagir bem com a pilha Java do Facebook.


A principal contribuição Facebook feito para a tecnologia foi a implementação de multi-threading, o que melhora o desempenho de Giraph.


"Quando Giraph leva todos os slots de tarefas em uma máquina em um cluster homogêneo, pode atenuar os problemas de diferentes disponibilidades de recursos para diferentes trabalhadores (mais lento problema trabalhador)", escreveu a empresa. "Por estas razões, nós adicionamos multithreading para carregar o gráfico, computação (GIRAPH-374), e armazenar os resultados computados (GIRAPH-615)."


Com a implementação de multithreading, a empresa viu a velocidade linear em algumas aplicações ligadas CPU.


A empresa também reduziu o consumo de memória overally do sistema, que em iterações anteriores era uma "memória gigante".


É conseguir isso seriealizing vértices em um array de byte ao invés de um objeto java, e serialização de mensagens no servidor. Ao fazer isso, a empresa também ganhou um modelo de memória predictasble para vértices, que deixá-lo melhor descobrir o consumo de recursos pela tecnologia.


"Dado que normalmente há muitos mais arestas que vértices, podemos estimar aproximadamente o uso de memória necessária para carregar o gráfico baseado inteiramente nas bordas. Nós simplesmente contar o número de bytes por aresta, multiplique pelo número total de arestas no grafo , e depois multiplicar por cerca de 1,5 a levar em conta a fragmentação da memória e inexata tamanhos matriz de bytes. "


A empresa também fez reforço para o architectur agregador da tecnologia para eliminar os estrangulamentos que havia se formado durante o processamento de grandes quantidades de dados.


Estes imnprovements melhoraram dramaticamente o perforamce de Giraph, Facebook, diz, permitindo-lhe executar uma interação de page rank em um um trilhão de ponta gráfico social - o maior Giraph teste já sofrido.


"Os maiores problemas relatados tamanhos aferido do mundo real para o nosso conhecimento é o gráfico do Twitter com 1,5 bilhão de bordas ... eo Altavista gráfico Yahoo! com 6,6 bilhões de bordas, o nosso relatório de desempenho e escalabilidade em uma borda gráfico social 1 trilhão é de 2 ordens de magnitude além dessa escala ".


Poucas empresas têm de lidar com gráficos com trilhões (ou até bilhões) de bordas para agora, mas, como tecnologias, como a internet das coisas são implantados amplamente e mares de sensores começar Transferência de dados para armazenamento de dados em massa, a tecnologia vai se tornar cada vez mais relevante para as organizações Diferentemente de outras redes sociais, ad fundibulários (Google) e e-commerce lojas (Amazon). ®







via Alimentar (Feed)

Nenhum comentário:

Postar um comentário