目次
Hive 1.2.1&Spark&Sqoop インストール ガイド
目次 1
4. MySQL をインストールします
4.1. MySQL をインストールする
4.2. Hive メタデータベースを作成する
exportPATH=$HIVE_HOME/bin:$PATH
hive-env.sh.templatehive-log4j.properties . template
5.4.2.2. hive-site.xml を変更します
5.4.2.3. hive-log4j.properties を変更する
6. 起動して実行します
7. HSQL
8. 基本コマンド
9. シングルポイント ソリューション
10. Spark との統合
11. Sqoop と統合する
11.1. sqoop-env.sh を変更します
11.2。
12. 一般的なエラー
《Hive1.2.1 インストール ガイド》
ホームページ バックエンド開発 PHPチュートリアル Hive 1.2.1&Spark&Sqoop インストール ガイド_PHP チュートリアル

Hive 1.2.1&Spark&Sqoop インストール ガイド_PHP チュートリアル

Jul 12, 2016 am 08:58 AM
android

Hive 1.2.1&Spark&Sqoop インストール ガイド

Hive 1.2.1&Spark&Sqoop インストール ガイド_PHP チュートリアルHive 1.2.1&Spark&Sqoop インストール ガイド.pdf

目次 1

1. 規約 2

3.ポート2

4. MySQL 2 をインストールします

4.2. Hive メタデータ データベースを作成します

5. インストール手順 4

5.1. Hive 5 をインストールします

5.3. MySQL -Connector 5

のインストール 5.4. 構成の変更 5

5.4.2. その他の構成ファイルの変更 5

5.4.2.1. -env.sh 6

5.4.2.2. hive-site.xml を変更します6

5.4.2.3. hive-log4j.properties を変更します7

5.4.2.4. hive-exec-log4j.properties を変更します。 7

7. HSQL のリモート実行 8

9. Spark との統合 9

11. sqoop の変更env.11.2.11.13記事については、「Hive0.12.0 インストール ガイド」を参照してください。内容は公式からのものです: GettingStarted、Hadoop2.7.1 に Hive1.2.1 をインストールします。この記事では、Hive をサーバー モードに構成し、メタデータ データベースとして MySQL を使用し、MySQL にリモートで接続します。

Hadoop2.7.1のインストールについては、記事「Hadoop-2.7.1分散インストールマニュアル」を参照してください。

2. 同意

この記事は、Hadoop が /data/hadoop/current にインストールされ、Hive1.2.1 がディレクトリ /data/hadoop/hive (実際には /data/hadoop/hive-1.2 を指している) にインストールされることに同意します。 1 ビン ソフト リンク)。 MySQL5.7.10をディレクトリ/data/mysqlにインストールします。実際のインストールおよび展開中に、他のディレクトリを指定できます。

3. サービスポート

10000

hive.server2.thrift.port、hiveserver2の実行時に開始されます

9083

hive.metastore.uris、ハイブを実行 --servicemetastore が開始します

4. MySQL をインストールします

単一の MySQL には単一点の問題があるため、アクティブ MySQL モードとバックアップ MySQL モードで構成する必要があります。

4.1. MySQL をインストールする

この記事の MySQL は 172.25.39.166 マシンにインストールされているため、MySQL を最初にインストールする必要があります。最新の MySQL5.7.10 はここにインストールされます。ダウンロード URL は http://dev.mysql.com/downloads/mysql/ です。この記事では、「Linux-Generic」の下の「Linux-Generic(glibc2.5)(」を選択します。 x86,64-bit),CompressedTARArchive"、そのバイナリ インストール パッケージの名前は mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz です。

バイナリ インストール パッケージを解凍すると、INSTALL-BINARY という名前のファイルが表示されます。このファイルは、基本的に MySQL のインストール方法を説明しています。

公式に提供されているバイナリ インストール パッケージでは、コンパイル中に指定される "--prefix" は "/usr/local/mysql" であるため、mysql を /usr/local ディレクトリにインストールするのが最善です。そうしないと、インストール プロセスが簡単に実行されます。問題に遭遇します。ただし、ディレクトリとして指定されたデータ ディレクトリは、十分な大きさのパーティションの下に作成します。

もちろん、データ ディレクトリは、十分な大きさのパーティション ディレクトリへのソフト リンクにすることもできます。それ以外の場合は、mysql コマンドを使用するときに、多くの場合、パラメーター「--datadir」を指定する必要があります。 mysqld、mysqld_safe、mysql_ssl_rsa_setup など。「--datadir」を指定する必要があります。

/usr/local/mysql にインストールされていない場合は、--basedir、--character-sets-dir、-- language、--lc-messages-dir、--plugin-dir などを指定する必要がありますmysqld 値のその他のパラメータ。

