HDFSはHadoop分散ファイルシステムです。これはHadoopのコアコンポーネントの1つであり、最下位レベルの分散ストレージサービスとして存在します。
HDFSは、マスターとスレーブの構造を使用してクラスターを管理します。通常、HDFSクラスターは、1つのNamenodeと特定の数のDatanodeのみで構成されます。NamenodeはHDFSクラスターのマスターノードで、DatanodeはHDFSクラスターのスレーブノードです。2つの役割がそれぞれの役割を果たし、調整されます。分散ファイルストレージサービス。
NameNode(マスター)マネージャーのみが管理を行い、クラスター内の各ノードを管理します。
SecondaryNameNode補助管理のみ。補助NameNode管理を担当します。
DataNode(スレーブ)ワーカーは、自分の作業、NameNodeへの定期的なレポート、およびデータの読み取りと書き込みを担当します。
NameNodeは、ファイルシステム全体のメタデータと各パス(ファイル)に対応するデータブロック情報を管理します。
DataNodeはユーザーのファイルデータブロックの管理を担当し、各データブロックは複数のデータノードに複数のコピーを保存できます。
セカンダリNameNodeは、HDFSのステータスを監視し、HDFSメタデータのスナップショットを定期的に取得するために使用される補助デーモンです。主な機能は、ネームノードがメタデータ情報を管理するのを支援することです
HDFSストレージは、ファイルをストレージ用のブロックブロックに抽象化し、すべてのファイルを同等に扱い、均一なブロックサイズの形式で保存します。ブロックサイズは128Mです。
hdfs-site.xmlから変更することもできます。
<name>dfs.block.size</name>
<value>块大小 以字节为单位</value>//只写数值就可以
</property>
HDFSにアップロードするファイルサイズが100Mの場合、数ブロックを占有します。余分な28Mをどうすればよいですか?
実際、128は単なる数値です。128Mを超える場合は分割されます。128Mを超えない場合は分割する必要はありません。128M未満の場合も同様に高速です。このファストのサイズは100Mであり、残りの28Mの概念はありません。
ブロックに抽象化されたHDFSの利点:
ファイルは、クラスター内のどのディスクよりも
20T / 128 = xxxブロック大きい場合があります。これらのブロックブロックはファイルに属しています。ファイルの
代わりにブロック抽象化を使用すると、ストレージサブシステムを簡略化できます。
ブロックは、データのフォールトトレランスと可用性の
HDFSコピーメカニズムを提供するデータバックアップに非常に適しています。
HDFSはハードウェアエラーを通常と見なし、ハードウェアサーバーはいつでも障害を起こす可能性があります。フォールトトレランスのために、ファイルのすべてのブロックにコピーがあり、通常はデフォルトで1つです。
hdfs-site.xmlの次の構成プロパティを変更して、ファイルのコピー数を変更します
<name>dfs.replication</name>
<value>3</value>