Tôi đang chạy một vài thử nghiệm trên các định dạng lưu trữ có sẵn với Hive và sử dụng Parquet và ORC làm các tùy chọn chính. Tôi đã bao gồm ORC một lần với nén mặc định và một lần với Snappy.
Tôi đã đọc nhiều tài liệu nói rằng Parquet có độ phức tạp về thời gian / không gian tốt hơn so với ORC nhưng các thử nghiệm của tôi lại trái ngược với các tài liệu tôi đã xem qua.
Làm theo một số chi tiết về dữ liệu của tôi.
Table A- Text File Format- 2.5GB
Table B - ORC - 652MB
Table C - ORC with Snappy - 802MB
Table D - Parquet - 1.9 GB
Sàn gỗ là tồi tệ nhất cho đến khi nén cho bàn của tôi có liên quan.
Các thử nghiệm của tôi với các bảng trên cho kết quả như sau.
Hoạt động đếm hàng
Text Format Cumulative CPU - 123.33 sec
Parquet Format Cumulative CPU - 204.92 sec
ORC Format Cumulative CPU - 119.99 sec
ORC with SNAPPY Cumulative CPU - 107.05 sec
Tổng của một hoạt động cột
Text Format Cumulative CPU - 127.85 sec
Parquet Format Cumulative CPU - 255.2 sec
ORC Format Cumulative CPU - 120.48 sec
ORC with SNAPPY Cumulative CPU - 98.27 sec
Trung bình của một hoạt động cột
Text Format Cumulative CPU - 128.79 sec
Parquet Format Cumulative CPU - 211.73 sec
ORC Format Cumulative CPU - 165.5 sec
ORC with SNAPPY Cumulative CPU - 135.45 sec
Chọn 4 cột từ một dải ô đã cho bằng mệnh đề where
Text Format Cumulative CPU - 72.48 sec
Parquet Format Cumulative CPU - 136.4 sec
ORC Format Cumulative CPU - 96.63 sec
ORC with SNAPPY Cumulative CPU - 82.05 sec
Điều đó có nghĩa là ORC nhanh hơn sau đó Parquet? Hoặc có điều gì đó mà tôi có thể làm để làm cho nó hoạt động tốt hơn với thời gian phản hồi truy vấn và tỷ lệ nén?
Cảm ơn!