root ユーザーとしてインストールできない場合は、--slow-query-log-file、--socket、--pid-file、--plugin-dir、- などのパラメーター値も指定する必要があります。 mysqld の -general-log-file。

これらのパラメータのデフォルト値は、MySQL の「bin/mysqld --verbose --help」を実行することで確認できます。

#MySQL のインストール ディレクトリは /usr/local/mysql で、データ ディレクトリは実際には /data/mysql/data です

#インストールできない場合は、MySQL を root ユーザーとしてインストールする必要があることに注意してください。 root ユーザーとしてインストールすると、簡単にインストールの問題が発生する可能性があります

#5.7.6 より前のバージョンのインストールは若干異なることに注意してください。

#新しいmysqlユーザーグループ

groupaddmysql

#新しいmysqlユーザーを作成し、Linuxログインユーザーとして使用できないように設定します

useradd-r-gmysql-s/bin/falsemysql

#mysql インストール ディレクトリに移動します

cd/usr/local

#バイナリ インストール パッケージを解凍します

tarxzfmysql-5.7.10-linux-glibc2.5-x86_64.tar.gz

#簡単なバージョンに依存しない短いリンクを覚えておいてください

ln -smysql-5.7.10-linux-glibc2.5-x86_64mysql

#mysqlディレクトリに入ります

cdmysql

#データディレクトリを作成します

mkdir -p /data/mysql/data

#データディレクトリのソフトリンクを作成し、/usr/local/mysql/data を /data/mysql/data

ln-s/data/mysql/data/usr/local/mysql にポイントさせます/data

#ディレクトリ権限を設定します

chmod770/data/mysql/data

chown-Rmysql/data/mysql/data

chgrp-Rmysql/data/mysql/data

chown-Rmysql.

chグループ-Rmysql.

#初期化 (正常に実行されました mysqld の完了後、一時的な root パスワードが提供されます。覚えておいてください)

# また、一時的なパスワードは期限切れになるため、root パスワードを変更する必要があることにも注意してください。可能です

# MySQLCli に入ったら、次のコマンドを実行して新しいパスワードに変更します :

#SETPASSWORDFOR'root'@'localhost'=PASSWORD('new_password');

bin/mysqld--initialize--user =mysql--explicit_defaults_for_timestamp

#SSL をインストールして設定する

bin/mysql_ssl_rsa_setup

#ディレクトリ権限をリセットする

chown-Rroot.

chown-Rmysql/data/mysql/data

#mysqlを始める

bin/mysqld_safe--user=mysql&

#ポートが起動されているかどうかを確認します (構成を変更せず、パラメーター --port を指定しないでください。デフォルトのポート番号は 3306 です)

netstat-lpnt |grep3306

#MySQL を停止

support-files/mysql.serverstop

#mysql を設定するとシステムが自動的に起動します

cpsupport-files/mysql.server/etc/init.d/mysql.server

上記はすべて MySQL のデフォルト設定です。カスタマイズする必要がある場合は、my .cnf ファイルを変更して実現できます。 MySQL5.7.10 には my.cnf はなく、support-files/my-default.cnf のみがあります。

コマンド「support-files/my-default.cnf」を実行すると、MySQL が my.cnf を検索する順序が /etc/my.cnf/etc/mysql/my.cnf/usr であることがわかります。 /local/mysql /etc/my.cnf~/.my.cnf なので、my-default.cnf のコピーを作成して、次のように変更できます。 cpsupport-files/my-default.cnf/etc/my .cnf。

4.2. Hive メタデータベースを作成する

データベース ハイブを作成する:

createdatabaseifnotexistshive;

データベース ユーザー ハイブを作成します:

createuserhiveidentifiedby'hive2016';

データベース ハイブにアクセスできる IP とユーザーを承認します。ここで、ローカルホストの実際の IP は 172.2 です。 5.39.16 6 :

2)非ネイティブエントリ:mysql-uhive-h172.25

grantallonhive.*to'hive'@'localhost'identifiedby'hive2016';

grantallonhive.*to'hive'@'172.25.39.166'identifiedby'hive2016'; by'ハイブ2016 ';ハイブデータベースに入る:

1)ネイティブエントリ:mysql-uhive-phive2016

MySQL マスター間同期またはその他の同期が設定されている場合、同期されたライブラリに mysql が含まれていない場合は、ライブラリとユーザーの作成を別の MySQL で一度行う必要があることに注意してください。

5. インストール手順

5.1. Hive1.2.1 バイナリ インストール パッケージをダウンロードします

ダウンロード URL: http://hive.apache.org/downloads.html、ダウンロードされたパッケージ名は: apache-hive-1.2.1 -bin.tar.gz を選択し、apache-hive-1.2.1-bin.tar.gz を /data ディレクトリにアップロードします。

