Storage Spaces - misture SSD com HDD

8

Não consigo encontrar nenhuma informação, por isso espero que alguém aqui possa esclarecer alguma coisa.

Eu tenho uma cópia nova do Windows 8 Pro instalada. Eu quero usar espaços de armazenamento com 4 HDD interno e 2 SSDs internos. O Windows 8 utiliza os SSDs de alguma forma especial (por exemplo, caching) para aumentar a velocidade do pool de armazenamento?

Ou os SSDs apenas farão parte do pool de dados e nenhum benefício de desempenho será concedido?

    
por Markaway 04.01.2013 / 14:52

4 respostas

13

Isso, de certo modo, estende a resposta de TiernanO - eu me esforcei para encontrar uma boa base detalhada sobre tudo isso, então eu pensei em escrever bem para todos:

Os SSDs podem ser usados para acelerar seus pools, mas só funcionam em determinadas situações e há várias condições que devem ser seguidas.

Em primeiro lugar, você não pode simplesmente adicionar SSDs a um pool existente e esperar que ele acelere seu sistema. Na verdade, se você está misturando SSDs com HDDs no mesmo pool, você está basicamente desperdiçando os SSDs porque cada um dos seus arquivos é dividido em outros discos, então metade do seu arquivo pode estar em um SSD e a outra metade em o HDD - então você ainda precisará esperar que o HDD gire e busque os dados antes que eles possam realmente ser usados pelo seu computador, mesmo que o SSD tenha encontrado a primeira metade dos dados há muito tempo. [isso é uma simplificação excessiva, na verdade, os dados são divididos em discos diferentes em um nível de bloco, não em um nível de arquivo]

Então, você provavelmente não quer misturar SSDs e HDDs no mesmo disco virtual - ter pools compostos apenas de HDDs ou somente SSDs, não de ambos. Aliás, não há problema em tê-los no mesmo conjunto de armazenamento, apenas não trabalhando no mesmo disco virtual.

Agora, voltando à sua pergunta - sim, é possível usar SSDs para acelerar as coisas usando o recurso 'journaling' do Storage Space - mas há algumas condições:

  1. Você deve estar usando um disco virtual com uma configuração de resiliência de 'Paridade', os discos de diário não podem ser usados com os discos virtuais 'Simples' ou 'Espelho'
  2. Você deve ter pelo menos dois SSDs - não é possível substituir isso (em segundo plano, eles são configurados como um Mirror Space em si, caso um deles falhe)
  3. Todo o espaço no SSD deve ser dedicado ao registro no diário, você não poderá usar nenhum dos SSDs para armazenar dados
  4. Nada disso pode ser configurado na interface do usuário do Windows no Windows 8 ou Server 2012 - você precisa fazer isso manualmente usando o PowerShell
  5. Se você aumentou manualmente o número de espaços de paridade em seu pool, deverá aumentar igualmente o número de discos de diário (por exemplo, se estiver usando o espaço de paridade padrão 1, precisará de 2 SSDs. 2 espaços de paridade, você precisa de 4 SSDs, etc.).
  6. Pode ser óbvio, mas adicionar discos do Journal apenas aumenta as velocidades de gravação de dados no disco virtual - as velocidades de leitura de dados não serão afetadas

Supondo que você esteja satisfeito com essas restrições, veja o que você precisará fazer em uma janela elevada do PowerShell:

Para este exemplo, estou supondo que você ainda não criou seu pool de armazenamento ou discos virtuais - se você tiver um conjunto existente, modifique as instruções de acordo.

# See what disks you've got available so you can set the below variables
Get-StoragePool -IsPrimordial $true | Get-PhysicalDisk '
    | Where-Object CanPool -eq $True

# Tell Windows which disk is a traditional HDD and which is an SSD
$HDDs = "PhysicalDisk1", "PhysicalDisk2", "PhysicalDisk3"
$SSDs = "PhysicalDisk4", "PhysicalDisk5"

# Create a new storage pool (these are fairly default options)
New-StoragePool -FriendlyName "Your Storage Pool" '
    -PhysicalDisks (Get-PhysicalDisk $HDDs) '
    -StorageSubSystemFriendlyName "Storage Spaces*" '
    -ResiliencySettingNameDefault Parity

# Add in your two (or more) Journal disks
Add-PhysicalDisk -StoragePoolFriendlyName "Your Storage Pool" '
    -PhysicalDisks (Get-PhysicalDisk $SSDs) -Usage Journal

# Create the virtual disk and get it ready for use
New-VirtualDisk -FriendlyName "Parity Protected & Journaled Data" '
    -StoragePoolFriendlyName "Your Storage Pool" -NumberOfColumns 3 '
     -ProvisioningType Thin -ResiliencySettingName Parity -Size 2TB '
    | Initialize-Disk -PassThru -PartitionStyle MBR '
    | New-Partition -AssignDriveLetter -UseMaximumSize '
    | Format-Volume -FileSystem NTFS '
        -NewFileSystemLabel "Parity Protected & Journaled" -Confirm:$false

Agora você pode verificar tudo funcionou usando Get-PhysicalDisk :

