2012-04-11 42 views
9

Tôi đã triển khai một nhiệm vụ trong Hive. Hiện tại nó đang làm việc tốt trên cụm nút duy nhất của tôi. Bây giờ tôi đang lên kế hoạch triển khai nó trên AWS.Amazon EC2 so với Amazon EMR

Tôi không biết gì về AWS. Nếu tôi dự định triển khai nó thì tôi nên chọn Amazon EC2 hoặc Amazon EMR.

Tôi muốn cải thiện hiệu suất nhiệm vụ của mình. Cái nào tốt hơn và đáng tin cậy hơn cho tôi? Cách tiếp cận họ. Tôi nghe nói rằng chúng tôi cũng có thể đăng ký cài đặt VM của chúng tôi vì nó trên AWS. Có thể không?

Xin giới thiệu cho tôi càng sớm càng tốt.

Rất cám ơn.

+0

Đây không phải là câu hỏi của SysAdmin hơn là một câu hỏi lập trình ...? –

+0

Đoán từ "càng sớm càng tốt" ở cuối câu hỏi của bạn, có thể bạn nên thử gửi email câu hỏi cho nhóm hỗ trợ nền tảng của công ty bạn;) –

Trả lời

14

EMR là tập hợp các cá thể EC2 với Hadoop (và tùy chọn Hive và/hoặc Pig) được cài đặt và định cấu hình trên chúng. Nếu bạn đang sử dụng cụm của bạn để chạy các công việc Hadoop/Hive/Pig, EMR là cách để đi. Một cá thể EMR tốn thêm một chút so với một cá thể EC2. Việc kiểm tra nhanh giá Amazon ngày hôm nay cho thấy rằng một trường hợp EC2 nhỏ có giá $ 0,08/giờ trong khi một trường hợp EMR nhỏ tốn thêm $ 0,015/giờ. Theo ý kiến ​​của tôi, bạn nên trả thêm tiền để tiết kiệm cho mình những rắc rối khi cài đặt và thiết lập Hadoop (cùng với Hive và Pig), tạo và duy trì và AMI và sử dụng nó. Hơn nữa, phiên bản Hadoop và Hive của EMR có một số bản vá lỗi không có sẵn (ít nhất, chưa được) trên Apache Hive. Nếu bạn sử dụng EC2, có thể bạn sẽ được sử dụng Apache Hadoop và Hive (hoặc có thể là, sự phân bố Cloudera) và sẽ không được tiếp cận với những bản vá lỗi (như hỗ trợ cho S3 hoặc lệnh như ALTER TABLE my_table RECOVER PARTITIONS

Tài liệu tham khảo:

+0

Giá EMR và EC2 https://aws.amazon.com/emr/pricing/ – Saad

5

Tôi khuyên bạn KHÔNG nên thử và triển khai cụm Hadoop của riêng bạn, trừ khi bạn có 2-3 tháng để rảnh rỗi và bạn có một chuyên gia Hadoop tiện dụng.

Bản đồ đàn hồiReduce sẽ cho phép bạn bắt đầu rất nhanh chóng bằng cách cung cấp môi trường xung quanh được định cấu hình sẵn. Thấy như bạn chỉ có một công việc duy nhất, nó sẽ ổn thôi.

+0

Thats Tốt. Trong trường hợp sử dụng của tôi, tôi muốn sử dụng SQOOP để nhập dữ liệu từ MS SQL Server. Tôi đã tạo một công việc cho nó bằng cách sử dụng Hive JDBC để xử lý nó. Nhưng tôi có dữ liệu khổng lồ trong MSSQL-SERVER (gần bằng GB). Nếu tôi phải chạy công việc hàng ngày/hàng tuần, sau đó là nó hiệu quả để nhập khẩu từ SQL-SERVER hàng ngày/hàng tuần. Nếu tôi nghĩ ra vấn đề này và lưu trữ dữ liệu này n S3 thì Làm thế nào tôi có thể tạo liên kết giữa HDFS và S3. (Vì dữ liệu của bảng Hive được lưu trữ trong thư mục HDFS trong/người dùng/hive/kho). –

1

Nói chung, về mặt lịch sử, EMR là khá xa so với các phiên bản mới nhất của các thành phần Hadoop, và một số đã mất tích hoàn toàn. Đó là reas lớn để sử dụng phân phối khác. Ví dụ, nếu bạn muốn HBase, nó không có trong EMR, nhưng không phải vậy. Hôm nay, Spark vắng mặt từ EMR. EMR thường sẽ tụt hậu.

Điều đó nói rằng, nếu bạn không sử dụng các tính năng mới nhất và tuyệt vời nhất, hãy sử dụng EMR.