5.2. Hive をインストールします

1) /data ディレクトリに切り替えます: cd/data

2) バイナリ インストール パッケージを解凍します: tarxzfapache-hive-1.2.1-bin.tar.gz

3) 名前を変更します: mvapache -hive-1.2.1-binhive-1.2.1

4) ソフトリンクを作成します: ln-shive-1.2.1hive

5.3. MySQL-Connector をインストールします

MySQL-Connector のダウンロード URL: http:// dev.mysql .com/downloads/connector/。

「Connector/J」を選択し、「PlatformIndependent」を選択します。この記事のダウンロードは「mysql-connector-java-5.1.38.tar.gz」です。

圧縮パッケージ「mysql-connector-java-5.1.38.tar.gz」の中にmysql-connector-java-5.1.38-bin.jarがあります。解凍後、mysql-connector-java-5.1.38-となります。 bin .jar は Hive の lib ディレクトリにアップロードされます。これは MySQL 用の JDBC ドライバーです。

5.4. 設定を変更します

5.4.1. /etc/profile または ~/.profile を変更します

環境変数 HIVE_HOME を設定し、Hive を PATH に追加します:

exportHIVE_HOME=/data/hadoop/ hive

exportPATH=$HIVE_HOME/bin:$PATH

5.4.2. 他の設定ファイルを変更します /data/hadoop/hive/conf ディレクトリに入ると、次の内容が表示されます: hadoop@VM-40-171-sles10-64:~/hive/conf>lshive-default.xml.templatehive-exec-log4j.properties.template

hive-env.sh.templatehive-log4j.properties . template

cphive-env.sh.templatehive-env.shcphive-default.xml にコピーして名前を変更します。 templatehive -site.xml

4 つのテンプレート ファイルが表示され、設定ファイル

cphive-log4j.properties.templatehive-log4j.properties

cphive-exec-log4j.properties.templatehive-exec-log4j.properties

HADOOP_HOME=/data/hadoop/current

5.4.2.1。 sh

HADOOP_HOME 環境変数がまだ設定されていない場合は、hive-env.sh で設定できます:

5.4.2.2. hive-site.xml を変更します

1) javax.jdo.option.ConnectionURL を変更します

値を次のように設定します:

jdbc:mysql://172.25.39.166:3306/hive?useSSL=false,

「useSSL=false」や、characterEncoding=UTF-8 などの他のパラメータの追加に注意してください。

2) javax.jdo.option.ConnectionDriverName を変更します

値を com.mysql.jdbc.Driver に設定します。

3) javax.jdo.option.ConnectionUserName を変更します

値を、Hive データベースへのアクセスに使用するユーザー名 hive に設定します: hive

4) javax.jdo.option.ConnectionPassword を変更します

ハイブ データベースにアクセスするためのパスワードとして値を設定します: hive2016

5) hive.metastore.schema.verification を変更します

この値は状況に応じて変更する必要があります。

6) hive.zookeeper.quorum

を変更し、値を 10.12.154.77、10.12.154.78、10.12.154.79 に設定します。ZooKeeper はこれら 3 つのマシンにインストールされています。マシンの廃止により IP が変更される可能性があるため、IP の代わりにマシン名を使用することをお勧めします。

7) hive.metastore.uris

を変更し、値を thrift://172.25.40.171:9083 に設定します。9083 は Hive メタデータの RPC サービス ポートです。

8) hive.metastore.warehouse.dir を変更します

値を /data/hadoop/hive/warehouse に設定します。開始する前にディレクトリ (mkdir/data/hadoop/hive/warehouse) を作成する必要があることに注意してください。

9) hive.server2.thrift.bind.host を変更します

他のマシンから Hive にリモートでアクセスする必要がある場合は、この値を 172.25 に変更する必要があります。 .40.171 と考えてよいでしょう。

10) hive.exec.scratchdir を変更します

このステップはオプションであり、デフォルト値 /tmp/hive を直接使用できます。 /data/hadoop/hive/tmp などに設定し、ディレクトリを作成します。

11) hive.exec.local.scratchdir

を /data/hadoop/hive/tmp/scratch などに変更し、ディレクトリを作成します。

12) hive.downloaded.resources.dir

を /data/hadoop/hive/tmp/resources などに変更し、ディレクトリを作成します。

13) hive.querylog.location

を /data/hadoop/hive/tmp/querylog などに変更し、ディレクトリを作成します。

14) hive.server2.logging.operation.log.location

を /data/hadoop/hive/tmp/operation などに変更し、ディレクトリを作成します。

5.4.2.3. hive-log4j.properties を変更する

ログ ファイルの保存ディレクトリを変更し、ログ ディレクトリを /tmp/${user.name} から /data/hadoop/hive/logs に変更します。

