0

疑似分散モードで CDH4 をセットアップしています。

Hadoop をセットアップし、CDH4 インストール ガイドで提案されているように、hdfs デモも正常に完了しました。

HIVEとHBaseもセットアップしました。

Hbase にデータを入力するために、HBase に大量のデータを入力する Java クライアントを作成しました (4 つのテーブルにそれぞれ約 100 万行)。

今、私は2つの問題に直面しています:

  1. ダミー データを hbase に移植するために Java クライアントが実行されている場合、合計で約 4,50,000 行のデータが入力された後、リージョン サーバーがシャットダウンされます。
  2. Hive を使用すると、HBase で作成されたテーブルにアクセスできません。最悪の場合、Hive シェルからテーブルを作成することさえできません。ただし、hbase シェルにはデータ/テーブル構造が表示されます (regionserver がシャットダウンする前に生成されたものは何でも)。

私は同じことに関する他の投稿を見てきました。2 番目の問題は、/etc/hosts または hive-site.xml に関連しているようです。したがって、両方のコンテンツを貼り付けています。

/etc/ホスト

198.251.79.225 u17162752.onlinehome-server.com u17162752
198.251.79.225 default-domain.com
198.251.79.225 hbase.zookeeper.quorum localhost
198.251.79.225     cloudera-vm     # Added by NetworkManager
127.0.0.1       localhost.localdomain   localhost
127.0.1.1       cloudera-vm-local localhost

hive-site.xml

<configuration>

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost:3306/metastore</value>
  <description>the URL of the MySQL database</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>hive</value>
</property>


<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>mypassword</value>
</property>

<property>
  <name>datanucleus.autoCreateSchema</name>
  <value>false</value>
</property>

<property>
  <name>datanucleus.fixedDatastore</name>
  <value>true</value>
</property>

<property>
  <name>hive.metastore.uris</name>
  <value>thrift://127.0.0.1:9083</value>
  <description>IP address (or fully-qualified domain name) and port of the metastore     host</description>
</property>

<property>
  <name>hive.support.concurrency</name>
  <description>Enable Hive's Table Lock Manager Service</description>
  <value>true</value>
</property>

<property>
  <name>hive.zookeeper.quorum</name>
  <description>Zookeeper quorum used by Hive's Table Lock Manager</description>
  <value>zk1.myco.com,zk2.myco.com,zk3.myco.com</value>
</property>

<property>
  <name>hbase.zookeeper.quorum</name>
  <description>Zookeeper quorum used by Hive's Table Lock Manager</description>
  <value>zk1.myco.com,zk2.myco.com,zk3.myco.com</value>
</property>

<property>
  <name>hive.server2.authentication</name>
  <value>NOSASL</value>
</property>
</configuration>

これらの問題により、私はタスクを達成することができません。

よろしくお願いします

PS: これはこのフォーラムへの私の最初の投稿です。我慢してくれてありがとう。

こんにちは、Tariq さん、返信ありがとうございます。これでなんとか乗り越えることができました。今、私は別の問題に直面しています。

HBase には既に 4 つのテーブルがあり、そのためにハイブ シェルで外部テーブルを作成したいと考えています。ただし、Hive シェルで create external table コマンドを実行すると、次のエラーが発生します。

'ERROR: org.apache.hadoop.hbase.client.NoServerForRegionException: No server address listed in -ROOT- for region .META.,,1.1028785192 containing row'

また、HBase シェルで何かを実行すると、このエラーが表示されます。

hbase シェルで前者に付随するもう 1 つのエラーは、zookeeper に関連しています。スタックトレース:

'WARN zookeeper.ZKUtil: catalogtracker-on-    org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@6a9a56bf-    0x1413718482c0010 Unable to get data of znode /hbase/unassigned/1028785192
org.apache.zookeeper.KeeperException$SessionExpiredException: KeeperErrorCode = Session     expired for /hbase/unassigned/1028785192'

助けてください。ありがとう!

4

0 に答える 0