Video: Heo rớt giá, thương lái “đục nước béo cò” 2025
Pig Latin là ngôn ngữ cho các chương trình lợn. Pig chuyển tập lệnh Pig Latin sang công việc MapReduce mà nó có thể được thực hiện trong cụm Hadoop. Khi đến với Pig Latin, nhóm phát triển đã làm theo ba nguyên tắc thiết kế quan trọng:
-
Giữ nó đơn giản . Pig Latin cung cấp một phương pháp hợp lý để tương tác với Java MapReduce. Đó là một sự trừu tượng, nói cách khác, đơn giản hoá việc tạo ra các chương trình song song trên cluster Hadoop cho các luồng dữ liệu và phân tích. Các tác vụ phức tạp có thể yêu cầu một loạt các phép biến đổi dữ liệu có liên quan - các chuỗi như vậy được mã hoá dưới dạng chuỗi dữ liệu .
Pig Latin cung cấp một ngôn ngữ đơn giản để khai thác cụm Hadoop của bạn, do đó làm cho dễ dàng hơn cho nhiều người hơn để tận dụng sức mạnh của Hadoop và trở nên hiệu quả sớm hơn. -
Bạn có thể nhớ lại rằng Pig Latin Compiler thực hiện công việc chuyển đổi một chương trình Pig Latin thành một loạt các công việc Java MapReduce. Thủ thuật là đảm bảo rằng trình biên dịch có thể tự động tối ưu hóa việc thực hiện các công việc Java MapReduce này, cho phép người dùng tập trung vào ngữ nghĩa hơn là cách tối ưu hóa và truy cập dữ liệu. Đối với bạn các kiểu SQL trên mạng, cuộc thảo luận này nghe có vẻ quen thuộc. SQL được thiết lập như một truy vấn khai báo mà bạn sử dụng để truy cập dữ liệu có cấu trúc được lưu trữ trong một RDBMS. Công cụ RDBMS đầu tiên chuyển truy vấn sang phương pháp truy cập dữ liệu và sau đó xem xét thống kê và tạo ra một loạt các phương pháp truy cập dữ liệu. Trình tối ưu hóa dựa trên chi phí chọn cách tiếp cận hiệu quả nhất để thực hiện.
-
Làm cho Pig mở rộng để các nhà phát triển có thể thêm chức năng để giải quyết các vấn đề kinh doanh cụ thể của họ. Các kho dữ liệu RDBMS truyền thống sử dụng mẫu xử lý dữ liệu ETL, nơi bạn
e xtract dữ liệu từ các nguồn bên ngoài, t ransform nó cho phù hợp với nhu cầu hoạt động của bạn, và sau đó > l đưa nó vào đích cuối cùng, cho dù đó là kho lưu trữ dữ liệu hoạt động, kho dữ liệu, hay một biến thể khác của cơ sở dữ liệu. Tuy nhiên, với dữ liệu lớn, bạn thường muốn giảm lượng dữ liệu bạn di chuyển, vì vậy bạn sẽ tự đưa việc xử lý vào dữ liệu. Ngôn ngữ cho các luồng dữ liệu lợn, do đó, phải vượt qua phương pháp ETL cũ, và đi với ELT thay vì:
E
xtract dữ liệu từ các nguồn khác nhau của bạn, l oad nó vào HDFS, và sau đó t ransform nó khi cần thiết để chuẩn bị dữ liệu để phân tích thêm.