FriendlyName  CanPool OperationalStatus HealthStatus Usage            Size
------------  ------- ----------------- ------------ -----            ----
PhysicalDisk1 False   OK                Healthy      Auto-Select  10.25 GB
PhysicalDisk2 False   OK                Healthy      Auto-Select  10.25 GB
PhysicalDisk3 False   OK                Healthy      Auto-Select  10.25 GB
PhysicalDisk4 False   OK                Healthy      Journal      10.25 GB
PhysicalDisk5 False   OK                Healthy      Journal      10.25 GB

Fontes:

por 18.03.2013 / 14:11
4

Acho que isso foi aprimorado no Windows server 2012 r2 .

  • Cache de write-back

Os Espaços de Armazenamento podem usar unidades de estado sólido existentes no pool de armazenamento para criar um cache write-back tolerante a falhas de energia e que armazena pequenas gravações aleatórias em unidades de estado sólido antes de gravá-las posteriormente em discos rígidos. / p>

  • Qual valor essa alteração adiciona?

Pequenas gravações aleatórias geralmente dominam cargas de trabalho corporativas comuns e podem afetar o desempenho de outras transferências de dados que estão ocorrendo. Usando drives de estado sólido (que são excelentes em acesso aleatório) para um cache write-back, os Espaços de Armazenamento podem reduzir a latência das gravações aleatórias e também reduzir significativamente qualquer impacto no desempenho de outras transferências de dados.

  • O que funciona de maneira diferente?

O cache de write-back é transparente para administradores e usuários e é criado em todos os novos discos virtuais se houver um número suficiente de unidades de estado sólido no pool de armazenamento, conforme determinado pelos seguintes requisitos para o armazenamento associado espaço:

  1. Espaços simples requerem uma unidade de estado sólido
  2. Espaços espelhados bidirecionais e espaços de paridade única requerem duas unidades de estado sólido
  3. Espaços espelhados tridirecionais e espaços de paridade dupla requerem três unidades de estado sólido

O cache de write-back funciona com todos os tipos de espaços de armazenamento, incluindo espaços de armazenamento com camadas de armazenamento.

Os espaços de armazenamento recém-criados usam automaticamente um cache de write-back de 1 GB por padrão quando o pool de armazenamento contém discos físicos suficientes com o MediaType definido como SSD ou Uso definido como Journal para suportar a configuração de resiliência especificada. Se não houver discos físicos suficientes com essas configurações, o tamanho do cache de write-back será definido como 0, exceto para espaços de paridade, quando estiver definido como 32 MB.

    
por 08.11.2013 / 04:50
3

Depende mesmo. Há pelo menos quatro maneiras de você utilizar SSDs em uma configuração mista, ou seja, quando há dois HDDs e SSDs:

  • Você pode simplesmente adicionar todos eles cegamente à piscina. Isso não faz sentido algum, porque os dados se espalharão aleatoriamente pelos seus discos, não importando o quanto sejam intensivos em gravação. Nota: esta é a configuração padrão, claro.
  • Você pode usar os SSDs para registro no diário com espaços de paridade (RAID5 / 6), ou seja, armazenamento em cache durante gravações. Isso eu recomendaria sinceramente se os espaços de paridade não fossem tão difíceis. Não, realmente, é ruim, evite a todo custo. Para espaços espelhados, um diário dedicado é inútil, pois não há paridade envolvida, apenas uma cópia 1: 1.
  • Você pode configurar o armazenamento hierárquico e permitir que o Windows mova automaticamente os dados acessados com frequência para os SSDs mais rápidos. Isso pode funcionar decentemente, mas é realmente difícil fazer benchmark, então não posso dizer se é bom ou ruim.
  • Você também pode criar dois arrays separados, colocar os 2 SSDs em um espelho bidirecional para arquivos de programa e outros materiais intensivos em gravação e colocar os 4 HDDs em outro espelho bidirecional para todo o resto. Este é o que eu recomendo para você.

Se você está curioso para saber porque eu estou tão confiante, é porque eu passei algumas semanas (não estou brincando) testando o inferno fora dos Storage Spaces. Confira minha série de benchmarking detalhada para todos os números que retornam minhas declarações:

  • Análise de desempenho dos espaços de armazenamento - Parte 1
  • Análise de desempenho dos espaços de armazenamento - parte 2
  • Análise de desempenho de espaços de armazenamento - parte 3

Felicidades.

    
por 09.10.2015 / 23:54
2

Há muito pouca documentação sobre isso, mas eu li em algum lugar que o Storage Spaces tem a opção de adicionar um disco a um pool para registro no diário. Não consigo encontrar o artigo original, mas se você olhar para o cmdlet Add-PhysicalDisk , em Uso , há uma opção para o Journal ... Quando eu li sobre isso, o cara mencionou que ele usou um SSD como um disco de diário, e adicionou a um pool de 8 drives de 2Tb, e ler e escrever aumentou em 40 +%. .. Sua milhagem pode variar, mas pode valer a pena um tiro ...

Como opção de terceiros, você também pode querer dar uma olhada em FancyCache . Você pode usar memória e SSDs como um cache para sua mídia mais lenta. Eu usei isso antes, e funcionou bem, só não tive a chance de re-instalar desde a mudança para o Server 2012 ...

    
por 06.02.2013 / 11:23