HDFS異機種ストレージ
8332 ワード
参照先:https://hadoop.apache.org/docs/r3.1.1/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html https://blog.csdn.net/androidlushangderen/article/details/51105876
紹介 ストレージ・タイプとストレージ・ポリシー ストレージタイプ:ARCHIVE、DISK、SSD、RAM_DISK ストレージポリシー:Hot,Warm,Cold,All_SSD,One_SSD,Lazy_PersistとProvided ストレージポリシー解析 構成 Mover-新しいデータ移動ツール ストレージポリシーコマンド コマンドヘルプ情報 ストレージポリシー を一覧表示ストレージポリシー を設定する.ストレージポリシー を取得する.ストレージポリシー の設定を解除する.
紹介する
Hot-ストレージおよび計算に使用されます.人気があり、まだ処理に使用されているデータは、このポリシーに保持されます.ブロックがHot状態の場合、すべてのコピーがDISkに格納されます. Cold-限られた計算にのみ使用されるストレージ.使用されなくなったデータまたはアーカイブが必要なデータは、ホットストレージからコールドストレージに移動します.ブロックがCold状態である場合、すべてのコピーはARCHIVEに格納される. Warm-部分的に熱く、部分的に冷たい.ブロックがホット状態にある場合、その一部のコピーはDISKに格納され、残りのコピーはARCHIVEに格納される. All_SSD-すべてのコピーをSSDに保存します. One_SSD-コピーの1つをSSDに保存します.残りのコピーはディスクに格納されます. Lazy_Persist-メモリに単一のコピーを持つblockを書き込むために使用します.コピーはまずRAM_に書きますDISKでは、その後、不活性にディスクに永続化されます. Provided-HDFS以外のデータを格納します.HDFS Provided Storageを参照してください.
より正式には、ストレージポリシーは次のフィールドで構成されます.ポリシーID ポリシー名 ブロック配置の記憶タイプリスト ファイル作成のフォールバックストレージタイプリスト コピーのロールバックストレージタイプリスト スペースが十分である場合、blockコピーは#3のストレージタイプリストに従って保存されます.#3の一部の記憶タイプが不足している場合、#4および#5で指定されたロールバック記憶タイプのリストを使用して、不足している記憶タイプを置き換えてファイルを作成およびコピーします.次は、典型的なストレージ・ポリシー・テーブルです.
Policy ID
Policy Name
Block Placement (n replicas)
Fallback storages for creation
Fallback storages for replication
15
Lazy_Persist
RAM_DISK: 1, DISK: n-1
DISK
DISK
12
All_SSD
SSD: n
DISK
DISK
10
One_SSD
SSD: 1, DISK: n-1
SSD, DISK
SSD, DISK
7
Hot (default)
DISK: n
ARCHIVE
5
Warm
DISK: 1, ARCHIVE: n-1
ARCHIVE, DISK
ARCHIVE, DISK
2
Cold
ARCHIVE: n
1
Provided
PROVIDED: 1, DISK: n-1
PROVIDED, DISK
PROVIDED, DISK
注意1:Lazy_Persistポリシーは、単一のコピーを格納するblocksにのみ使用されます.単一コピーを超えるblockの場合、すべてのコピーはDISKに書き込まれます.そのコピーの1つだけがRAM_に書き込まれるからです.DISKは全体的な性能を向上させるわけではない. 注意2:stripingレイアウトの削除符号化されたファイルに対して、適切なストレージポリシーはALL_SSD,Hot,Cold.ユーザーがstriped ECファイルに対して上記の他のストレージポリシーを設定している場合、ポリシーに従ってblockは作成および移動されません.
ディレクトリまたはファイルが作成されると、そのストレージポリシーは指定されません.ストレージポリシーは、「storagepolicies-setStoragePolicy」コマンドを使用して指定できます.ファイルまたはディレクトリの有効なストレージポリシーは、次のルールに従って解決されます.ストレージポリシーを使用してファイルまたはディレクトリを指定した場合は、それを返します. は、指定されていないファイルまたはディレクトリの場合、rootディレクトリの場合、デフォルトのストレージポリシーを返します.そうでなければ、親ディレクトリの有効なストレージポリシーが返されます.
有効なストレージポリシーは、「storagepolicies-getStoragePolicy」コマンドで取得できます.
dfs.storage.policy.Enabled-ストレージポリシーのプロパティを有効/無効にします.デフォルトはtrueで、有効になります. dfs.datanode.data.dir-DataNodeのデータ格納パス.カンマで区切られた格納場所には、その格納タイプを表すタグが使用されます. 格納場所/grid/dn/disk 0、格納タイプDISK、構成:[DISK]file:///grid/dn/disk0 格納場所/grid/dn/ssd 0、格納タイプSSD、構成:[SSD]file:///grid/dn/ssd0 格納場所/grid/dn/archive 0、格納タイプARCHIVE、構成:[ARCHIVE]file:///grid/dn/archive0 格納場所/grid/dn/ram 0、格納タイプRAM_DISK,構成:[RAM_DISK]file:///grid/dn/ram0
明示的なタグストレージタイプがない場合、デフォルトのストレージタイプはDISKです.
Mover-新しいデータ移動ツール
目次
紹介する
Archival Storageは、増加するストレージ容量とコンピューティング容量を分離するソリューションです.密度が高く、ストレージコストが低く、コンピューティング能力が低いノードが利用可能になり、クラスタ内でコールドストレージとして使用できます.ポリシーに従って、ホットデータはコールドデータに移動できます.コールドストレージにより多くのノードを追加すると、クラスタ内の計算容量とは独立してストレージを増加させることができる.Heterogeneous StorageとArchival Storageが提供するフレームワークは、SSDおよびメモリを含む他のタイプの記憶媒体を含むHDFSアーキテクチャを要約しています.ユーザーは、SSDまたはメモリにデータを格納してパフォーマンスを向上させることを選択できます.
ストレージ・タイプとストレージ・ポリシー
ストレージタイプ:ARCHIVE、DISK、SSD、RAM_DISK
異機種記憶(HDFS-2832)の第1段階は、1つの記憶(複数の物理記憶媒体に対応可能)から1つの記憶(1つの記憶媒体に対応可能)へのDataNodeの記憶モードの変更である.また、DISKがデフォルトのストレージタイプであるストレージタイプ、DISK、SSDの概念も追加されました. archival storageをサポートするために、高いストレージ密度(PB)と低いコンピューティング能力の特性を有する新しいストレージタイプARICHIVEが追加された.別の新しいメモリタイプRAM_DISKの増加は、メモリに単一のストレージコピーファイルを書き込むことをサポートするためです.
ストレージポリシー:Hot,Warm,Cold,All_SSD,One_SSD,Lazy_PersistとProvided
ストレージポリシーのこの新しい概念は、ストレージポリシーに基づいてファイルを異なるストレージタイプに格納するために導入された.現在、次のストレージポリシーがあります.
ストレージタイプ:ARCHIVE、DISK、SSD、RAM_DISK
異機種記憶(HDFS-2832)の第1段階は、1つの記憶(複数の物理記憶媒体に対応可能)から1つの記憶(1つの記憶媒体に対応可能)へのDataNodeの記憶モードの変更である.また、DISKがデフォルトのストレージタイプであるストレージタイプ、DISK、SSDの概念も追加されました. archival storageをサポートするために、高いストレージ密度(PB)と低いコンピューティング能力の特性を有する新しいストレージタイプARICHIVEが追加された.別の新しいメモリタイプRAM_DISKの増加は、メモリに単一のストレージコピーファイルを書き込むことをサポートするためです.
ストレージポリシー:Hot,Warm,Cold,All_SSD,One_SSD,Lazy_PersistとProvided
ストレージポリシーのこの新しい概念は、ストレージポリシーに基づいてファイルを異なるストレージタイプに格納するために導入された.現在、次のストレージポリシーがあります.
より正式には、ストレージポリシーは次のフィールドで構成されます.
Policy ID
Policy Name
Block Placement (n replicas)
Fallback storages for creation
Fallback storages for replication
15
Lazy_Persist
RAM_DISK: 1, DISK: n-1
DISK
DISK
12
All_SSD
SSD: n
DISK
DISK
10
One_SSD
SSD: 1, DISK: n-1
SSD, DISK
SSD, DISK
7
Hot (default)
DISK: n
ARCHIVE
5
Warm
DISK: 1, ARCHIVE: n-1
ARCHIVE, DISK
ARCHIVE, DISK
2
Cold
ARCHIVE: n
1
Provided
PROVIDED: 1, DISK: n-1
PROVIDED, DISK
PROVIDED, DISK
注意1:Lazy_Persistポリシーは、単一のコピーを格納するblocksにのみ使用されます.単一コピーを超えるblockの場合、すべてのコピーはDISKに書き込まれます.そのコピーの1つだけがRAM_に書き込まれるからです.DISKは全体的な性能を向上させるわけではない. 注意2:stripingレイアウトの削除符号化されたファイルに対して、適切なストレージポリシーはALL_SSD,Hot,Cold.ユーザーがstriped ECファイルに対して上記の他のストレージポリシーを設定している場合、ポリシーに従ってblockは作成および移動されません.
ストレージポリシーの解析
ディレクトリまたはファイルが作成されると、そのストレージポリシーは指定されません.ストレージポリシーは、「storagepolicies-setStoragePolicy」コマンドを使用して指定できます.ファイルまたはディレクトリの有効なストレージポリシーは、次のルールに従って解決されます.
有効なストレージポリシーは、「storagepolicies-getStoragePolicy」コマンドで取得できます.
コンフィギュレーション
明示的なタグストレージタイプがない場合、デフォルトのストレージタイプはDISKです.
Mover-新しいデータ移動ツール
HDFSは、データをアーカイブするための新しいデータ移行ツールを追加しました.このツールはBalancerに似ています.HDFS内のファイルを定期的にスキャンし、ブロックの場所がストレージポリシーを満たしているかどうかを確認します.ストレージポリシーに違反したブロックの場合、コピーは異なるストレージタイプに移動してストレージポリシーの要件を満たします.可能な限り、ブロックコピーは常に同じノード内で移動しようとします.これが不可能な場合(たとえば、あるノードにターゲットストレージタイプがない場合)、ブロックコピーはネットワークを介して別のノードにコピーされます.hdfs mover [-p | -f ]
オプション
意味
-p
移行するHDFSファイル/ディレクトリのスペース分割リストを指定します.
-f
移行するHDFSファイル/ディレクトリリストを含むローカルファイルを指定します.
-pと-fのオプションが省略されている場合、デフォルトのパスはrootディレクトリです.
ストレージポリシーコマンド
コマンドヘルプ情報
$ hdfs storagepolicies -help
[-listPolicies]
List all the existing block storage policies.
[-setStoragePolicy -path -policy ]
Set the storage policy to a file/directory.
The path of the file/directory to set storage policy
The name of the block storage policy
[-getStoragePolicy -path ]
Get the storage policy of a file/directory.
The path of the file/directory for getting the storage policy
[-unsetStoragePolicy -path ]
Unset the storage policy set for a file/directory.
The path of the file/directory from which the storage policy will be
unset.
HDFS storagepoliciesには4つの操作があります.[-listPolicies]
[-setStoragePolicy -path -policy ]
[-getStoragePolicy -path ]
[-unsetStoragePolicy -path ]
ストレージポリシーのリスト
使用可能なすべてのストレージポリシーのリストhdfs storagepolicies -listPolicies
使用例$ hdfs storagepolicies -listPolicies
Block Storage Policies:
BlockStoragePolicy{PROVIDED:1, storageTypes=[PROVIDED, DISK], creationFallbacks=[PROVIDED, DISK], replicationFallbacks=[PROVIDED, DISK]}
BlockStoragePolicy{COLD:2, storageTypes=[ARCHIVE], creationFallbacks=[], replicationFallbacks=[]}
BlockStoragePolicy{WARM:5, storageTypes=[DISK, ARCHIVE], creationFallbacks=[DISK, ARCHIVE], replicationFallbacks=[DISK, ARCHIVE]}
BlockStoragePolicy{HOT:7, storageTypes=[DISK], creationFallbacks=[], replicationFallbacks=[ARCHIVE]}
BlockStoragePolicy{ONE_SSD:10, storageTypes=[SSD, DISK], creationFallbacks=[SSD, DISK], replicationFallbacks=[SSD, DISK]}
BlockStoragePolicy{ALL_SSD:12, storageTypes=[SSD], creationFallbacks=[DISK], replicationFallbacks=[DISK]}
BlockStoragePolicy{LAZY_PERSIST:15, storageTypes=[RAM_DISK, DISK], creationFallbacks=[DISK], replicationFallbacks=[DISK]}
ストレージポリシーの設定
ファイルまたはディレクトリのストレージポリシーの設定hdfs storagepolicies -setStoragePolicy -path -policy
オプション
意味
-path
ディレクトリまたはファイルのパス
-policy
ストレージポリシーの名前
使用例$ hdfs storagepolicies -setStoragePolicy -path /data/lib -policy WARM
Set storage policy WARM on /data/lib
ストレージポリシーの取得
ファイルまたはディレクトリのストレージポリシーの取得hdfs storagepolicies -getStoragePolicy -path
オプション
意味
-path
ディレクトリまたはファイルのパス
使用例$ hdfs storagepolicies -getStoragePolicy -path /data/lib
The storage policy of /data/lib:
BlockStoragePolicy{WARM:5, storageTypes=[DISK, ARCHIVE], creationFallbacks=[DISK, ARCHIVE], replicationFallbacks=[DISK, ARCHIVE]}
ストレージポリシーの設定解除
ファイルまたはディレクトリのストレージポリシーの設定を解除します.unsetコマンドの後に、最近の祖先のストレージポリシーが適用され、どの祖先にもポリシーがない場合は、デフォルトのストレージポリシーが適用されます.hdfs storagepolicies -unsetStoragePolicy -path
オプション
意味
-path
ディレクトリまたはファイルのパス
使用例$ hdfs storagepolicies -unsetStoragePolicy -path /data/lib
Unset storage policy from /data/lib
$ hdfs storagepolicies -getStoragePolicy -path /data/lib
The storage policy of /data/lib is unspecified
hdfs mover [-p | -f ]
コマンドヘルプ情報
$ hdfs storagepolicies -help
[-listPolicies]
List all the existing block storage policies.
[-setStoragePolicy -path -policy ]
Set the storage policy to a file/directory.
The path of the file/directory to set storage policy
The name of the block storage policy
[-getStoragePolicy -path ]
Get the storage policy of a file/directory.
The path of the file/directory for getting the storage policy
[-unsetStoragePolicy -path ]
Unset the storage policy set for a file/directory.
The path of the file/directory from which the storage policy will be
unset.
HDFS storagepoliciesには4つの操作があります.
[-listPolicies]
[-setStoragePolicy -path -policy ]
[-getStoragePolicy -path ]
[-unsetStoragePolicy -path ]
ストレージポリシーのリスト
使用可能なすべてのストレージポリシーのリスト
hdfs storagepolicies -listPolicies
使用例
$ hdfs storagepolicies -listPolicies
Block Storage Policies:
BlockStoragePolicy{PROVIDED:1, storageTypes=[PROVIDED, DISK], creationFallbacks=[PROVIDED, DISK], replicationFallbacks=[PROVIDED, DISK]}
BlockStoragePolicy{COLD:2, storageTypes=[ARCHIVE], creationFallbacks=[], replicationFallbacks=[]}
BlockStoragePolicy{WARM:5, storageTypes=[DISK, ARCHIVE], creationFallbacks=[DISK, ARCHIVE], replicationFallbacks=[DISK, ARCHIVE]}
BlockStoragePolicy{HOT:7, storageTypes=[DISK], creationFallbacks=[], replicationFallbacks=[ARCHIVE]}
BlockStoragePolicy{ONE_SSD:10, storageTypes=[SSD, DISK], creationFallbacks=[SSD, DISK], replicationFallbacks=[SSD, DISK]}
BlockStoragePolicy{ALL_SSD:12, storageTypes=[SSD], creationFallbacks=[DISK], replicationFallbacks=[DISK]}
BlockStoragePolicy{LAZY_PERSIST:15, storageTypes=[RAM_DISK, DISK], creationFallbacks=[DISK], replicationFallbacks=[DISK]}
ストレージポリシーの設定
ファイルまたはディレクトリのストレージポリシーの設定
hdfs storagepolicies -setStoragePolicy -path -policy
オプション
意味
-path
ディレクトリまたはファイルのパス
-policy
ストレージポリシーの名前
使用例
$ hdfs storagepolicies -setStoragePolicy -path /data/lib -policy WARM
Set storage policy WARM on /data/lib
ストレージポリシーの取得
ファイルまたはディレクトリのストレージポリシーの取得
hdfs storagepolicies -getStoragePolicy -path
オプション
意味
-path
ディレクトリまたはファイルのパス
使用例
$ hdfs storagepolicies -getStoragePolicy -path /data/lib
The storage policy of /data/lib:
BlockStoragePolicy{WARM:5, storageTypes=[DISK, ARCHIVE], creationFallbacks=[DISK, ARCHIVE], replicationFallbacks=[DISK, ARCHIVE]}
ストレージポリシーの設定解除
ファイルまたはディレクトリのストレージポリシーの設定を解除します.unsetコマンドの後に、最近の祖先のストレージポリシーが適用され、どの祖先にもポリシーがない場合は、デフォルトのストレージポリシーが適用されます.
hdfs storagepolicies -unsetStoragePolicy -path
オプション
意味
-path
ディレクトリまたはファイルのパス
使用例
$ hdfs storagepolicies -unsetStoragePolicy -path /data/lib
Unset storage policy from /data/lib
$ hdfs storagepolicies -getStoragePolicy -path /data/lib
The storage policy of /data/lib is unspecified