web-dev-qa-db-ja.com

ストレージスペース-SSDとHDDを組み合わせる

本当に情報が見つからないので、誰かが光を当ててくれることを願っています。

Windows 8 Proの新しいコピーをインストールしました。 4つの内部HDDと2つの内部SSDのストレージスペースを使用したいと思います。 Windows 8はSSDを特別な方法(キャッシュなど)で利用して、ストレージプールの速度を向上させますか?

または、SSDはデータのプールの一部にすぎず、パフォーマンス上のメリットはありませんか?

8
Markaway

これは、TiernanOの答えをいくらか拡張します-私はこのすべてについての詳細な背景を見つけるのに苦労しました。

SSDを使用してプールを高速化できますが、SSDは特定の状況でのみ機能し、遵守しなければならないいくつかの条件があります。

まず、既存のプールにSSDを追加するだけでは、システムの高速化が期待できません。実際、同じプール内でSSDとHDDを混在させている場合、各ファイルが他のディスクに分割されるため、基本的にSSDを無駄にしているため、ファイルの半分がSSDにあり、残りの半分がHDD-したがって、SSDがデータの前半をかなり前に検出した場合でも、HDDがスピンアップしてデータをシークしてから実際にコンピューターで使用できるようになるまで、待機する必要があります。 [これは単純化しすぎです。実際、データはファイルレベルではなく、ブロックレベルで異なるディスクに分割されます]

したがって、同じ仮想ディスク内でSSDとHDDを混在させたくない場合があります。プールは、HDDのみ、またはSSDのみで構成し、両方で構成することはできません。ちなみに、同じ仮想ディスクではなく、同じストレージプールに配置しても問題ありません。

さて、あなたの質問に戻りましょう-はい、SSDを使用してStorage Spaceの「ジャーナリング」機能を使用することで物事をスピードアップすることは可能です-しかしいくつかの条件があります:

  1. 復元性設定が「パリティ」の仮想ディスクを使用している必要があります。ジャーナルディスクは「シンプル」または「ミラー」仮想ディスクでは使用できません
  2. 少なくとも2つのSSDが必要です-これを上書きすることはできません(バックグラウンドでは、1つが失敗した場合、それらはそれ自体でミラースペースとして構成されます)
  3. SSDのすべてのスペースをジャーナリング専用にする必要があります。データの保存にどちらのSSDも使用できません。
  4. Windows 8またはServer 2012のWindowsのUIからこれを構成することはできません-PowerShellを使用して手動で行う必要があります
  5. プール内のパリティスペースの数を手動で増やした場合は、ジャーナルディスクの数も同様に増やす必要があります(たとえば、デフォルトの1パリティスペースを使用している場合は、2 SSDが必要です。2パリティスペースがある場合、4つのSSDなどが必要です)。
  6. 当たり前かもしれませんが、ジャーナルディスクを追加しても、仮想ディスクへのデータ書き込みの速度が上がるだけです-データの読み取り速度は影響を受けません

これらの制限に満足している場合、管理者特権のPowerShellウィンドウで次のことを行う必要があります。

この例では、ストレージプールまたは仮想ディスクをまだ作成していないと想定しています-既存のセットがある場合は、手順を適切に変更してください

# 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

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

出典:

13
Alan Isherwood

Windows server 2012 r2 では改善されていると思います。

  • ライトバックキャッシュ

記憶域スペースは、記憶域プール内の既存のソリッドステートドライブを使用して、電源障害を許容し、後でハードディスクドライブに書き込む前に、ソリッドステートドライブへの小さなランダムな書き込みをバッファーするライトバックキャッシュを作成できます。

  • この変更はどのような価値をもたらしますか?

小さなランダム書き込みは、一般的なエンタープライズワークロードを支配していることが多く、実行中の他のデータ転送のパフォーマンスに影響を与える可能性があります。ストレージスペースは、ライトバックキャッシュにソリッドステートドライブ(ランダムアクセスではExcel)を使用することにより、ランダム書き込みの待ち時間を削減し、他のデータ転送のパフォーマンスへの影響を大幅に削減できます。

  • 何が違うのですか?

ライトバックキャッシュは管理者とユーザーに対して透過的であり、ストレージプールに十分な数のソリッドステートドライブがある場合、関連するストレージスペースの以下の要件によって決定されるように、すべての新しい仮想ディスクに作成されます。

  1. シンプルなスペースには1つのソリッドステートドライブが必要
  2. 双方向ミラースペースとシングルパリティスペースには2つのソリッドステートドライブが必要
  3. 3方向ミラースペースとデュアルパリティスペースには3つのソリッドステートドライブが必要

ライトバックキャッシュは、ストレージ階層のあるストレージスペースを含む、すべてのタイプのストレージスペースで機能します。

MediaTypeがSSDに設定されているか、UsageがJournalに設定されている十分な物理ディスクがストレージプールに含まれている場合、新しく作成されたストレージスペースは、デフォルトで1 GBのライトバックキャッシュを自動的に使用して、指定された復元力設定をサポートします。これらの設定で十分な物理ディスクがない場合、32 MBに設定されている場合、ライトバックキャッシュサイズはパリティスペースを除いて0に設定されます。

5
alonsomh

それは本当に依存します。 SSDを混合セットアップで使用する方法は少なくとも4つあります。つまり、HDDとSSDの両方がある場合です。

  • それらをすべて盲目的にプールに追加できます。書き込みがどれほど集中していても、データはディスク全体にランダムに分散されるため、これはまったく意味がありません。注:もちろん、これはデフォルト設定です。
  • SSDを使用して、パリティ(RAID5/6)スペースでのジャーナリング、つまり書き込み中のキャッシングを行うことができます。これは、パリティスペースがそれほど難しくない場合は、心からお勧めします。いいえ、本当に、それは悪いです、絶対に避けてください。ミラーリングされたスペースの場合、パリティは含まれていないため、専用のジャーナルは役に立ちません。1:1のコピーだけです。
  • 階層型ストレージを設定して、頻繁にアクセスされるデータをWindowsがより高速なSSDに自動的に移動できるようにすることができます。これはきちんと機能するかもしれませんが、ベンチマークするのは本当に難しいので、それが良いか悪いかは言えません。
  • また、2つの個別のアレイを作成し、2つのSSDをプログラムファイルやその他の書き込み集中型の2ウェイミラーに配置し、4つのHDDをその他すべての2ウェイミラーに配置することもできます。これは私があなたにお勧めするものです。

なぜ私がそんなに自信があるのか​​気になるなら、それは私が数週間(冗談ではなく)記憶域の地獄のテストに費やしたからです。私のステートメントを裏付けるすべての数値について、私の詳細なベンチマークシリーズをチェックしてください。

乾杯。

3
bviktor

これに関するドキュメントはほとんどありませんが、記憶域スペースにはジャーナリング用のプールにディスクを追加するオプションがあることをどこかで読みました。元の記事は見つかりませんが、 Add-PhysicalDisk コマンドレットを見ると、[使用法]に[ジャーナル]のオプションがあります。それについて読むと、彼はSSDをジャーナルディスクとして追加し、8個の2Tbドライブのプールに追加して、読み取りと書き込みを40 +%増加しました...

サードパーティのオプションとして、 FancyCache を確認することもできます。メモリとSSDを低速メディアのキャッシュとして使用できます。私は以前にそれを使用しました、そしてそれはうまくいきました、Server 2012に移動して以来、再インストールする機会がありませんでした...

2
TiernanO