Scale-out storage

Scale-out storage é uma arquitetura de armazenamento em rede (NAS) na qual a quantidade total de espaço em disco pode ser expandida através da adição de dispositivos em arrays conectados com seus próprios recursos.

Num sistema scale-out, novo hardware pode ser adicionado e configurado à medida que a necessidade surgir. Quando um sistema em escale-out atinge seu limite de armazenamento, outro array pode ser adicionado para expandir a capacidade do sistema. O armazenamento em escale-out pode aproveitar o armazenamento extra adicionado através de arrays e também usar dispositivos adicionados para aumentar a capacidade de armazenamento em rede, adicionando desempenho e atendendo à necessidade de armazenamento adicional.

Antes do armazenamento em escale-out se tornar popular, as empresas freqüentemente compravam arrays de armazenamento muito maiores do que o necessário para garantir que muito espaço em disco estaria disponível para expansão futura. Se essa expansão nunca ocorreu ou as necessidades se revelaram menores do que o previsto, grande parte do espaço em disco originalmente adquirido foi para o lixo. Com uma arquitetura scale-out, o investimento inicial pode ser mais modesto para começar porque não é necessário prever a necessidade a longo prazo -- se as necessidades de armazenamento aumentarem além das expectativas, novas matrizes podem ser adicionadas conforme necessário, essencialmente sem limite.

Escalabilidade vertical vs. horizontal

Escalabilidade é a capacidade de algum tipo de sistema continuar a funcionar corretamente quando tiver sido alterado em tamanho ou volume a fim de atender a uma necessidade do usuário. Em alguns contextos, a escalabilidade refere-se à capacidade de atender a demandas maiores ou menores, conforme necessário. Em um contexto de armazenamento, entretanto, a redimensionabilidade geralmente se refere à adaptação para responder a uma demanda por aumento de capacidade. Há duas abordagens principais para alcançar isso.

a abordagem mais antiga de escalabilidade é um exemplo de escalabilidade vertical. A escalabilidade vertical é a capacidade de aumentar a capacidade do hardware ou software existente, adicionando recursos a um sistema físico - por exemplo, adicionando poder de processamento a um servidor para torná-lo mais rápido. No caso de sistemas de armazenamento, significa adicionar mais dispositivos, tais como unidades de disco, a um sistema existente quando é necessária mais capacidade.

Por outro lado, a escalabilidade horizontal é a capacidade de conectar várias entidades para que elas funcionem como uma única unidade lógica. No caso do armazenamento em escala, pode haver muitos nós, separados geograficamente.

As limitações do armazenamento em escala

Os NAS tradicionais são às vezes referidos como NAS em escala porque a capacidade de armazenamento só pode ser aumentada (aumentada) adicionando sistemas adicionais a uma arquitectura existente. Um sistema de escalonamento consiste em um ou dois controladores, conhecidos como cabeças NAS, que têm acesso a quantidades predefinidas de CPU e memória e um número pré-determinado de slots de unidade. Os dispositivos em escalonamento NAS compartilham recursos do sistema e a função de controle não aumenta junto com a capacidade de armazenamento, o que significa que o desempenho tende a se degradar à medida que mais armazenamento é adicionado. Quando o sistema NAS atinge seus limites, a capacidade e o desempenho só podem ser aumentados através da adição de um novo sistema gerenciado separadamente.

Scale-out storage architecture

Um sistema scale-out pode incluir tantos clusters quantos os requisitos ditarem.

Cada dispositivo (nó) inclui capacidade de armazenamento, que pode estar na forma de múltiplos fusos de drive, e pode ter sua própria potência de processamento e largura de banda de E/S (entrada/saída). A inclusão desses recursos significa que à medida que a capacidade de armazenamento aumenta, o desempenho também aumenta.

Scale-out NAS cresce com a adição de nós agrupados. Estes são frequentemente servidores x86 com um sistema operacional especial e armazenamento conectado através de uma rede externa. Os nós podem ser conectados para intercomunicação através de um backplane de alta velocidade ou de uma rede. Os usuários administram o cluster como um sistema único e gerenciam os dados através de um namespace global ou sistema de arquivos distribuídos (DFS), para que eles não tenham que se preocupar com a localização física real dos dados.

Veja um breve histórico do armazenamento de dados e uma introdução ao armazenamento em escala no vídeo de Peter Larson: