Create file /tmp/impala-scratch/…. with errno=2 description=Error(2): No such file or directory

hadoop
http://impala.apache.org
この記事は約2分で読めます。

impalaでクエリを実行すると,以下のようなエラーが出ることがある。
クエリはエラーになる。

以下のcommunityサイトで質問されている方がいた。

community.cloudera.com

impala2.0からサポートされている’spill to disk’の機能だ。巨大なデータのソートやjoin,grouping,分析関数の実行時などメモリ消費がリミットを超える場合でもout of memoryで終了するのではなく,パフォーマンスの低下を許容しつつdiskも使って何とか結果を返してくれる。

このspill to diskで使用されるのが,--scratch_dirs="path_to_directory"で,ドキュメントによるとデフォルトでは/tmp/impala-scratchとなっている。スレーブノードのローカルディスク上で/tmp/impala-scratchを探すとやはりいない。恐らくこのディレクトリは自分で作成しないといけない?と思われる。

上記サイトでも言及されているように/tmpは消去される可能性もあることを想定し,今回は/var/tmpに作成することにした。

そして,Cloudera Managerではscratch_dirsの設定を行なう入力フォームが以下のように用意されている。設定を変更してimpalaサービスの再起動を行なう。

参考リンク

コメント

タイトルとURLをコピーしました