Quando o armazenamento do servidor fica baixo, os desenvolvedores começam a gemer: "Posso obter uma unidade de 1 TB no Walmart por 100 dólares, qual é o problema".
Como as complexidades do armazenamento podem ser explicadas aos desenvolvedores para que eles entendam por que uma unidade de 1 TB do Walmart simplesmente não funciona.
ps Sou desenvolvedor e também quero saber:)
Respostas:
Algumas verdades domésticas sobre armazenamento, ou por que o armazenamento corporativo é tão caro?
Os discos rígidos de consumo oferecem grandes volumes de espaço, de modo que mesmo o usuário mais exigente da mídia de streaming * tosse * pode comprar o suficiente para armazenar uma coleção de vários terabytes. De fato, a capacidade do disco vem crescendo mais rapidamente do que o transistor conta com silício há algumas décadas.
O armazenamento "corporativo" é um problema um pouco mais complexo, pois os dados têm requisitos de desempenho e integridade que determinam uma abordagem um pouco mais pesada. Os dados devem ter alguma garantia de disponibilidade no caso de falhas de hardware e podem ser compartilhados com um grande número de usuários, o que gerará muito mais solicitações de leitura / gravação do que um único usuário.
As soluções técnicas para esse problema podem ser muitas vezes mais caras por gigabyte do que as soluções de armazenamento do consumidor. Eles também exigem manutenção física; os backups devem ser feitos e frequentemente armazenados fora do local, para que um incêndio não destrua os dados. Esse processo adiciona custos contínuos.
atuação
No seu consumidor de 1 TB ou até mesmo na unidade near-line corporativa, você tem apenas uma cabeça. O disco gira a 7200 RPM, ou 120 rotações por segundo. Isso significa que você pode obter no máximo 120 operações de E / S de acesso aleatório por segundo na teoria * e um pouco menos na prática. Portanto, copiar um arquivo grande em um único volume de 1 TB é relativamente lento.
Em uma matriz de disco com discos de 14 x 72 GB, você tem 14 discos sobre heads-up (digamos) 15.000 RPM ou aproximadamente 250 rotações por segundo. Isso fornece um máximo teórico de 3.500 operações aleatórias de E / S por segundo * (novamente, um pouco menos na prática). Todas as outras coisas iguais à cópia de um arquivo serão muitas, muitas vezes mais rápidas.
*
Você pode obter mais de um acesso aleatório por rotação do disco se a geometria das leituras permitir que a unidade mova as cabeças e leia um setor que estava disponível dentro de uma revolução do disco. Se os acessos ao disco foram amplamente dispersos, você provavelmente terá em média menos de um. Onde uma matriz de disco formatada em um layout listrado (veja abaixo), você obtém no máximo uma faixa de leitura por rotação do disco na maioria das circunstâncias e (dependendo do controlador RAID) possivelmente menos que uma em média.A unidade de 7200 RPM 1 TB provavelmente será razoavelmente rápida nas E / S sequenciais. Matrizes de disco formatadas em um esquema distribuído (RAID-0, RAID-5, RAID-10 etc.) geralmente podem ler no máximo uma faixa por rotação do disco. Com uma faixa de 64K, podemos ler 64Kx250 = 16MB ou mais de dados por segundo em um disco de 15.000 RPM. Isso fornece uma taxa de transferência seqüencial de cerca de 220 MB por segundo em uma matriz de 14 discos, o que não é muito mais rápido no papel do que os 150 MB / s ou mais citados para um disco SATA de 1 TB moderno.
Para transmissão de vídeo (por exemplo), uma matriz de 4 discos SATA em um RAID-0 com um tamanho de faixa grande (alguns controladores RAID suportam tamanhos de faixa de até 1 MB) possuem bastante rendimento sequencial. Teoricamente, este exemplo pode transmitir cerca de 480 MB / s, o que é confortável o suficiente para fazer edição de vídeo HD não compactada em tempo real. Assim, os proprietários de Mac Pros e hardware semelhante podem executar tarefas de composição de vídeo em HD que exigiriam uma máquina com uma matriz de fibra de conexão direta apenas alguns anos atrás.
O benefício real de uma matriz de disco está no trabalho de banco de dados, caracterizado por um grande número de solicitações de E / S pequenas e dispersas. Nesse tipo de carga de trabalho, o desempenho é limitado pela latência física de bits de metal no disco, girando e girando e voltando e voltando. Essa métrica é conhecida como IOPS (operações de E / S por segundo). Quanto mais discos físicos você tiver - independentemente da capacidade - mais IOPS poderá teoricamente fazer. Mais IOPS significa mais transações por segundo.
Integridade de dados
Além disso, a maioria das configurações de RAID fornece redundância de dados - o que requer mais de um disco físico por definição. A combinação de um esquema de armazenamento com essa redundância e um número maior de unidades oferece ao sistema a capacidade de atender de maneira confiável uma grande carga de trabalho transacional.
A infraestrutura para matrizes de disco (e SANs, no caso mais extremo) não é exatamente um item do mercado de massa. Além disso, é um dos bits que realmente, realmente não pode falhar. Essa combinação de padrão de construção e volumes menores de mercado não sai barata.
Custo total de armazenamento, incluindo backup
Na prática, é provável que o maior custo para manter 1 TB de dados seja backup e recuperação. Uma unidade de fita e 34 conjuntos de fitas SDLT ou ultrium para um ciclo completo de backup e recuperação custarão provavelmente mais do que uma matriz de disco de 1 TB. Adicione os custos de armazenamento externo e o salário de um único macaco e, de repente, seus 1 TB de dados não será tão barato.
O custo dos discos geralmente é um caminho justo para a hierarquia dos custos de armazenamento dominantes. Em um banco, tive a oportunidade de trabalhar para o armazenamento da SAN, que custava £ 900 / GB para um sistema de desenvolvimento e £ 5.000 / GB para um disco em um servidor de produção. Mesmo a preços de fornecedores corporativos, o custo físico dos discos era apenas uma pequena fração disso. Outro exemplo que eu conheço tem uma IBM Shark SAN (relativamente) modestamente configurada que custa em algum lugar mais de £ 1 milhão. Apenas o armazenamento físico é cobrado em torno de 9 libras / gigabyte, ou cerca de 9.000 libras por espaço equivalente ao seu HDD de consumidor de 1 TB.
fonte
Apenas diga: "Sim, e posso obter um programador Java no exterior por US $ 5 / hora".
fonte
Talvez faça algumas perguntas sobre a unidade do Walmart:
... Compare essas respostas com uma unidade que esteja sendo executada como parte de uma matriz RAID 5 em um centro de dados bem gerenciado.
(Divulgação: eu também sou desenvolvedor - estou supondo!)
fonte
Talvez você deva considerar armazenamento diferenciado.
Seu desenvolvedor pode precisar de mais espaço, mas talvez não seja o espaço em disco de "classe empresarial" que ele está buscando. Talvez ele só precise armazenar um arquivo .vhd e ISO, que é o caso de uma falha no disco, que pode ser baixado novamente no MSDN. Talvez as execuções de teste exijam grandes requisitos de espaço transitório que só precisam estar presentes durante a duração da execução do teste. Por tudo isso, uma unidade Wallmart de US $ 50 pode ser uma solução válida.
fonte
A principal coisa que as pessoas precisam entender sobre armazenamento é que há uma grande diferença entre capacidade e IOPS. Coisas como durabilidade, etc. geralmente são discutíveis, quase sempre se resume a IOPS vs. capacidade.
fonte
Depende do tipo de servidor que está perguntando. Para um servidor básico de desenvolvimento ou teste, as unidades de uma TB do Wallmart provavelmente são boas o suficiente. Se você estiver lidando com um servidor de ponta que não usa componentes de prateleira, pergunte se eles construiriam um carro de corrida e comprariam pneus em uma loja de autopeças para economizar alguns dólares.
fonte
O jeito que eu explico é isso. Se o seu chefe assinar a compra. Vou colocar uma placa na unidade Wal-Mart que afirma ..
"o Sys Ad foi instruído a colocar isso aqui contra sua vontade e coragem". E quando a unidade acabar, entregarei a unidade e observarei o desenvolvedor e perguntarei a eles como fazer o meu trabalho desta vez.
Concordo com Portman ... confie na equipe ou vá embora.
fonte
Uma resposta simples de uma linha: as unidades de 1 TB são geralmente SATA, mas seu servidor é SCSI. (Mesmo que o servidor não seja SCSI, isso pode interromper a linha de consulta ... por enquanto.)
Uma unidade SCSI de 300 GB custa geralmente 4x o preço, então há o backup dos dados existentes, a organização do tempo de inatividade, a instalação, algo pode dar errado, as horas extras etc. etc. Em suma, uma simples atualização de armazenamento pode levar a todos tipos de dor - nenhum dos quais o desenvolvedor é diretamente responsável. Dizer que você pode comprar uma unidade pronta para atender às necessidades atuais é irremediavelmente simplista.
Mas você sabe que deveria ter colocado unidades maiores nos malditos servidores quando as comprou e está se preparando agora! Mas você queria que os servidores fossem instalados e eles teriam aumentado o custo inicial, e talvez fosse necessário uma rodada extra de aprovação ... bem-vindo ao mundo de dor do administrador de sistemas ...
fonte