Amazon EMR là nơi tốt nhất để chạy Apache Spark. Bạn có thể nhanh chóng và dễ dàng tạo các cụm Spark từ Bảng điều khiển quản lý AWS, AWS CLI hoặc API Amazon EMR. Ngoài ra, bạn có thể tận dụng các tính năng bổ sung của Amazon EMR, bao gồm kết nối Amazon S3 nhanh chóng bằng cách sử dụng Amazon EMR File System (EMRFS), tích hợp với thị trường Amazon EC2 Spot và Danh mục dữ liệu AWS GlueAuto Scaling để thêm hoặc xóa các phiên bản khỏi cụm của bạn . AWS Lake Formation đem đến khả năng kiểm soát truy cập mức độ chi tiết, trong khi đó việc tích hợp với AWS Step Functions sẽ giúp điều phối các đường dẫn dữ liệu của bạn. EMR Notebooks giúp bạn dễ dàng thử nghiệm và xây dựng các ứng dụng với Spark. Nếu thích, bạn có thể sử dụng Apache Zeppelin để tạo các máy tính xách tay tương tác và kết hợp để khám phá dữ liệu sử dụng Spark.

Tìm hiểu thêm về Apache Spark tại đây.

Tính năng và lợi ích

Hiệu năng cao

EMR có môi trường thời gian chạy được tối ưu hóa hiệu năng cho Apache Spark được bật theo mặc định. Thời gian chạy EMR cho Spark có thể nhanh gấp hơn 3 lần và có API tương thích hoàn toàn với Spark tiêu chuẩn. Hiệu năng được cải thiện này có nghĩa là khối lượng công việc chạy nhanh hơn và tiết kiệm chi phí điện toán mà không thực hiện bất kỳ thay đổi nào đối với các ứng dụng của bạn.

Bằng cách sử dụng công cụ thực thi đồ thị không theo chu trình (DAG), Spark có thể tạo ra các kế hoạch truy vấn hiệu quả cho các hoạt động chuyển đổi dữ liệu. Spark cũng lưu trữ dữ liệu đầu vào, đầu ra và trung gian trong bộ nhớ dưới dạng các tập hợp dữ liệu phân tán dạng cột linh hoạt, cho phép xử lý nhanh mà không có chi phí I/O, tăng hiệu năng của các khối lượng công việc lặp lại hoặc tương tác.

Phát triển các ứng dụng một cách nhanh chóng và hợp tác

Apache Spark mặc định hỗ trợ Java, Scala, SQL và Python, cung cấp cho bạn nhiều ngôn ngữ để xây dựng các ứng dụng của mình. Ngoài ra, bạn có thể gửi các truy vấn SQL hoặc HiveQL bằng việc sử dụng mô-đun Spark SQL. Ngoài các ứng dụng đang chạy, bạn có thể sử dụng API Spark tương tác trực tiếp với Python hoặc Scala trong lệnh shell Spark trên cụm của bạn hoặc qua máy tính xách tay Jupyter trên cụm của bạn. Hỗ trợ cho Apache Hadoop 3.0 trpng EMR 6.0 giúp hỗ trợ bộ chứa Docker để đơn giản hóa việc quản lý các tác nhân phụ thuộc. Bạn cũng có thể tận dụng EMR Notebooks phụ thuộc vào cụm (dựa trên Jupyter) hoặc sử dụng Zeppelin để tạo các máy tính xách tay tương tác và kết hợp để khám phá và trực quan hóa dữ liệu. Bạn có thể điều chỉnh và gỡ lỗi khối lượng công việc của mình trong bảng điều khiển EMR có cụm ngoại tuyến, Spark History Server liên tục.

Tạo luồng công việc đa dạng

Apache Spark chứa một số thư viện để giúp xây dựng các ứng dụng cho machine learning (MLlib), xử lý luồng dữ liệu (Spark Streaming) và xử lý biểu đồ (GraphX). Các thư viện này được tích hợp chặt chẽ trong hệ sinh thái Spark và chúng có thể được tận dụng ngay để giải quyết nhiều trường hợp sử dụng khác nhau. Ngoài ra, bạn có thể sử dụng các khung về deep learning như Apache MXNet với các ứng dụng Spark của bạn. Việc tích hợp với AWS Step Functions cho phép bạn thêm quy trình tự động hóa và phát hành quy trình làm việc serverless vào các ứng dụng của mình.

Tích hợp với bộ tính năng Amazon EMR

Gửi các công việc của Apache Spark với EMR Step API, sử dụng Spark với EMRFS để truy cập trực tiếp dữ liệu trong S3, tiết kiệm chi phí bằng cách sử dụng công suất EC2 Spot, sử dụng Auto Scaling được quản lý toàn phần để tự động thêm và loại bỏ công suất và khởi chạy các cụm hoạt động tạm thời hoặc trong thời gian dài để phù hợp với khối lượng công việc của bạn. Bạn cũng có thể dễ dàng cấu hình mã hóa Spark và xác thực bằng Kerberos thông qua việc sử dụng cấu hình bảo mật của EMR. Ngoài ra, bạn có thể sử dụng Danh mục dữ liệu AWS Glue để lưu trữ siêu dữ liệu bảng SQL Spark hoặc sử dụng Amazon SageMaker với các đường dẫn dữ liệu machine learning Spark của bạn. EMR cài đặt và quản lý Spark trên Hadoop YARN và bạn cũng có thể thêm các ứng dụng dữ liệu lớn khác trên cụm của mình. EMR với Apache Hudi cho phép bạn quản lý hiệu quả hơn việc thu thập dữ liệu thay đổi (CDC) và trợ giúp với các quy định về quyền riêng tư như GDPR và CCPA bằng cách đơn giản hóa việc xóa hồ sơ. Nhấp vào đây để biết thêm chi tiết về các tính năng của EMR.

