個人財務 NameNodeのデータブロックをHDFSのダミーに記録する -

NameNodeのデータブロックをHDFSのダミーに記録する -

目次:

ビデオ: HDFS - Intro to Hadoop and MapReduce 2024

ビデオ: HDFS - Intro to Hadoop and MapReduce 2024
Anonim

NameNodeはHadoop分散ファイルシステム(HDFS)のアドレス帳として機能します。どのブロックが個々のファイルを構成するのかだけでなく、これらのブロックとそれぞれの複製がどこに格納されるのかを示します。ユーザがHDFSにファイルを保存すると、ファイルはデータブロックに分割され、これらのデータブロックの3つのコピーがHadoopクラスタ全体のスレーブノードに格納されます。

これは、追跡しなければならない多くのデータブロックです。ご想像のとおり、身体がどこに埋め込まれているかを知ることで、HadoopクラスタではNameNodeが非常に重要な要素になります。 NameNodeが利用できない場合、アプリケーションはHDFSに格納されたデータにアクセスできません。

<! - 1 - >

次の図を見てみると、マスターノードサーバー上で実行されているNameNodeデーモンが表示されます。データブロックおよびそれらに対応するファイルを扱うすべてのマッピング情報は、名前付きファイルに格納されます。

HDFSはジャーナリングファイルシステムです。つまり、最後の チェックポイント (編集ログをマージした最後の時刻)以降のイベントを追跡する編集ジャーナルにデータ変更が記録されます。 HDFSでは、編集ジャーナルはNameNodeに保存されているファイルに保存されます。

- >

NameNodeの起動と操作

NameNodeの仕組みを理解するには、起動方法を見ておくと役に立ちます。 NameNodeの目的は、処理する必要があるデータブロックの数と格納先の正確な場所を追跡するためにアプリケーションに通知することであるため、すべてのブロック位置とブロックからファイルへのマッピングが必要ですRAM。

これはNameNodeが取るステップです。 NameNodeが起動後に必要とするすべての情報をロードするには、次のようになります。

<! - 3 - >
  1. NameNodeはファイルをメモリにロードします。

  2. NameNodeはファイルをロードし、ジャーナリングされた変更を再実行して、すでにメモリにあるブロックメタデータを更新します。

  3. DataNodeデーモンはNameNodeブロックレポートを送信します。

    各スレーブノードには、そこに格納されているすべてのデータブロックをリストし、それぞれの健全性を記述するブロックレポートがあります。

起動プロセスが完了すると、NameNodeにはHDFSに保存されているすべてのデータが完全に表示され、Hadoopクライアントからアプリケーション要求を受け取る準備が整います。

クライアント要求に基づいてデータファイルが追加および削除されると、変更がスレーブノードのディスクボリュームに書き込まれ、ファイルへのジャーナル更新が行われ、変更がNameNodeのメモリに格納されたブロックの場所とメタデータに反映されます。

クラスタの存続期間中、DataNodeデーモンは3秒ごとにNameNodeハートビート(クイックシグナル)を送信し、それらがアクティブであることを示します。(このデフォルト値は設定可能です)6時間ごと(設定可能なデフォルト値)、DataNodeはNameNodeを送信します。ブロックレポートは、ノード上にあるファイルブロックの概要を示します。このようにして、NameNodeには常にクラスタ内の使用可能なリソースの現在のビューがあります。

データの書き込み

HDFSで新しいファイルを作成するには、次のプロセスを実行する必要があります。

  1. クライアントはNameNodeに新しいファイルを作成する要求を送信します。

    NameNodeは必要なブロック数を決定し、クライアントはクラスタ内にこれらの新しいファイルブロックを作成するために リース を与えられます。このリースの一環として、クライアントには作成タスクを完了するための時間制限があります。 (この時間制限は、ストレージスペースが失敗したクライアントアプリケーションによって占有されないようにします)。クライアントは、NameNodeによって割り当てられたリースを使用して、ファイルブロックの最初のコピーをスレーブノードに書き込みます。

  2. NameNodeは書き込み要求を処理し、可用性とパフォーマンスのバランスをとって、ファイルブロックとその複製を書き込む必要がある場所を決定します。ファイルブロックの最初のコピーは1つのラックに書き込まれ、2番目と3番目のコピーは最初のコピーとは別のラックに書き込まれますが、同じラック内の異なるスレーブノードに書き込まれます。この構成は、同じ障害ポイントにデータブロックが存在しないことを保証しながら、ネットワークトラフィックを最小限に抑えます。

    各ブロックがHDFSに書き込まれると、特別なプロセスによって残りのレプリカがNameNodeによって識別される他のスレーブノードに書き込まれます。

  3. DataNodeデーモンがファイルブロックの複製が作成されたことを確認した後、クライアントアプリケーションはファイルを閉じ、NameNodeに通知して、開いたリースを閉じます。

  4. データの読み込み

HDFSからファイルを読み込むには、次のプロセスを実行する必要があります。