hive.log.dir=/data/hadoop/hive/logs 次に、ディレクトリ /data/hadoop/hive/logs を作成します。

5.4.2.4. hive-exec-log4j.properties を変更する

ログ ファイルの保存ディレクトリを変更し、ログ ディレクトリをデフォルトの /tmp/${user.name} から /data/hadoop/hive/logs/exec に変更します。 :

hive.log.dir=/data/hadoop/hive/logs/exec

次に、ディレクトリ /data/hadoop/hive/logs/exec を作成します。

6. 起動して実行します

1) メタストアを初期化します

インストールと構成後、Hive サーバーを起動する前に、サーバー上で「schematool-dbTypemysql-initSchema」を実行してメタストアの初期化を完了する必要があります。

MySQL のマスター間同期が設定されている場合、1 台のハイブ マシンでのみ実行する必要があります。繰り返し実行するとエラーが発生します。

2) メタストアを開始します

コマンドを実行します: hive--servicemetastore&

3) Hive サービスを開始します

コマンドを実行します: hiveserver2&。

4) Hive コマンド ライン操作インターフェイスに入力します (mysql と同様)

実行: hive

hive コマンド ライン操作インターフェイスの使用に加えて、hiveserver2 は beeline も提供します (hive はユーザー名、hive2016 はユーザー名です)パスワードについては、HiveServer2+Clients から詳細情報を取得できます):

hadoop@VM-40-171-sles10-64:~/hive/bin>./beeline

Beelineversion1.2.1byApacheHive

beeline> !connectjdbc: hive2://172.25.40.171:10000hivehive2016org.apache.hive.jdbc.HiveDriver

jdbc:hive2://172.25.40.171:10000 に接続しています

SLF4J:クラスパスには複数の SLF4J バインディングが含まれています。

SLF4J:バインディングが見つかりました[jar:file:/] data/hadoop /hadoop-2.7.1/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J:Foundbindingin[jar:file:/ data/hadoop /hive-1.2.1-bin/lib/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J:http://www.slf4j.org/codes を参照してください。 .html# multiple_bindingsforanexplanation.

SLF4J:Actualbindingisoftype[org.slf4j.impl.Log4jLoggerFactory]

Connectedto:Hive(version1.2.1)

Driver:Hive(version1.2.1)

Transactionisolation:TRANSACTION_REPEATABLE_READ

0:jdbc: hive2:/ /172.25.40.171:10000>select*frominviteslimit2;

+------+----------+----------+

|foo|bar| ds|

+------+----------+----------+

|474|val_475|2014|

|281|val_282|2014|

+- -----+----------+------+

2行選択(1.779秒)

0:jdbc:hive2://172.25.40.171:10000> ;

7. HSQL

パッケージ hive/bin、hive/lib、hive/conf、および hive/examples をリモートで実行します (tarczfhive-bin.tar.gzhive/binhive/libhive/confhive/examples など)。

その後、hive-bin.tar.gz を他のマシンにアップロードし、beeline を使用してリモートで HSQL を実行します (hive を使用すると問題が発生する可能性があります。この記事を操作する際、hive を使用すると、HSQL の実行時に常にスタックします。特別な理由は記録されておらず、まだ特定されていません)。

8. 基本コマンド

次の内容は公式 Web サイト (GettingStarted) からのものです。コマンドでは大文字と小文字が区別されないことに注意してください:

CREATETABLEpokes(fooINT,barSTRING);

CREATETABLEinvites(fooINT, barSTRING)PARTITIONEDBY(dsSTRING);

SHOWTABLES;

SHOWTABLES'.*s';

DESCRIBEinvites;

DROPTABLEpokes;

Hive のインストール ディレクトリには example サブディレクトリがありますory、使用されるデータ ファイルを保存します。例では。テーブル招待へのデータのロードをテストし、ファイル ../examples/files/kv2.txt をテーブル招待にロードします:

LOADDATALOCALINPATH'../examples/files/kv2.txt'OVERWRITEINTOTABLEinvitesPARTITION(ds=' 2014');

「select*frominvites;」または「selectcount(1)frominvites;」を実行して読み込みステータスを確認できます。

9. シングルポイント ソリューション

このシングル ポイントは、2 つのハイブをデプロイすることで解決できます。この 2 つの MySQL は、同じマシン上にデプロイされます。

Hive はマスターおよびホット バックアップの方法であり、同時に 1 つの Hive だけがサービスを提供するようにするのが最善です。ただし、多くの場合、両方の Hive がサービスを提供していれば正常に動作します。

10. Spark との統合

Spark の Hive 統合は非常に簡単で、次の手順に従うだけです:

1) HIVE_HOME をspark-env.sh に追加します (例:exportHIVE_HOME=/data/hadoop/hive

2) Hive の hive-site.xml ファイルと hive-log4j.properties ファイルを Spark の conf ディレクトリに追加します。

