More Related Content
Similar to Cloudera impalaの性能評価(Hiveとの比較) (20)
More from Yukinori Suda (8)
Cloudera impalaの性能評価(Hiveとの比較)
- 2. はじめに
— 「impalaがHadoop MapReduceのHiveより1桁速い」(※)と聞
いて、普段業務にて使用しているHiveより本当に速いのかを検
証した
— 普段の業務では…
— CDH3でHadoopクラスタを構築
— WebのアクセスログをSnappyで圧縮してRCFileでHDFSに保存
— Map処理出力とReduce処理出力も共にSnappyで圧縮
— Thriftサービス経由でPHPからHiveでクエリを実行
※出典
Cloudera Impala:Apache Hadoopで実現する、リアルのためのリア
ルタイムクエリ
- 4. 評価環境
— Cloudera Manager Free Edition 4.1.0
・HDFS
NameNode ・HDFS
SecondaryNameNode DataNode
・MapReduce ・MapReduce
JobTracker TaskTracker
・impala ・impala
impalad impalad
Impala-state-store
マスター1台
スレーブ4台
- 5. サーバの仕様
— CPU
— 合計2コアのIntel Xeon 1.6GHz(HTあり)
— メモリ
— 4GB
— ディスク
— SASドライブ(rpmは不明)
— OS
— CentOS 6.2
- 6. 評価方法
— クエリの応答時間比較
— Hiveシェルとimpalaシェルでそれぞれ5回実行した平均値
— クエリで処理するデータ
— 約6,500万行のWebのアクセスログ(8ヶ月分)
— 日付でパーティショニング
— カラム数は14個
- 7. 評価内容
— 使用したクエリ
— SELECT count(*) FROM table_name
— パラメータ
— ストレージフォーマット形式
— TextFile、SequenceFile、RCFile(Hiveのみ)
— 保存ファイルの圧縮形式
— Gzip、Snappy
— MapReduce処理出力データの圧縮形式
— Gzip、Snappy
- 8. 対象データ
— 任意の1日分のファイルサイズ
ファイル圧縮
TextFile
SequnceFile
RCFile
非圧縮
37.88 MB 40.69 MB 36.01 MB
(100 %)
(107.4 %)
(95.1 %)
Gzip
2.47 MB 3.07 MB 2.84 MB
(6.5 %)
(8.1 %)
(7.5 %)
Snappy
6.72 MB 7.49 MB 6.00 MB
(17.7 %)
(19.8 %)
(15.8 %)
- 9. 評価結果(MR + Hive)
— 単位は秒
ファイル圧縮
MR出力圧縮
TextFile
SequenceFile
RCFile
非圧縮
非圧縮
135.913 157.042 126.626
(100 %)
(116 %) (93.2 %)
Gzip
Gzip
238.876 169.675 計測不可
(176 %)
(125 %)
Snappy
Snappy
239.201 65.055 57.173
(176 %)
(47.9 %)
(42.1 %)
ターゲットタイムは 57.173 秒
- 10. 評価結果(impala)
— 単位は秒
ファイル圧縮
TextFile
SequenceFile
非圧縮
73.422 88.422
(54.0 %)
(65.1 %)
Gzip
計測なし
8.284
(6.1 %)
Snappy
計測なし
15.099
(11.1 %)
— 最速平均値はGzipの場合で 8.284 秒
— ちなみにGzipの最速実測値は 7.232 秒
- 13. 評価内容
— 使用したクエリ
— SELECT count(*) FROM table_name WHERE column =
‘xxxx’
— パラメータ
— ストレージフォーマット形式
— Hive ⇒ RCFile
— impala ⇒ SequenceFile
— 保存ファイルの圧縮形式
— Hive ⇒ Gzip
— impala ⇒ Gzip、Snappy
— MapReduce処理出力データの圧縮形式(Hiveのみ)
— Snappy
- 14. 評価結果
— Hive(単位は秒)
ファイル圧縮
MR出力圧縮
RCFile
Snappy
Snappy
60.574
(100 %)
— impala(単位は秒)
ファイル圧縮
SequenceFile
Gzip
22.960
(26.4 %)
Snappy
14.679
(23.2 %)
— 文字列一致検索の処理時間も 約23% に短縮
- 15. まとめ
— 全数カウントだけでなく、文字列一致検索でも処理時間が
約1/4に短縮された
snappyで圧縮されたRCFileをHiveで処理すると約61秒
snappyで圧縮されたSequenceFileをimpalaで処理すると約15秒
— ただし、全数カウントの場合はgzipで圧縮された
SequenceFileの場合が最速であったが、文字列一致検
索の場合はgzipよりもsnappyで圧縮されたSequnceFile
の方が速かった