3

私の環境:hadoop 1.0.4 hive 0.12 hbase 0.94.14 presto 0.56

すべてのパッケージは疑似マシンにインストールされます。サービスは localhost では実行されていませんが、静的 IP を持つホスト名で実行されています。

事前設定:

coordinator=false
datasources=jmx,hive
http-server.http.port=8081
presto-metastore.db.type=h2
presto-metastore.db.filename=/root
task.max-memory=1GB
discovery.uri=http://<HOSTNAME>:8081

presto cli では、ハイブでテーブルを正常に取得できます。

presto:default> show tables;
       Table
-------------------
ht1
k_business_d_
k_os_business_d_
...
tt1_
(11 rows)

Query 20140114_072809_00002_5zhjn, FINISHED, 1 node
Splits: 2 total, 2 done (100.00%)
0:11 [11 rows, 291B] [0 rows/s, 26B/s]

しかし、任意のテーブルからデータをクエリしようとすると、結果は常に空になります: (エラー情報なし)

presto:default> select * from k_business_d_;
 key | business | business_name | collect_time | numofalarm | numofhost | test
-----+----------+---------------+--------------+------------+-----------+------
(0 rows)

Query 20140114_072839_00003_5zhjn, FINISHED, 1 node
Splits: 1 total, 1 done (100.00%)
0:02 [0 rows, 0B] [0 rows/s, 0B/s]

HIVE で同じ SQL を実行した場合、結果はテーブルに 1 行あることを示しています。

hive> select * from k_business_d_;
OK
9223370648089975807|2   2       测试机       2014-01-04 00:00:00     NULL    1.0         NULL
Time taken: 2.574 seconds, Fetched: 1 row(s)

Presto が HIVE テーブルからフェッチできないのはなぜですか?

4

1 に答える 1

4

を介して HBase を使用する外部テーブルのようorg.apache.hadoop.hive.hbase.HBaseStorageHandlerです。これはまだサポートされていませんが、適切な jar を Hive プラグイン ディレクトリにコピーすると可能になる可能性があることが、メーリング リストの投稿の 1 つに示されています

于 2014-01-28T18:06:14.133 に答える