0

ハイブにパーティション分割されたテーブルがあります。では、hadoop hdfs のディレクトリ構造を確認したいですか?

ドキュメントから、次のコマンドを見つけました

hadoop fs -ls /app/hadoop/tmp/dfs/data/

そして/app/hadoop/tmp/dfs/data/私のデータパスです。しかし、このコマンドは戻ります

ls: /app/hadoop/tmp/dfs/data/ にアクセスできません: そのようなファイルまたはディレクトリはありません。

私はそこに何か欠けていますか?

4

2 に答える 2

1

私が間違っていない限り、おそらくプロパティで定義した一時ディレクトリを探しているようですhadoop.tmp.dir。これはローカル ディレクトリhadoop fs -lsですが、HDFS で使用可能なファイルを確認しているため、何も表示されません。

Hive ディレクトリを探しているので、hive-site.xml で次のプロパティを探しています。

hive.metastore.warehouse.dir

デフォルトは/user/hive/warehouseであるため、このプロパティを変更していない場合は、次のことができるはずです。

hadoop fs -ls /user/hive/warehouse

これにより、テーブルディレクトリが表示されます。

于 2013-01-28T05:10:03.100 に答える
0

core-site.xml ファイルと hdfs-site.xml で tmp ディレクトリが正しく設定されているかどうかを確認してください。設定されていない場合、オペレーティング システムの一時ディレクトリ (ubuntu では tmp、Windows では %temp%) が hadoop tmp フォルダに設定されるため、コンピュータの再起動後にデータが失われる可能性があります。この dfs.tmp.dir を両方の xml に設定し、クラスターを再起動します。それならうまくいきます。それでも解決しない場合は、テーブルコードとテーブルデータの分割について詳しく教えてください。

于 2013-01-28T04:54:50.050 に答える