完了後、spark-sqlを再度実行してSparkのSQLCliに入り、コマンドshowtablesを実行してHiveで作成されたテーブルを確認します。

例:

./spark-sql--masteryarn--driver-class-path/data/hadoop/hive/lib/mysql-connector-java-5.1.38-bin.jar

11. Sqoop と統合する

sqoop-1.4.6.bin__hadoop-2.0.4-alpha を例に挙げると、Hive にデータをインポートできるだけでなく、HBase にデータをインポートしたり、DB からデータをインポートしたりすることもできます。 HDFS ストレージに。つまり、Sqoop は非常に強力ですが、ここでは簡単に紹介するだけです。

Sqoop の公式 Web サイトから sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz をダウンロードします (ダウンロード URL: http://www.apache.org/dyn/closer.lua/sqoop/1.4.6) 。

解凍して、Sqoop の conf ディレクトリに入り、次の変更を完了します:

11.1. sqoop-env.sh を変更します

sqoop-env-template.sh のコピーをコピーし、sqoop-env.sh という名前を付けます。 sqoop-env.sh で次の環境変数を設定します:

1) HADOOP_COMMON_HOME

値は Hadoop インストール ディレクトリです。例:exportHADOOP_COMMON_HOME=/data/hadoop

2) HADOOP_MAPRED_HOME

値は hadoop-common-* .tar ファイルが配置されるディレクトリは、Hadoop インストール ディレクトリの下にあります。

例:exportHADOOP_MAPRED_HOME=/data/hadoop/share/hadoop/common

3)HBASE_HOME

値はHBaseのインストールディレクトリです。例:exportHBASE_HOME=/data/hbase

4)HIVE_HOME

値はHive ディレクトリのインストール、例:exportHIVE_HOME=/data/hive

5) ZOOCFGDIR

の値は Zookeeper の設定ディレクトリです。例:exportZOOCFGDIR=/data/zookeeper/conf

11.2。

sqoop -site-template.xml のコピーを sqoop-site.xml という名前で何も変更せずにコピーします。

11.3. 検証テスト

1) MySQL データベースをリストします

./sqooplist-databases--connectjdbc:mysql://127.0.0.1:3306/-usernamezhangsan--passwordzhangsan2016

2) MySQL テーブルに基づいて Hive テーブルを作成します

./sqoopcreate-hive-table--connectjdbc:mysql://127.0.0.1:3306/test--usernamezhangsan--passwordzhangsan2016--tablet_test-- hive-tablet_test_2016

Hive テーブルをパーティション分割する必要がある場合は、パラメーター --hive-partition-key および --hive-partition-value を通じて指定できます。

既存の Hive テーブルを上書きする必要がある場合は、パラメーター「--hive-overwrite」を追加するだけです。 「--hive-partition-key」値はパーティション名であり、デフォルトは文字列タイプであり、「--hive-partition-value」はパーティション値です。

3) MySQL から Hive にデータをインポートします

たとえば、データをエクスポートするために MySQL ツール mysqldump を使用することを示すために、パラメーター「--direct」を指定することをお勧めします。

「-m」は、並行してデータをインポートできるマップの数を示します。デフォルトは 4 です。クラスター内のマップの最大数を超える数を設定しないことをお勧めします。

「--table」はインポートするDBテーブル名を指定するために使用し、「--hive-import」はDBからHiveにデータをインポートすることを意味します。 SQL を使用してパラメータ「--query」を使用して条件付きで DB からエクスポートすることもできます。

文字セットを指定する必要がある場合は、パラメーター「--default-character-set」を使用します (例: --default-character-setUTF-8)。

12. 一般的なエラー

1) MySQL の「bin/mysqld--initialize--user=mysql」実行時のエラー。その理由は、MySQL バージョン 5.6 以降、タイムスタンプのデフォルト値が非推奨としてマークされているためです。つまり、タイムスタンプ型のフィールドが明示的に NULL として宣言されていない場合、デフォルト値は NOTNULL になります。タイムスタンプ フィールドが NULL に設定されている場合、現在のタイムスタンプが自動的に保存されます。

2)Can'tfinderror-messagefile'/usr/local/mysql/share/errmsg.sys'

MySQL の「bin/mysqld--initialize--user=mysql--explicit_defaults_for_timestamp」を実行するとエラーが発生します。

