私を悩ませる2つの基本的な質問:
- ハイブがテーブルを格納するために使用する 32 個のファイルのそれぞれが固有のマシンにあることを確認するにはどうすればよいですか?
- その場合、Hive が 32 のマッパーを作成した場合、それぞれがローカルデータで動作することをどのように確認できますか? hadoop/hdfs はこの魔法を保証しますか? それとも、スマートなアプリケーションとしての hive がそれを確実に実現しますか?
背景: 私は 32 台のマシンからなるハイブ クラスターを持っています。
- 私のすべてのテーブルは
"CLUSTERED BY(MY_KEY) INTO 32 BUCKETS"
- 私が使う
hive.enforce.bucketing = true;
- 確認したところ、実際にすべてのテーブルが 32 個のファイルとしてユーザー/ハイブ/ウェアハウスに保存されています
- HDFS レプリケーション係数 2 を使用しています
ありがとう!