サーチ…
備考
- Hiveは、 Hadoopの上に構築されたデータウェアハウスツールです。
- データを照会するためのSQLライクな言語を提供します。
- ほとんどのSQLクエリはHiveで実行できますが、唯一の違いは、バックエンドでmap-reduceジョブを実行してHadoop Clusterから結果を取得することです。このため、Hiveは結果セットを取得するのに時間がかかることがあります。
ハイブの単語数の例
ドキュメントファイル(入力ファイル)
メアリーは小さな子羊を持っていた
そのフリースは雪のように白かった
メアリーがどこに行っても
子羊は確かに行きました。
ハイブクエリ
CREATE TABLE FILES (line STRING);
LOAD DATA INPATH 'docs' OVERWRITE INTO TABLE FILES;
CREATE TABLE word_counts AS
SELECT word, count(1) AS count FROM
(SELECT explode(split(line, ' ')) AS word FROM FILES) w
GROUP BY word
ORDER BY word;
Hiveのword_countsテーブルの出力
メアリー、2
持っていた、1
a、1
少し、1
子羊、2
その、1
フリース、1
だった、2
ホワイト、1
as、1
雪、1
そして、1
どこでも、1
それ、1
行った、1
、1
確かに、1
〜、1
行く、1
Hive(linux)のインストール
https://hive.apache.org/downloads.htmlから最新の安定版をダウンロードすることから始めます。
- >今すぐファイルをuntarしてください
$ tar -xvf hive-2.xy-bin.tar.gz
- > / usr / local /にディレクトリを作成する
$ sudo mkdir / usr / local / hive
- >ファイルをrootに移動する
$ mv〜/ Downloads / hive-2.xy / usr / local / hive
- > hadoopとハイブの環境変数を.bashrcで編集する
$ gedit〜/ .bashrc
このような
export HIVE_HOME = / usr / local / hive / apache-hive-2.0.1-bin /
export PATH = $ PATH:$ HIVE_HOME / bin
エクスポートCLASSPATH = $ CLASSPATH:/ usr / local / Hadoop / lib / *:。
エクスポートCLASSPATH = $ CLASSPATH:/usr/local/hive/apache-hive-2.0.1-bin/lib/* :.
- >さて、まだ実行されていない場合は、hadoopを起動してください。それが実行されていることを確認し、セーフモードではありません。
$ hadoop fs -mkdir / user / hive / warehouse
ディレクトリ「ウェアハウス」は、ハイブに関連するテーブルまたはデータを格納する場所です。
$ hadoop fs -mkdir / tmp
一時ディレクトリ "tmp"は、処理の中間結果を格納する一時的な場所です。
- >これらのフォルダに対する読み取り/書き込みの権限を設定します。
$ hadoop fs -chmod g +ユーザー/ハイブ/倉庫
$ hadoop fs -chmod g + w / user / tmp
→今度はコンソールでこのコマンドを使ってHIVEを起動してください
$ハイブ
Linuxでの外部Metastoreによるハイブインストール
前提条件:
- Java 7
- Hadoop(Hadoopのインストールについてはここを参照してください)
- MySQLのサーバーとクライアント
インストール:
ステップ1:ダウンロードページから最新のハイブタールをダウンロードします。
ステップ2:ダウンロードしたtarballを展開する( 仮定: $ HOMEにダウンロードする )
tar -xvf /home/username/apache-hive-x.y.z-bin.tar.gz
ステップ3:環境ファイル( ~/.bashrc
)を更新する
export HIVE_HOME=/home/username/apache-hive-x.y.z-bin
export PATH=$HIVE_HOME/bin:$PATH
新しい環境変数を設定するためにファイルをソースします。
source ~/.bashrc
ステップ4:mysqlのJDBCコネクタをここからダウンロードして解凍します。
tar -xvf mysql-connector-java-a.b.c.tar.gz
抽出されたディレクトリには、コネクタjarファイルmysql-connector-java-abcjar
が含まれています。 $HIVE_HOME
lib
にコピーして$HIVE_HOME
cp mysql-connector-java-a.b.c.jar $HIVE_HOME/lib/
構成:
$HIVE_HOME/conf/
directoryの下にハイブ設定ファイル$HIVE_HOME/conf/
hive-site.xml
作成し、以下のメタストア関連プロパティを追加します。
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/hive_meta</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>mysqluser</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysqlpass</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>false</value>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>true</value>
</property>
</configuration>
MySQLの "username"と "password"の値をプロパティに応じて更新します。
メタストアスキーマの作成:
メタストアスキーマスクリプトは、 $HIVE_HOME/scripts/metastore/upgrade/mysql/
MySQLにログインしてスキーマをソースし、
mysql -u username -ppassword
mysql> create database hive_meta;
mysql> use hive_meta;
mysql> source hive-schema-x.y.z.mysql.sql;
mysql> exit;
Metastoreの開始:
hive --service metastore
バックグラウンドで実行するには、
nohup hive --service metastore &
HiveServer2の起動:(必要に応じて使用)
hiveserver2
バックグラウンドで実行するには、
nohup hiveserver2 metastore &
注意:これらの実行可能ファイルは$HIVE_HOME/bin/
接続:
hive
に接続するには、 hive
、 beeline
または色相のいずれかを使用します。
Hive CLIは廃止予定です。BeelineまたはHueを使用することをお勧めします。
色相の追加構成:
この値を$HUE_HOME/desktop/conf/hue.ini
[beeswax]
hive_conf_dir=/home/username/apache-hive-x.y.z-bin/conf