Hive-installation
Hive-インストール
Hive、Pig、HBaseなどのすべてのHadoopサブプロジェクトは、Linuxオペレーティングシステムをサポートしています。 したがって、LinuxフレーバーOSをインストールする必要があります。 Hiveのインストールでは、次の簡単な手順が実行されます。
ステップ1:JAVAインストールの確認
Hiveをインストールする前に、Javaをシステムにインストールする必要があります。 次のコマンドを使用して、Javaのインストールを確認しましょう。
$ java –version
Javaがすでにシステムにインストールされている場合、次の応答が表示されます。
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
システムにjavaがインストールされていない場合は、javaをインストールするための以下の手順に従ってください。
Javaのインストール
ステップI:
次のリンクhttp://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260l[][[1]] <最新バージョン>-X64.tar.gz)をダウンロードします。 .oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260l。
次に、jdk-7u71-linux-x64.tar.gzがシステムにダウンロードされます。
ステップII:
通常、ダウンロードしたjavaファイルは、ダウンロードフォルダーにあります。 それを確認し、次のコマンドを使用してjdk-7u71-linux-x64.gzファイルを抽出します。
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
ステップIII:
すべてのユーザーがJavaを使用できるようにするには、「/usr/local/」の場所に移動する必要があります。 ルートを開き、次のコマンドを入力します。
$ su
password:
# mv jdk1.7.0_71/usr/local/
# exit
ステップIV:
PATHおよびJAVA_HOME変数を設定するには、次のコマンドを〜/.bashrcファイルに追加します。
export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=$PATH:$JAVA_HOME/bin
すべての変更を現在実行中のシステムに適用します。
$ source ~/.bashrc
ステップV:
次のコマンドを使用して、Javaの代替を構成します。
# alternatives --install/usr/bin/java/java/usr/local/java/bin/java 2
# alternatives --install/usr/bin/javac/javac/usr/local/java/bin/javac 2
# alternatives --install/usr/bin/jar/jar/usr/local/java/bin/jar 2
# alternatives --set java/usr/local/java/bin/java
# alternatives --set javac/usr/local/java/bin/javac
# alternatives --set jar/usr/local/java/bin/jar
上記で説明したように、ターミナルからコマンドjava -versionを使用してインストールを検証します。
ステップ2:Hadoopインストールの検証
Hiveをインストールする前に、Hadoopをシステムにインストールする必要があります。 次のコマンドを使用して、Hadoopのインストールを確認しましょう。
$ hadoop version
Hadoopがシステムにすでにインストールされている場合、次の応答が返されます。
Hadoop 2.4.1 Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum 79e53ce7994d1628b240f09af91e1af4
Hadoopがシステムにインストールされていない場合は、次の手順に進みます。
Hadoopをダウンロードする
次のコマンドを使用して、Apache Software FoundationからHadoop 2.4.1をダウンロードして抽出します。
$ su
password:
# cd/usr/local
# wget http://apache.claz.org/hadoop/common/hadoop-2.4.1/
hadoop-2.4.1.tar.gz
# tar xzf hadoop-2.4.1.tar.gz
# mv hadoop-2.4.1/* to hadoop/
# exit
擬似分散モードでのHadoopのインストール
以下の手順を使用して、Hadoop 2.4.1を擬似分散モードでインストールします。
ステップI:Hadoopのセットアップ
次のコマンドを*〜/.bashrc *ファイルに追加することにより、Hadoop環境変数を設定できます。
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export
PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
すべての変更を現在実行中のシステムに適用します。
$ source ~/.bashrc
ステップII:Hadoopの構成
すべてのHadoop設定ファイルは、「$ HADOOP_HOME/etc/hadoop」の場所にあります。 Hadoopインフラストラクチャに応じて、これらの構成ファイルに適切な変更を加える必要があります。
$ cd $HADOOP_HOME/etc/hadoop
javaを使用してHadoopプログラムを開発するには、 JAVA_HOME 値をシステム内のjavaの場所に置き換えて、 hadoop-env.sh ファイルのjava環境変数をリセットする必要があります。
export JAVA_HOME=/usr/local/jdk1.7.0_71
以下に、Hadoopを構成するために編集する必要があるファイルのリストを示します。
*core-site.xml*
*core-site.xml* ファイルには、Hadoopインスタンスに使用されるポート番号、ファイルシステムに割り当てられたメモリ、データを保存するためのメモリ制限、読み取り/書き込みバッファのサイズなどの情報が含まれています。
core-site.xmlを開き、<configuration>タグと</configuration>タグの間に次のプロパティを追加します。
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
*hdfs-site.xml*
*hdfs-site.xml* ファイルには、レプリケーションデータの値、namenodeパス、ローカルファイルシステムのdatanodeパスなどの情報が含まれています。 これは、Hadoopインフラストラクチャを保存する場所を意味します。
次のデータを想定します。
dfs.replication (data replication value) = 1
(In the following path/hadoop/is the user name.
hadoopinfra/hdfs/namenode is the directory created by hdfs file system.)
namenode path =//home/hadoop/hadoopinfra/hdfs/namenode
(hadoopinfra/hdfs/datanode is the directory created by hdfs file system.)
datanode path =//home/hadoop/hadoopinfra/hdfs/datanode
このファイルを開き、このファイルの<configuration>タグと</configuration>タグの間に次のプロパティを追加します。
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/namenode </value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/datanode </value >
</property>
</configuration>
- 注意:*上記のファイルでは、すべてのプロパティ値はユーザー定義であり、Hadoopインフラストラクチャに応じて変更できます。
*yarn-site.xml*
このファイルは、Hadoopに糸を設定するために使用されます。 yarn-site.xmlファイルを開き、このファイルの<configuration>タグと</configuration>タグの間に次のプロパティを追加します。
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
*mapred-site.xml*
このファイルは、使用しているMapReduceフレームワークを指定するために使用されます。 デフォルトでは、Hadoopにはyarn-site.xmlのテンプレートが含まれています。 まず、次のコマンドを使用して、mapred-site、xml.templateからmapred-site.xmlファイルにファイルをコピーする必要があります。
$ cp mapred-site.xml.template mapred-site.xml
*mapred-site.xml* ファイルを開き、このファイルの<configuration>タグと</configuration>タグの間に次のプロパティを追加します。
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Hadoopインストールの検証
次の手順を使用して、Hadoopのインストールを確認します。
ステップI:ノードのセットアップに名前を付ける
次のようにコマンド「hdfs namenode -format」を使用して、namenodeをセットアップします。
$ cd ~
$ hdfs namenode -format
期待される結果は次のとおりです。
10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost/192.168.1.11
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.4.1
...
...
10/24/14 21:30:56 INFO common.Storage: Storage directory
/home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted.
10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to
retain 1 images with txid >= 0
10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0
10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG:
/*********************************************************** *
SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11
* ***********************************************************/
ステップII:Hadoop dfの検証
次のコマンドは、dfsを開始するために使用されます。 このコマンドを実行すると、Hadoopファイルシステムが起動します。
$ start-dfs.sh
予想される出力は次のとおりです。
10/24/14 21:37:56
Starting namenodes on [localhost]
localhost: starting namenode, logging to/home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-namenode-localhost.out
localhost: starting datanode, logging to/home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-datanode-localhost.out
Starting secondary namenodes [0.0.0.0]
ステップIII:糸スクリプトの検証
次のコマンドを使用して、糸スクリプトを開始します。 このコマンドを実行すると、糸デーモンが起動します。
$ start-yarn.sh
予想される出力は次のとおりです。
starting yarn daemons
starting resourcemanager, logging to/home/hadoop/hadoop-2.4.1/logs/yarn-hadoop-resourcemanager-localhost.out
localhost: starting nodemanager, logging to/home/hadoop/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-localhost.out
ステップIV:ブラウザーでHadoopにアクセスする
Hadoopにアクセスするためのデフォルトのポート番号は50070です。 次のURLを使用して、ブラウザーでHadoopサービスを取得します。
http://localhost:50070/
ステップV:クラスターのすべてのアプリケーションを確認する
クラスターのすべてのアプリケーションにアクセスするためのデフォルトのポート番号は8088です。 このサービスにアクセスするには、次のURLを使用してください。
http://localhost:8088/
ステップ3:Hiveをダウンロードする
このチュートリアルでは、hive-0.14.0を使用します。 次のリンクhttp://apache.petsads.us/hive/hive-0.14.0/[[[2]]]にアクセスしてダウンロードできます。/Downloadsディレクトリにダウンロードされると仮定します。 ここでは、このチュートリアル用に「apache-hive-0.14.0-bin.tar.gz」という名前のHiveアーカイブをダウンロードします。 次のコマンドを使用して、ダウンロードを確認します。
$ cd Downloads
$ ls
ダウンロードが成功すると、次の応答が表示されます。
apache-hive-0.14.0-bin.tar.gz
ステップ4:Hiveのインストール
システムにHiveをインストールするには、次の手順が必要です。 Hiveアーカイブが/Downloadsディレクトリにダウンロードされると仮定します。
Hive Archiveの抽出と検証
次のコマンドを使用して、ダウンロードを確認し、ハイブアーカイブを抽出します。
$ tar zxvf apache-hive-0.14.0-bin.tar.gz
$ ls
ダウンロードが成功すると、次の応答が表示されます。
apache-hive-0.14.0-bin apache-hive-0.14.0-bin.tar.gz
====/usr/local/hiveディレクトリへのファイルのコピー
スーパーユーザー「su-」からファイルをコピーする必要があります。 次のコマンドを使用して、抽出したディレクトリから/usr/local/hive”ディレクトリにファイルをコピーします。
$ su -
passwd:
# cd/home/user/Download
# mv apache-hive-0.14.0-bin/usr/local/hive
# exit
Hiveの環境をセットアップする
- 〜/.bashrc *ファイルに次の行を追加することにより、Hive環境をセットアップできます。
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.
export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.
〜/.bashrcファイルを実行するには、次のコマンドを使用します。
$ source ~/.bashrc
ステップ5:Hiveの構成
HadoopでHiveを構成するには、 $ HIVE_HOME/conf ディレクトリにある hive-env.sh ファイルを編集する必要があります。 次のコマンドは、Hive config フォルダーにリダイレクトし、テンプレートファイルをコピーします。
$ cd $HIVE_HOME/conf
$ cp hive-env.sh.template hive-env.sh
次の行を追加して、 hive-env.sh ファイルを編集します。
export HADOOP_HOME=/usr/local/hadoop
Hiveのインストールは正常に完了しました。 メタストアを構成するには、外部データベースサーバーが必要になりました。 Apache Derbyデータベースを使用します。
ステップ6:Apache Derbyのダウンロードとインストール
以下の手順に従って、Apache Derbyをダウンロードしてインストールします。
Apache Derbyのダウンロード
Apache Derbyをダウンロードするには、次のコマンドを使用します。 ダウンロードには時間がかかります。
$ cd ~
$ wget http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/db-derby-10.4.2.0-bin.tar.gz
次のコマンドを使用して、ダウンロードを確認します。
$ ls
ダウンロードが成功すると、次の応答が表示されます。
db-derby-10.4.2.0-bin.tar.gz
Derbyアーカイブの抽出と検証
以下のコマンドは、Derbyアーカイブの抽出と検証に使用されます。
$ tar zxvf db-derby-10.4.2.0-bin.tar.gz
$ ls
ダウンロードが成功すると、次の応答が表示されます。
db-derby-10.4.2.0-bin db-derby-10.4.2.0-bin.tar.gz
ファイルを/usr/local/derbyディレクトリにコピーする
スーパーユーザー「su-」からコピーする必要があります。 次のコマンドを使用して、抽出したディレクトリから/usr/local/derbyディレクトリにファイルをコピーします。
$ su -
passwd:
# cd/home/user
# mv db-derby-10.4.2.0-bin/usr/local/derby
# exit
Derbyの環境をセットアップする
- 〜/.bashrc *ファイルに次の行を追加することにより、Derby環境をセットアップできます。
export DERBY_HOME=/usr/local/derby
export PATH=$PATH:$DERBY_HOME/bin
Apache Hive
18
export CLASSPATH=$CLASSPATH:$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar
- 〜/.bashrc *ファイルを実行するには、次のコマンドを使用します。
$ source ~/.bashrc
メタストアを保存するディレクトリを作成します
$ DERBY_HOMEディレクトリにdataという名前のディレクトリを作成して、メタストアデータを保存します。
$ mkdir $DERBY_HOME/data
これで、Derbyのインストールと環境設定が完了しました。
ステップ7:Hiveのメタストアの構成
メタストアの構成とは、データベースの保存場所をHiveに指定することを意味します。 これを行うには、$ HIVE_HOME/confディレクトリにあるhive-site.xmlファイルを編集します。 まず、次のコマンドを使用してテンプレートファイルをコピーします。
$ cd $HIVE_HOME/conf
$ cp hive-default.xml.template hive-site.xml
*hive-site.xml* を編集し、<configuration>タグと</configuration>タグの間に次の行を追加します。
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby://localhost:1527/metastore_db;create=true </value>
<description>JDBC connect string for a JDBC metastore </description>
</property>
jpox.propertiesという名前のファイルを作成し、次の行を追加します。
javax.jdo.PersistenceManagerFactoryClass =
org.jpox.PersistenceManagerFactoryImpl
org.jpox.autoCreateSchema = false
org.jpox.validateTables = false
org.jpox.validateColumns = false
org.jpox.validateConstraints = false
org.jpox.storeManagerType = rdbms
org.jpox.autoCreateSchema = true
org.jpox.autoStartMechanismMode = checked
org.jpox.transactionIsolation = read_committed
javax.jdo.option.DetachAllOnCommit = true
javax.jdo.option.NontransactionalRead = true
javax.jdo.option.ConnectionDriverName = org.apache.derby.jdbc.ClientDriver
javax.jdo.option.ConnectionURL = jdbc:derby://hadoop1:1527/metastore_db;create = true
javax.jdo.option.ConnectionUserName = APP
javax.jdo.option.ConnectionPassword = mine
ステップ8:Hiveインストールの検証
Hiveを実行する前に、HDFSに /tmp フォルダーと別のHiveフォルダーを作成する必要があります。 ここでは、 /user/hive/warehouse フォルダーを使用します。 以下に示すように、これらの新しく作成されたフォルダーに書き込み許可を設定する必要があります。
chmod g+w
Hiveを検証する前に、HDFSでそれらを設定します。 次のコマンドを使用します。
$ $HADOOP_HOME/bin/hadoop fs -mkdir/tmp
$ $HADOOP_HOME/bin/hadoop fs -mkdir/user/hive/warehouse
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w/tmp
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w/user/hive/warehouse
Hiveのインストールを確認するには、次のコマンドを使用します。
$ cd $HIVE_HOME
$ bin/hive
Hiveが正常にインストールされると、次の応答が表示されます。
Logging initialized using configuration in jar:file:/home/hadoop/hive-0.9.0/lib/hive-common-0.9.0.jar!/hive-log4j.properties
Hive history file=/tmp/hadoop/hive_job_log_hadoop_201312121621_1494929084.txt
………………….
hive>
次のサンプルコマンドを実行して、すべてのテーブルを表示します。
hive> show tables;
OK
Time taken: 2.798 seconds
hive>