クライアントがNameNodeにファイルを要求します。

  1. NameNodeは、どのブロックが関与しているかを決定し、ブロック間の全体的近接度およびクライアントにとって最も効率的なアクセスパスに基づいて選択します。

    クライアントは、NameNodeで指定されたアドレスを使用してブロックにアクセスします。

  2. Hadoopクラスタのデータのバランスをとる

時間の経過とともに、不均一なデータ取り込みパターン(スレーブノードのデータが多く書き込まれる可能性がある)やノードの障害の組み合わせにより、データがラック全体に偏在しやすくなりますHadoopクラスタ内のスレーブノードとの間で通信を行います。

個々のスレーブノードに対する需要が不均衡になるため、この不均一な分布はパフォーマンスに悪影響を及ぼす可能性があります。データの少ないノードは完全には使用されません。ブロックが多いノードは過度に使用されます。 (

は、CPUやRAMではなく、ディスクのアクティビティに基づいています。)

HDFSには、過負荷のスレーブノードのブロックを使用しないスレーブノードから再分配するバランサユーティリティが含まれています。異なるスレーブノードとラック上のブロックHadoop管理者は定期的にHDFSの状態をチェックし、データが不均一に分散した場合は、バランサユーティリティを呼び出す必要があります。

NameNodeマスターサーバー設計

NameNodeデーモンを実行しているマスターサーバーは、ミッションクリティカルな性質のため、スレーブノードとは異なるハードウェア要件を必要とします。最も重要なのは、エンタープライズレベルのコンポーネントを使用して、停止の可能性を最小限に抑える必要があることです。また、HDFSに保存されているすべてのデータブロックに関するすべてのメタデータとロケーションデータをメモリにロードするのに十分なRAMが必要です。

NameNodeのデータブロックをHDFSのダミーに記録する -

エディタの選択

自転車の点検チェックリスト - ダミー

自転車の点検チェックリスト - ダミー

すぐに自転車の点検をするために数分。あなたの自転車を一時的に与えることは、あなたの次の乗り心地の安全性、快適性、そして楽しさを高めることができます。乗車準備の一環として、次の手順に従ってください:車輪のクイックリリースレバーを開閉して、確認します。

必須サイクリング用具 - ダミー

必須サイクリング用具 - ダミー

あなたはバイクの乗り心地をさらに楽しくするために何百万ものものを買うことができます。自転車用に必要なアクセサリーをいくつかご紹介します。ヘルメット:ヘルメットを着用することはオーストラリアとニュージーランドの法律です。

自転車の範囲を閲覧可能 - ダミー

自転車の範囲を閲覧可能 - ダミー

あなたはサイクリングをすることに決めましたが、その重要なキットを欠いている - バイク!あなたが望む自転車のタイプを正確に知っていない限り、良いアドバイスは、あなたの時間を費やして、自転車で何をするのか、どこに乗るのかを本当に考えてみることです。

エディタの選択

アプリとプライバシー - ダミーを特定する

アプリとプライバシー - ダミーを特定する

Spotifyアプリケーションに登録すると、あなたの個人的な詳細の一部にアクセスする。たとえば、Top10アプリを使用してプレイリストを公開するには、既存のFacebookアカウントにリンクする必要があります。このプロセス中、Facebookはあなたに特定の種類の共有を許可するかどうか尋ねます。

モバイル対応携帯電話を識別する - ダミー

モバイル対応携帯電話を識別する - ダミー

SpotifyモバイルはiPhoneで最も人気がありますが、優れたAndroidバージョン(basks Androidマーケットの5つ星評価のうち5つの評価では5位に入っています)が急速に追いついています。

特集 - ダミー

特集 - ダミー

スポットメイキングは、モバイルでも、あらゆる音楽への普遍的な即時アクセスを可能にしますデバイスまたはデスクトップコンピュータ。 Facebookは人々が古い友達と再会して新しい友達を作るのを助け、Spotifyの助けを借りて青春の歌を再発見し、友人や検索を通じて新鮮な音楽を発見しました。

エディタの選択

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSは、動作がオブジェクトに関連付けられているプログラムを設計するさまざまな方法です。説明するために、紅茶とスープの作り方を検討することを検討してください。しかし、即座に代わりに活動に飛び込んではいけません。探偵が犯罪現場に入るように行動してください。

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

このセクションでは、MPMoviePlayerViewControllerクラスの高レベル抽象化を使用してiOSアプリケーションでビデオを再生する方法を説明します。 - (IBAction)playVideo:(id)sender {MPMoviePlayerViewController * moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];このコードは、ビデオビューコントローラ内のTTTVideoViewControllerファイルからです。 [self presentMoviePlayerViewControllerAnimated:moviePlayer];}シンプルさ自体!必要なのはURLです。

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

JavaScript Object Notation (JSON)はiOSアプリのデータを表現する上で事実上の標準になっています。 JSONを使用して、Web上でデータを転送したり、長期保存データを保存および取得するためのフォーマットとして使用することができます。 JSONは、人間が読める形式であり、マシンが理解しやすい形式です。 JSONのデータは1つにまとめることができます...