Phân vùng và phân nhóm dữ liệu: Phân vùng và phân nhóm phù hợp có thể làm giảm lượng dữ liệu đầu vào
Các định dạng dữ liệu phù hợp: Parquet, ORC có thể giảm I/O, tốc độ truyền mạng, v.v.
Cắt bớt cột: Nói chung không sử dụng CHỌN *, chỉ lấy các cột bạn thực sự cần
Hợp nhất tệp: Sử dụng INSERT OVERWRITE để giảm số lượng tệp nhỏ và nâng cao hiệu quả
Lọc dữ liệu: Sử dụng tính năng lọc WHERE, đơn giản nhưng hiệu quả
Cài đặt song song: Cài đặt song song hợp lý có thể tận dụng hiệu suất của cụm tốt hơn, nếu không, nó có thể "quá mạnh" hoặc "giết gà bằng hồng tâm".
Bản địa hóa dữ liệu và THAM GIA: Cố gắng thực hiện nhiều thao tác hơn trên các nút cục bộ để giảm việc truyền tải mạng và các chi phí chung khác, chẳng hạn như sử dụng mapjoin;
Thu thập thông tin thống kê thường xuyên: ANALYZE TABLE thu thập thông tin bảng, giúp trình tối ưu hóa có nhiều khả năng đưa ra các kế hoạch truy vấn tốt hơn;
Các định dạng dữ liệu phù hợp: Parquet, ORC có thể giảm I/O, tốc độ truyền mạng, v.v.
Cắt bớt cột: Nói chung không sử dụng CHỌN *, chỉ lấy các cột bạn thực sự cần
Hợp nhất tệp: Sử dụng INSERT OVERWRITE để giảm số lượng tệp nhỏ và nâng cao hiệu quả
Lọc dữ liệu: Sử dụng tính năng lọc WHERE, đơn giản nhưng hiệu quả
Cài đặt song song: Cài đặt song song hợp lý có thể tận dụng hiệu suất của cụm tốt hơn, nếu không, nó có thể "quá mạnh" hoặc "giết gà bằng hồng tâm".
Bản địa hóa dữ liệu và THAM GIA: Cố gắng thực hiện nhiều thao tác hơn trên các nút cục bộ để giảm việc truyền tải mạng và các chi phí chung khác, chẳng hạn như sử dụng mapjoin;
Thu thập thông tin thống kê thường xuyên: ANALYZE TABLE thu thập thông tin bảng, giúp trình tối ưu hóa có nhiều khả năng đưa ra các kế hoạch truy vấn tốt hơn;