これは、以前に実行されたため、データ ディレクトリが空になっていない可能性があります。「bin/mysqld--verbose--help|grepdatadir」から、デフォルトのデータ ディレクトリが /var/lib/mysql/ であることがわかります。 」。 /var/lib/mysql/ ディレクトリが空であることを確認する必要があります。または、パラメーター --datadir を指定してデータ ディレクトリを変更します (例: "bin/mysqld --initialize --user=mysql --explicit_defaults_for_timestamp --datadir=/data/mysql/data")。

3)Can'tfinderror-messagefile'/usr/local/mysql/share/errmsg.sys'

エラーの場合:

Can'tfinderror-messagefile'/usr/local/mysql/share/errmsg.sys'。エラーメッセージファイルの場所と「lc-messages-dir」設定ディレクティブを確認してください。

公式 Web サイトからダウンロードした MySQL のデフォルトのインストールディレクトリは /usr/local/mysql です。実際には別のディレクトリである場合は、パラメータで指定することをお勧めします。 -basedir、それ以外の場合は、インストールで発生するエラーが少なくなります。 「bin/mysqld --verbose --help|grepbasedir」を実行すると、「--basedir」のデフォルト値が/usr/local/mysql/であることがわかります。

4) MetaStoreServer への接続に失敗しました

hiveserver2 を実行して次のエラーが発生した場合は、DEBUG ログ レベルをオンにして詳細情報を表示し、ログ構成ファイル hive で「hive.root.logger=WARN」を設定することをお勧めします。 -log4j.properties ,DRFA」は、「hive.root.logger=DEBUG,WARN,DRFA」に変更できます。

./sqoopimport --connectjdbc:mysql://127.0.0.1:3306/test--usernamezhangsan--password'zhangsan2016'--tablet_test- - hive-import-m6--hive-tablet_test_2016--direct

2014-04-2306:00:04,169WAR Nhive.metastore(HiveMetaStoreClient.java:open(291))-MetaStoreServer への接続に失敗しました...2014-04-2306:00:06,177WARNhive .metastore(HiveMetaStoreClient .java:open(291))-MetaStoreServer への接続に失敗しました...

2014-04-2306:00 :07,181WARNhive.metastore(HiveMetaStoreClient.java:open(291))-MetaStoreServer への接続に失敗しました...

2014-04-2306: 00:08,185WARNhive.metastore(HiveMetaStoreClient.java:open(291))-MetaStoreServer への接続に失敗しました...

2014-04-2306:00:09,194ERRORservice.CompositeService(CompositeService.java:start(74))-ServicesHiveServer2 の起動エラー

組織.apache.hive.service.ServiceException:MetaStore に接続できません!

atorg.apache.hive.service.cli .CLIService.start(CLIService.java:85)

atorg.apache.hive.service.CompositeService.start(CompositeService.java :70)

atorg.apache.hive.service.server.HiveServer2.start(HiveServer2.java ) :62)

atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

atjava.lang.reflect。 Method.invoke(Method.java:483)

atorg.apache.hadoop.util.RunJar.main (RunJar.java:212)

修正後、再度hiveserver2を実行すると、メタストアが起動していないことが推測されます。「hive --servicemetastore」を実行すると、メタストアが起動できます。

2014-04-2306:04:27,053INFOOhive.metastore(HiveMetaStoreClient.java:open(244))-URIthrift://172.25.40.171:9083

2014-0 4-2306:04:27,085警告hive .metastore(HiveMetaStoreClient.java:open(288)) - MetaStoreServer への接続に失敗しました...

org.apache.thrift.transport.TTransportException:java.net.ConnectException:接続が拒否されました

atorg.apache.thrift.transport.TSocket。 open (TSocket.java:185)

atorg.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:283)

atorg.apache.hadoop.hive.metastore.HiveMetaStoreClient.(HiveMetaStoreClient . java:164)

atorg.apache.hadoop.hive.metastore.HiveMetaStoreClient.(HiveMetaStoreClient.java:104)

atorg.apache.hive.service.cli.CLIService.start(CLIService.java: 82 )

atorg.apache.hive.service.CompositeService.start(CompositeService.java:70)

atorg.apache.hive.service.server.HiveServer2.start(HiveServer2.java:73)

atorg.apache。 hive .service.server.HiveServer2.main(HiveServer2.java:103)

atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)

atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

atsun.reflect 。 LegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:43)

atjava.lang.reflect.Method.invoke(Method.java:483)

atorg.apache.hadoop.util.RunJar.main(RunJar.java:212)

5)メタストアにバージョン情報が見つかりません

「./hive--servicemetastore」を実行すると、次のエラーが報告されます。その理由は、メタストアが初期化されておらず、「schematool-dbTypemysql-initSchema」を実行する必要があるためです。一度。

SLF4J:Actualbindingisoftype[org.slf4j.impl.Log4jLoggerFactory]

MetaException(メッセージ:メタストアにバージョン情報が見つかりません。)

