課題
/var/log/impalad/profile以下にimpala_profile_log_xxxxのようなログファイルが大量に生成されてdiskが圧迫される
確認
impala_profile_logがなに奴かを確認してみる
# view /var/log/impalad/profiles/impala_profile_log_xxx-xxxx
1389023567970 e44325113dee8aaa:924a7462703efbbb eJztmw10FMUdwDchhBAIX5p4KbSOVWuwcOzt3nfB9pJcTJRcYu4A2+crb7nbhH3cR9zdS4yv7xkRY0ojKAatHw8VUamP0kiLHzRiQKRIQVEkoKYYwVrgAY
中身を見ただけだと何かわからない
Using Impala Logging によるとノード間に配布されたクエリーや転送結果などがログとして保存されるらしい。また、その内容はzlib-compressedされて保存されているとのこと。このデータは、Impala web user interfaceから参照できるらしい。
Impala web user interfaceでチェック
query idをチェック
http://hoge.com:25000/queries
Query (id=e44325113dee8aaa:924a7462703efbbb):
Summary:
Session ID: 344bd91ef220378b:98af975dfd7c000
Session Type: BEESWAX
Start Time: 2014-01-01 16:52:14.596559000
End Time: 2014-01-01 16:54:03.407829000
Query Type: QUERY
Query State: FINISHED
Query Status: OK
Impala Version: impalad version 1.x.x RELEASE (build 83d5868f005966883a918a819a449f636a5b3d5f)
User: www
Network Address: 192.168.23.xx:59026
Default Db: hoge_db
Sql Statement: SELECT
*
FROM
hoge_log
WHERE
account_id = ’11’
AND
project_id = ‘111’
AND
.
.
.
対応
WebUIからも直近のデータだけ参照しているようであれば圧縮または別の場所に退避出来る気がする
念のためどこまでのデータか確認
上記のqueryを例にすると e44325113dee8aaa:924a7462703efbbb がidなのでコレをキーに探してみる
grep “e44325113dee8aaa:924a7462703efbbb” /var/log/impalad/profiles/*
影響がなさそうな範囲を圧縮
gzip
# find -mtime +1 -type f ! -name "*.gz"|xargs gzip
まとめ
gzipで25%(24.4MB -> 18.4MB)程度空きができたので、一時凌ぎにはなりそう。Cloudera managerでそもそもローテート設定出来るとこが無いのかな。。