hadoop チュートリアル
hadoopを使い始める
サーチ…
備考
Apache Hadoopとは何ですか?
Apache Hadoopソフトウェアライブラリは、単純なプログラミングモデルを使用して多数のコンピュータクラスタにわたって大規模なデータセットを分散処理するためのフレームワークです。単一のサーバーから数千のマシンにスケールアップされ、それぞれがローカルの計算とストレージを提供するように設計されています。ライブラリは高可用性を実現するためにハードウェアに頼るのではなく、アプリケーション層で障害を検出して処理するように設計されているため、障害の発生しやすいコンピュータクラスタ上で高可用性サービスを提供します。
Apache Hadoopには、次のモジュールが含まれています。
- Hadoop Common :他のHadoopモジュールをサポートする一般的なユーティリティ。
- Hadoop分散ファイルシステム(HDFS) :アプリケーションデータへのハイスループットアクセスを提供する分散ファイルシステム。
- Hadoop YARN :ジョブスケジューリングとクラスタリソース管理のためのフレームワーク。
- Hadoop MapReduce :大規模データセットの並列処理用のYARNベースのシステム。
参照:
バージョン
バージョン | リリースノート | 発売日 |
---|---|---|
3.0.0-alpha1 | 2016-08-30 | |
2.7.3 | ここをクリック - 2.7.3 | 2016-01-25 |
2.6.4 | ここをクリック - 2.6.4 | 2016-02-11 |
2.7.2 | ここをクリック - 2.7.2 | 2016-01-25 |
2.6.3 | ここをクリック - 2.6.3 | 2015-12-17 |
2.6.2 | ここをクリック - 2.6.2 | 2015-10-28 |
2.7.1 | ここをクリック - 2.7.1 | 2015-07-06 |
Linuxでのインストールまたはセットアップ
擬似分散クラスタセットアップ手順
前提条件
JDK1.7をインストールし、JAVA_HOME環境変数を設定します。
新しいユーザーを "hadoop"として作成します。
useradd hadoop
自分のアカウントにパスワードなしのSSHログインをセットアップする
su - hadoop ssh-keygen << Press ENTER for all prompts >> cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys
ssh localhost
実行して確認する/etc/sysctl.conf
を次のように編集して、IPV6を無効にします。net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
を使用して確認します。(1を返します)
インストールと設定:
wget
コマンドを使用してApacheアーカイブから必要なバージョンのHadoopをダウンロードします。cd /opt/hadoop/ wget http:/addresstoarchive/hadoop-2.x.x/xxxxx.gz tar -xvf hadoop-2.x.x.gz mv hadoop-2.x.x.gz hadoop (or) ln -s hadoop-2.x.x.gz hadoop chown -R hadoop:hadoop hadoop
以下の環境変数を持つシェルに基づいて
.bashrc
/.kshrc
を更新します。export HADOOP_PREFIX=/opt/hadoop/hadoop export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop export JAVA_HOME=/java/home/path export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin:$JAVA_HOME/bin
$HADOOP_HOME/etc/hadoop
ディレクトリに以下のファイルを編集しますcore-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:8020</value> </property> </configuration>
mapred-site.xml
そのテンプレートから
mapred-site.xml
を作成するcp mapred-site.xml.template mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
yarn-site.xml
<configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///home/hadoop/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///home/hadoop/hdfs/datanode</value> </property> </configuration>
hadoopデータを保存する親フォルダを作成する
mkdir -p /home/hadoop/hdfs
フォーマットNameNode(ディレクトリをクリーンアップし、必要なメタファイルを作成する)
hdfs namenode -format
すべてのサービスを開始する:
start-dfs.sh && start-yarn.sh mr-jobhistory-server.sh start historyserver
その代わりに、start-all.sh(廃止予定)を使用してください。
実行中のJavaプロセスをすべて確認する
jps
Namenode Web Interface: http:// localhost:50070 /
リソースマネージャのWebインターフェイス: http:// localhost:8088 /
デーモン(サービス)を停止するには:
stop-dfs.sh && stop-yarn.sh mr-jobhistory-daemon.sh stop historyserver
その代わりにstop -all.sh(廃止予定)を使用してください。
ubuntuへのHadoopのインストール
Hadoopユーザーの作成:
sudo addgroup hadoop
ユーザーを追加する:
sudo adduser --ingroup hadoop hduser001
SSHの設定:
su -hduser001
ssh-keygen -t rsa -P ""
cat .ssh/id rsa.pub >> .ssh/authorized_keys
注 :認証されたキーを書き込んでいる間にエラーが発生した場合[ bash:.ssh / authorized_keys:そのようなファイルまたはディレクトリはありません ]。 ここを確認してください 。
sudoerのリストにhadoopユーザを追加する:
sudo adduser hduser001 sudo
IPv6を無効にする:
Hadoopのインストール:
sudo add-apt-repository ppa:hadoop-ubuntu/stable
sudo apt-get install hadoop
Hadoopの概要とHDFS
- Hadoopは、分散コンピューティング環境におけるデータセットのストレージと大規模な処理のためのオープンソースのソフトウェアフレームワークです。 これはApache Software Foundationが後援しています。 単一のサーバーから数千のマシンにスケールアップされ、それぞれがローカルの計算とストレージを提供するように設計されています。
- Hadoopは2005年にDoug CuttingとMike Cafarellaによって作成されました。
- 切手、Yahoo!で働いていた人当時、彼の息子のおもちゃの象の後にそれを名づけました。
- もともとは、検索エンジンプロジェクトの配布をサポートするために開発されました。
- Hadoop分散ファイルシステム(HDFS):アプリケーションデータへのハイスループットアクセスを提供する分散ファイルシステム。 Hadoop MapReduce:コンピューティングクラスタ上で大規模なデータセットを分散処理するためのソフトウェアフレームワーク。
- フォールトトレラントです。 高いスループット。 大きなデータセットを持つアプリケーションに適しています。 コモディティハードウェアから構築できます。
- マスター/スレーブアーキテクチャ HDFSクラスタは、ファイルシステムのネームスペースを管理し、クライアントによるファイルへのアクセスを規制するマスターサーバーである単一のネームノードで構成されています。 DataNodeは、それらが実行されているノードに接続されたストレージを管理します。 HDFSはファイルシステムの名前空間を公開し、ユーザデータをファイルに保存することができます。 ファイルは1つ以上のブロックに分割され、ブロックのセットはDataNodeに格納されます。 DataNodes:ネームノードからの命令に基づいて、読み取り、書き込み要求、ブロックの作成、削除、複製を行います。
- HDFSは、大規模なクラスタ内のマシン間で非常に大きなファイルを格納するように設計されています。 各ファイルは一連のブロックです。 最後のファイルを除くファイル内のブロックはすべて同じサイズです。 ブロックはフォールトトレランスのために複製されます。 ネームノードは、クラスタ内の各DataNodeからハートビートとBlockReportを受信します。 BlockReportには、データノード上のすべてのブロックが含まれます。
- 使用される一般的なコマンド: -
- ls使用法: hadoop fs -lsパス (ディレクトリ/ファイルのパス)。 Cat使用法: hadoop fs -cat PathOfFileToView
hadoopシェルコマンドのリンク: - https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-common/FileSystemShell.html