terça-feira, 29 de outubro de 2013

Dados centro de design da Salesforce: 'Vá para a escala web, e construí-lo de s ** t!'


Regcast livre: Dispositivos de Gerenciamento de Multi-Vendor com System Center 2012


RICON Oeste 2013 Se você está construindo sistemas para funcionar em larga escala, em seguida, ao invés de perder tempo e dinheiro tentando evitar qualquer falha, você precisa chupar-lo e aceitar que as falhas vão acontecer - e certifique-se que você tem o suficiente equipamento barato para se recuperar.


Assim diz Salesforce, que argumentou que essa estratégia pode salvar-lhe um monte de dinheiro que você gastaria em um hardware caro, e torná-lo mais fácil para as suas aplicações para sobreviver catástrofes.







Em um discurso sincero na Ricon Ocidente conferência sistemas distribuídos na terça-feira, Salesforce arquiteto e ex-Amazon Web Services cérebro Pat Helland falou sobre o sistema de Salesforce interno "Keystone", que permite a empresa oferecer maiores capacidades de backup e replicação de dados armazenados no Oracle sem ter que gastar os preços da Oracle no apoio de infra-estrutura.


"Você precisa ter empresa de confiança com a resiliência de classe web", disse Helland. "As falhas são normais, o tempo médio entre falhas faz com que falhas comuns. Você tem que esperar que as coisas quebram, então você tem a camada com os dados imutáveis.


"A abordagem de design ideal é" escala web e quero construí-lo de merda '. "


Sistema Keystone do Salesforce leva de dados da Oracle e, em seguida, camadas em cima de um conjunto de infra-estrutura barata rodando em servidores de commodities, Helland explicou. A tecnologia Oracle dá Salesforce confiança e consistência, ele disse, e a segunda camada de sistemas de commodities e de software open-source pode dar à empresa uma maior flexibilidade e uma maneira mais barata de fornecer infra-estrutura de armazenamento, explicou.


O que está dentro Keystone


Keystone é composto por vários clusters de servidores de armazenamento em execução 10 unidades de quatro terabytes e dois SSDs de 750 GB cada, explicou. Salesforce tem uma preferência para a compra de "o shittiest SSDs o dinheiro pode comprar", disse ele, em seguida, projetar sistemas de percurso em torno falhas. Armazenamento da Keystone barriga consiste em grupos de 10s a 100s de nós, possivelmente, escalando até milhares explicou.


A metodologia de design por trás Keystone vem de duas técnicas nomeadas ROC - computação recuperação orientada - e macio - de armazenamento em relação às tecnologias esquisito. ROC vem de uma pesquisa realizada na Universidade da Califórnia em Berkeley, em meados da década de 2000 e é sobre a criação de sistemas para recuperar rapidamente de falhas, enquanto SOFT é o próprio mandato de Helland para a construção de sistemas de armazenamento com garantias sobre-como-chips barato hardware.


"Você começa melhor o comportamento do sistema se você assumir que tudo é um pedaço de merda"


Salesforce é projetar sistemas que utilizam estas técnicas para que possa lidar melhor com a descamação da infra-estrutura de mercadoria, sem ter que atualizar a sistemas mais caros, disse ele. "Os servidores de armazenamento pode falhar e eles podem mentir com os dentes a sua malditos. Você começa melhor o comportamento do sistema, se você assumir que tudo é um pedaço de merda."


Keystone tem quatro elementos principais: um catálogo para manter o controle de dados, uma loja para armazená-lo, a Vault para armazenamento a longo prazo, e uma bomba para baralhar dados entre sistemas sobre WAN.


O Catalog fornece um intermediário entre os sistemas de armazenamento, tais como Oracle e sistemas de armazenamento secundário construídos em hardware commodity. Armazenamento primário pode apontar para Keystone, que então aponta para sistemas secundários, tornando mais fácil para mudar a localização de dados secundários, sem ter que mexer com o sistema primário.


A loja mantém apossar dos dados que são alimentados no catálogo, e vê Salesforce adotar a abordagem de projeto pioneiro por grandes empresas - como Google, Facebook, Amazon e - de usar grandes quantidades de hardware de baixo custo para fornecer armazenamento de backend, atingindo boas garantias e confiabilidade por meio de uma camada de software.


Esta abordagem de design tem um problema gritante: falhas. Isso acontece muito, Helland explicou. Cerca de 4 por cento ou mais unidades de disco rígido SATA falhar um ano, disse ele, e assim um data center com 1.200 de servidores de armazenamento de pelúcia da Salesforce vai perder 480 unidades a cada 12 meses. Portanto armazenamento precisa ser triplo replicado para lidar com essas falhas. No entanto, os servidores irão falhar em uma sombra debaixo de um por cento ao ano, ele explicou, para que os dados também deve ser replicada a uma distância de infra-estruturas de rack.


Isso traz problemas referentes manter a consistência ao puxar de uma réplica, e por isso exige uma camada de cache para armazenar locais dos dados e manter tudo atualizado. Este é construído em SSDs baratos grau consumidor, disse ele, que tem terrível confiabilidade.


"SSDs consumidor da classe só vai morrer - o dispositivo deixa de menos de 1 por cento ao ano", disse ele. Eles também se desgastam depois de cerca de 3.000 ciclos de escrita, portanto, com um SSD de 750GB, você provavelmente pode escrever 2.25PBs a ele antes de ele falhar, ele disse.


Eles às vezes também sofrem de podridão bit, que em sua experiência com os mais baratos possíveis sistemas tem um erro de bit não corrigida para cada 10 14 bits (11.3TB) escritos. Em comparação, o top-of-the-line SSDs de classe empresarial têm uma taxa de podridão de um bit em cada 10 19 (1.08EB), mas eles são muito mais caros.


Software moderno precisa ser construído a falhar, ele diz, porque se você projetá-lo de uma forma interligada monolítico, em seguida, um blecaute hardware simples pode se propagar através de todo o sistema e levá-lo offline.


"Se tudo no sistema pode quebrá-lo mais robusto se faz pausa. Se você correr ao redor e ninguém sabe o que acontece quando se rompe, então você não tem um sistema robusto", diz ele. ®



Nenhum comentário:

Postar um comentário