Trường hợp sử dụng

Xử lý luồng dữ liệu

Sử dụng và xử lý dữ liệu theo thời gian thực từ Amazon Kinesis, Apache Kafka hoặc các luồng dữ liệu khác bằng Spark Streaming trên EMR. Thực hiện các phân tích luồng dữ liệu theo cách có dung sai cao và ghi kết quả lên S3 hoặc trên cụm HDFS.

Machine learning

Apache Spark trên EMR cung cấp MLlib cho các thuật toán machine learning có khả năng thay đổi quy mô hoặc bạn có thể tự sử dụng các thư viện của mình. Bằng cách lưu trữ các bộ dữ liệu trong bộ nhớ khi thực hiện một công việc, Spark mang đến hiệu năng tuyệt vời cho các truy vấn lặp lại thường gặp trong khối lượng công việc machine learning.

SQL tương tác

Sử dụng Spark SQL cho các truy vấn tương tác, có độ trễ thấp với SQL hoặc HiveQL. Spark trên EMR có thể tận dụng EMRFS, vì vậy, bạn có quyền truy cập vào bộ dữ liệu của mình trong S3, khi cần. Ngoài ra, bạn có thể sử dụng EMR Notebooks, máy tính xách tay Zeppelin hoặc công cụ BI thông qua kết nối ODBC và JDBC.

Thành công của khách hàng

Yelp

Yelp

Nhóm nhắm mục tiêu quảng cáo của Yelp tạo ra các mô hình dự đoán để xác định khả năng người dùng tương tác với một quảng cáo. Bằng cách sử dụng Apache Spark trên Amazon EMR để xử lý lượng dữ liệu lớn nhằm giúp huấn luyện các mô hình machine learning, Yelp đã tăng doanh thu và tỷ lệ nhấp chuột vào quảng cáo.

The Washington Post

The Washington Post

The Washington Post sử dụng Apache Spark trên Amazon EMR để xây dựng các mô hình hỗ trợ công cụ đề xuất của trang web nhằm tăng sự gắn kết và hài lòng của người đọc. Các mô hình này tận dụng khả năng kết nối hiệu năng của Amazon EMR với Amazon S3 để cập nhật các mô hình gần theo thời gian thực.

Intent Media

Intent Media

Intent Media vận hành một nền tảng để quảng cáo trên các trang web thương mại du lịch. Nhóm dữ liệu sử dụng Apache Spark và MLlib trên Amazon EMR để thu nạp hàng terabyte dữ liệu thương mại điện tử hàng ngày và sử dụng thông tin này để sử dụng cho các dịch vụ quyết định nhằm tối ưu hóa doanh thu của khách hàng. Nhấp vào đây để tìm hiểu thêm

Krux

Krux

Là một phần của Nền tảng quản lý dữ liệu cho thông tin chi tiết của khách hàng, Krux chạy machine learning và xử lý chung khối lượng công việc bằng cách sử dụng Apache Spark. Krux sử dụng các cụm Amazon EMR tạm thời với công suất Amazon EC2 Spot để tiết kiệm chi phí và sử dụng Amazon S3 với EMRFS như một lớp dữ liệu cho Apache Spark.

Đọc thêm »

GumGum

GumGum

GumGum, nền tảng quảng cáo theo hình ảnh và trên màn hình, sử dụng Spark trên Amazon EMR để dự báo tài nguyên quảng cáo, xử lý nhật ký nhấp chuột và phân tích đặc biệt dữ liệu phi cấu trúc trong Amazon S3. Những cải tiến về hiệu năng của Spark đã giúp GumGum tiết kiệm thời gian và tiền bạc cho những luồng công việc này.

Đọc thêm »

Hearst

Hearst Corporation

Hearst Corporation là một công ty truyền thông và thông tin đa dạng lớn, có các khách hàng xem nội dung trên hơn 200 thuộc tính web. Sử dụng Apache Spark Streaming trên Amazon EMR, nhân viên biên tập của Hearst có thể giữ nhịp thời gian thực về các bài viết đang hoạt động tốt và chủ đề nào đang thịnh hành.

Đọc thêm »

CrowdStrike

CrowdStrike

CrowdStrike cung cấp bảo vệ điểm cuối để ngăn chặn vi phạm. Họ sử dụng Amazon EMR với Spark để xử lý hàng trăm terabyte dữ liệu sự kiện và tổng hợp dữ liệu thành các mô tả hành vi cấp cao hơn trên máy chủ. Từ dữ liệu đó, CrowdStrike có thể kéo dữ liệu sự kiện lại với nhau và xác định sự hiện diện của hoạt động độc hại.

Đọc thêm »

Tìm hiểu thêm về giá của Amazon EMR

Truy cập trang giá
Bạn đã sẵn sàng xây dựng chưa?
Bắt đầu với Amazon EMR
Bạn có thêm câu hỏi?
Hãy liên hệ với chúng tôi