はじめに
Hadoop は、大規模データセットの分散ストレージと処理のための人気のあるオープンソースフレームワークです。このチュートリアルでは、Hadoop クラスタのコアコンポーネントである Hadoop NameNode と DataNode サービスを起動する手順を案内します。この記事の最後まで読むと、Hadoop インフラストラクチャを起動して実行する方法をしっかりと理解できるようになります。
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
Hadoop は、大規模データセットの分散ストレージと処理のための人気のあるオープンソースフレームワークです。このチュートリアルでは、Hadoop クラスタのコアコンポーネントである Hadoop NameNode と DataNode サービスを起動する手順を案内します。この記事の最後まで読むと、Hadoop インフラストラクチャを起動して実行する方法をしっかりと理解できるようになります。
Hadoop は、大規模データセットの分散ストレージと処理のためのオープンソースフレームワークです。単一のサーバから数千台のマシンまで拡張可能で、それぞれがローカルのコンピューティングとストレージを提供します。Hadoop は、Google File System (GFS) と MapReduce プログラミングモデルに基づいています。
Hadoop は、2 つの主要なコンポーネントで構成されています。
Hadoop Distributed File System (HDFS):HDFS は、アプリケーションデータに高スループットでアクセスできる分散ファイルシステムです。汎用ハードウェア上で動作するように設計されており、耐障害性、高可用性、および拡張性を備えています。
Hadoop MapReduce:Hadoop MapReduce は、大量のデータを大規模なコンピュートノードクラスタ上で並列に高速処理するアプリケーションを作成するためのプログラミングモデルおよびソフトウェアフレームワークです。
Hadoop はマスター - スレーブアーキテクチャに従っており、マスターノードはクラスタの管理を担当し、スレーブノードはタスクの実行を担当します。
Hadoop は、さまざまな業界やアプリケーションで広く使用されており、以下が含まれます。
Ubuntu 22.04 に Hadoop をインストールするには、以下の手順に従ってください。
sudo apt-get update
sudo apt-get install openjdk-11-jdk hadoop
export HADOOP_HOME=/usr/lib/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
これで Hadoop の基本的な知識がわかったので、次は NameNode と DataNode サービスの起動に移りましょう。
NameNode は Hadoop クラスタのマスターノードで、ファイルシステムの名前空間を管理する責任を持っています。これには、ファイルやディレクトリの開閉、名前の変更などが含まれます。また、ブロックと DataNode のマッピングを決定します。
NameNode を起動するには、以下の手順に従ってください。
hdfs namenode -format
hadoop-daemon.sh start namenode
http://localhost:9870
のウェブインターフェイスを確認することで、NameNode が実行中であることを確認できます。
NameNode の設定は、$HADOOP_HOME/etc/hadoop/core-site.xml
と $HADOOP_HOME/etc/hadoop/hdfs-site.xml
ファイルに保存されています。
以下は設定の例です。
<!-- core-site.xml -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/path/to/namenode/data</value>
</property>
</configuration>
これらの設定では、デフォルトのファイルシステムを HDFS に、レプリケーションファクタを 3 に、NameNode のデータディレクトリの場所を設定しています。
これで NameNode が起動して実行されているので、次は DataNode サービスの起動に移りましょう。
DataNode は Hadoop クラスタのスレーブノードで、データブロックの保存と管理を担当します。NameNode と通信して、利用可能なブロックのリストを報告し、データのレプリケーションやブロック管理の指示を受け取ります。
DataNode を起動するには、以下の手順に従ってください。
hdfs datanode -format
hadoop-daemon.sh start datanode
http://localhost:9864
のウェブインターフェイスを確認することで、DataNode が実行中であることを確認できます。
DataNode の設定は、$HADOOP_HOME/etc/hadoop/hdfs-site.xml
ファイルに保存されています。
以下は設定の例です。
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/path/to/datanode/data</value>
</property>
</configuration>
この設定では、DataNode のデータディレクトリの場所を設定しています。
NameNode と DataNode が提供するウェブインターフェイスを使用して、Hadoop クラスタを監視できます。
http://localhost:9870
http://localhost:9864
これらのインターフェイスは、クラスタの状態、実行中のジョブ、およびリソースの利用状況に関する情報を提供します。
おめでとうございます!これで Hadoop NameNode と DataNode サービスを正常に起動しました。この知識を使って、Hadoop ベースのアプリケーションの構築と実行を開始できます。
Hadoop の NameNode と DataNode サービスの起動方法を習得することは、堅牢なビッグデータ処理環境を構築する上で重要なステップです。このチュートリアルでは、Hadoop の基本概念を説明し、これらの重要なサービスを起動する手順を段階的に解説しました。この知識を活かして、組織の増大するデータニーズに対応するために、自信を持って Hadoop クラスタをデプロイし管理することができます。