aorg.apache.hadoop.hive.metastore.ObjectStore.checkSchema(Object Store.java:563) 8)

torg.apache.hadoop.hive.metastore.objectstore.verifyschema(objectore.java:5622)

atsun.reflt.nativemethodaccessorimpl.invoke0(nativemethod)

atsun.reflect.nativemethacessimpedcesmpedcesimpedcesimpedcesimpedcesimpedcessimpedcessimcessimpedcessimcessimpedcessimcessimcessimcessimpedcessimpedcessimpedces

atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

atjava.lang.reflect.Method.invoke(Method.java:483)

atorg.apache.hadoop.hive.metastore.RetryingRawStore.invoke( RetryingRawStore .java:124)

atcom.sun.proxy.$Proxy2.verifySchema(UnknownSource)

atorg.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:403)

atorg.apache . hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:441)

atorg.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:326)

atorg.apache.hadoop . hive.metastore.HiveMetaStore$HMSHandler.(HiveMetaStore.java:286)

atorg.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:54)

atorg.apache . hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:59)

aorg.apache.hadoop.hive.metastore.HiveMetaStore.newHMSHandler(HiveMetaStore.java:4060)

aorg.apache.hadoop.hive.metastore . HiveMetaStore.startMetaStore(HiveMetaStore.java:4263)

atorg.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:4197)

atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)

atsun。 . NativeMethodAccessOmpl.invoke (nativeMethodacectorimpl.java:62) Impl.java:43)

Aatjava.lang.reflect.Method.invoke (method.java:48 ))

ATORG.APACHE. RunJar.java:212)

6)java.net.URISyntaxException:RelativepathinabsoluteURI:${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

解決策: system:io.tmpdir は絶対に置き換えられています。パス、hive-1.2.1 には合計 4 つの場所があります。

7) サーバーの身元確認なしで SSL 接続を確立することは推奨されません

問題の現象:

水 2016 年 2 月 17 日 10:39:37CST2016 警告:サーバーの身元確認なしで SSL 接続を確立することは推奨されません。MySQL5.5.45+、5.6.26+、および 5.7+ の要件によると。明示的なオプションが設定されていない場合は、デフォルトで SSL 接続を確立する必要があります。SSL を使用しない既存のアプリケーションに準拠するには、ServerCertificate プロパティを「false」に設定してください。useSSL= を設定して SSL を明示的に無効にする必要があります。 false、orsetuseSSL=trueandprovidetruststoreforservercertificateverification.

解決策は、

jdbc:mysql://127.0 のように、hive-site.xml の構成項目 javax.jdo.option.ConnectionURL 値に「useSSL=false」を追加することです。 0.1:3306 /hive?characterEncoding=UTF-8;useSSL=false。

8)SPARK_CLASSPATHwasdetected

SPARK_CLASSPATHwasdetected(setto'/data/hadoop/hive/lib/mysql-connector-java-5.1.38-bin.jar:')。

これは Spark1.0 以降では非推奨です。

代わりに使用してください:

-./spark-submit with--driver-class-path to augment the driver classpath

-spark.executor.extraClassPath to augment the executor classpath

は、spark-env.sh で環境変数 SPARK_CLASSPATH を設定することは推奨されないことを意味します。次の推奨値に変更できます。メソッド: /spark-sql--masteryarn--driver-class-path/data/hadoop/hive/lib/mysql-connector-java-5.1.38-bin.jar

《13. HBase-0.98.0 分散インストール ガイド》

《Hive1.2.1 インストール ガイド》

《ZooKeeper-3.4.6 分散インストール ガイド》

《Hadoop2.3.0 ソース コード リバース エンジニアリング》

《Hadoop-2.7.1 のコンパイルLinux 》

《Accumulo-1.5.1 インストール ガイド》

《Drill1.0.0 インストール ガイド》

《Shark0.9.1 インストール ガイド》

詳細については、技術ブログをご覧ください: http:/ /aquester.cublog.cn.


http://www.bkjia.com/PHPjc/1103192.html

www.bkjia.com

http://www.bkjia.com/PHPjc/1103192.html技術記事 Hive 1.2.1Sqoop インストール ガイド Hive 1.2.1SparkSqoop インストール ガイド.pdf 目次 1 1. はじめに 1 2. 規約 2 3. サービス ポート 2 4. MySQL 2 のインストール 4.1. MySQL 2 のインストール 4.2. Hive メタデータ データベースの作成 4 .
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

新しいレポートは、噂のSamsung Galaxy S25、Galaxy S25 Plus、Galaxy S25 Ultraのカメラアップグレードのひどい評価を提供します 新しいレポートは、噂のSamsung Galaxy S25、Galaxy S25 Plus、Galaxy S25 Ultraのカメラアップグレードのひどい評価を提供します Sep 12, 2024 pm 12:23 PM

