quinta-feira, 21 de novembro de 2013

Facebook ajuda a programadores obter suas rochas off-torcendo com flash de DB lib


Entrega Email: Ódio e-mails de phishing? Você vai adorar DMARC


Facebook desenvolveu uma biblioteca de banco de dados open-source que torce mais desempenho de armazenamento flash do lado do servidor do que nunca, enquanto a construção na tecnologia anterior, publicado pelo Google.


O RocksDB loja de valor-chave persistente incorporável foi anunciada pelo Facebook na quinta-feira, e dá aos desenvolvedores uma biblioteca C + + baseado na versão 1.5 do código-fonte aberto do Google LevelDB tecnologia para turbinar os bancos de dados que manipulam dados mantidos em flash de servidor moderno de alto IO. Facebook está armazenando quase um petabyte de dados nele no momento.







Aplicações potenciais que podem encontrar a tecnologia útil incluem programas de detecção de spam que precisam de acesso rápido à memória, em tempo real, consultas gráfico de pesquisa, consultas Hadoop em tempo real, filas de mensagens que podem lidar com um elevado número de inserções e exclusões, ou virados para o usuário aplicativos que armazenam visualização história e estado de um site, o Facebook disse .


LevelDB foi desenvolvido pela Google e lançado em 2011 para ajudar a expor alguns dos truques que tinha aprendido ao construir BigTable de uma forma que poderia ser usado por desenvolvedores externos. Algumas pessoas têm adotado a tecnologia, incluindo Riak especialistas Basho que servem uma versão melhorada do software para os clientes que têm padrões de acesso não-aleatórias.


"Temos clientes com muito grandes conjuntos de dados, que executa no ou muito perto máxima do subsistema de I / O é um requisito para a maioria, se não todas elas. Continuando a fornecer esse nível de ingerir, enquanto ao mesmo tempo a manutenção do subconjunto a quente dos dados em pedidos de leitura é algo que LevelDB é muito bom em fazer ", gerente de produto técnico Basho Greg Burd nos disse via e-mail.


Agora, o Facebook tem pulou na tecnologia LevelDB também, e substancialmente melhorada dele.


"Software RocksDB pode utilizar plenamente os IOPS oferecidas pelo armazenamento flash, tornando-se executar mais rápido do que LevelDB através de leitura aleatória, escrever e uploads em massa", escreveu no Facebook. "Dispositivos de armazenamento modernos suportar até 100.000 operações aleatórias por segundo em um único cartão de memória flash. Se você listra dez destes cartões, você recebe cerca de um milhão de operações aleatórias por segundo. Hoje, RocksDB é capaz de correr rápido o suficiente para evitar ser gargalo quando operar com este tipo de armazenamento. "


As obras de tecnologia de armazenamento de chaves e valores como fluxos de bytes arbitrários. Escreve ir direto para uma estrutura de dados na memória chamado memtable e, opcionalmente, também são gravados em um logfile , que é uma seqüência escrito para a memória principal. Uma vez memtable enche-lo ele é lavado em uma sstfile no armazenamento principal eo logfile é excluído.


A tecnologia tem sido visto atingir 10 vezes mais rápido gravações aleatórias e 30 por cento mais rápido do que leituras aleatórias LevelDB, e parece ter um melhor desempenho em escala de baunilha LevelDB ao lidar com grandes pegadas de memória, o Facebook disse, em um esboço arquitetura publicado juntamente com o código no Github .


"RocksDB não é um banco de dados distribuído - em vez do foco está em fazer um, de alto desempenho, o motor de banco de dados de um único nó eficiente", escreveu a empresa.


O lançamento do RocksDB segue a publicação do código para o sistema Presto Hive-surra do Facebook no início de novembro .


Embora Facebook diz que está publicando o código sob a licença BSD de três cláusula "porque acho que vai ser útil para além do Facebook," é provável que exista outra motivação em jogo aqui: se a empresa obtém suas ferramentas para o ecossistema de TI mais amplo, faz mais fácil para o Facebook para contratar novos talentos, e pode terceirizar alguns componentes do desenvolvimento em curso para a comunidade de código aberto mais amplo. ®







via Alimentação (Feed)

Nenhum comentário:

Postar um comentário