ここ数日、Ice Universeは、サムスンの次期主力スマートフォンであると広く信じられているGalaxy S25 Ultraの詳細を着実に明らかにしている。とりわけ、リーカーはサムスンがカメラのアップグレードを1つだけ計画していると主張した

Samsung Galaxy S25 Ultraの最初のレンダリング画像がリークされ、噂のデザイン変更が明らかに Samsung Galaxy S25 Ultraの最初のレンダリング画像がリークされ、噂のデザイン変更が明らかに Sep 11, 2024 am 06:37 AM

OnLeaks は、X (旧 Twitter) のフォロワーから 4,000 ドル以上を集めようとして失敗した数日後、Android Headlines と提携して Galaxy S25 Ultra のファーストルックを提供しました。コンテキストとして、h の下に埋め込まれたレンダリング イメージ

IFA 2024 | TCLのNXTPAPER 14は、パフォーマンスではGalaxy Tab S10 Ultraに匹敵しませんが、サイズではほぼ匹敵します IFA 2024 | TCLのNXTPAPER 14は、パフォーマンスではGalaxy Tab S10 Ultraに匹敵しませんが、サイズではほぼ匹敵します Sep 07, 2024 am 06:35 AM

TCLは、2つの新しいスマートフォンの発表に加えて、NXTPAPER 14と呼ばれる新しいAndroidタブレットも発表しました。その巨大な画面サイズはセールスポイントの1つです。 NXTPAPER 14 は、TCL の代表的なブランドであるマット LCD パネルのバージョン 3.0 を搭載しています。

新しいレポートは、噂のSamsung Galaxy S25、Galaxy S25 Plus、Galaxy S25 Ultraのカメラアップグレードのひどい評価を提供します 新しいレポートは、噂のSamsung Galaxy S25、Galaxy S25 Plus、Galaxy S25 Ultraのカメラアップグレードのひどい評価を提供します Sep 12, 2024 pm 12:22 PM

ここ数日、Ice Universeは、サムスンの次期主力スマートフォンであると広く信じられているGalaxy S25 Ultraの詳細を着実に明らかにしている。とりわけ、リーカーはサムスンがカメラのアップグレードを1つだけ計画していると主張した

Vivo Y300 Pro は、7.69 mm のスリムなボディに 6,500 mAh のバッテリーを搭載 Vivo Y300 Pro は、7.69 mm のスリムなボディに 6,500 mAh のバッテリーを搭載 Sep 07, 2024 am 06:39 AM

Vivo Y300 Pro は完全に公開されたばかりで、大容量バッテリーを備えた最もスリムなミッドレンジ Android スマートフォンの 1 つです。正確に言うと、このスマートフォンの厚さはわずか 7.69 mm ですが、6,500 mAh のバッテリーを搭載しています。これは最近発売されたものと同じ容量です

Samsung Galaxy S24 FEは、4色と2つのメモリオプションで予想よりも低価格で発売されると請求されています Samsung Galaxy S24 FEは、4色と2つのメモリオプションで予想よりも低価格で発売されると請求されています Sep 12, 2024 pm 09:21 PM

サムスンは、ファンエディション(FE)スマートフォンシリーズをいつアップデートするかについて、まだ何のヒントも提供していない。現時点では、Galaxy S23 FE は 2023 年 10 月初めに発表された同社の最新版のままです。

Xiaomi Redmi Note 14 Pro Plusは、Light Hunter 800カメラを搭載した初のQualcomm Snapdragon 7s Gen 3スマートフォンとして登場します Xiaomi Redmi Note 14 Pro Plusは、Light Hunter 800カメラを搭載した初のQualcomm Snapdragon 7s Gen 3スマートフォンとして登場します Sep 27, 2024 am 06:23 AM

Redmi Note 14 Pro Plusは、昨年のRedmi Note 13 Pro Plus(Amazonで現在375ドル)の直接の後継者として正式に発表されました。予想通り、Redmi Note 14 Pro Plusは、Redmi Note 14およびRedmi Note 14 Proと並んでRedmi Note 14シリーズをリードします。李

Motorola Razr 50s は初期リークで新たな予算を折り畳める可能性があることを示す Motorola Razr 50s は初期リークで新たな予算を折り畳める可能性があることを示す Sep 07, 2024 am 09:35 AM

Motorola は今年数え切れないほどのデバイスをリリースしましたが、そのうち折りたたみ式デバイスは 2 つだけです。ちなみに、世界の大部分ではこのペアが Razr 50 および Razr 50 Ultra として受け入れられていますが、Motorola は北米では Razr 2024 および Razr 2 として提供しています。

See all articles