Thông tin chung

Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink là gì?
Với Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn có thể chuyển đổi và phân tích việc truyền liên tục dữ liệu theo thời gian thực nhờ Apache Flink. Apache Flink là một khung và công cụ mã nguồn mở có chức năng xử lý luồng dữ liệu. Dịch vụ được quản lý của Amazon dành cho Apache Flink giúp giảm bớt sự phức tạp trong việc xây dựng, quản lý và tích hợp các ứng dụng Apache Flink với các dịch vụ AWS khác.
 
Dịch vụ được quản lý của Amazon dành cho Apache Flink đảm nhiệm mọi công việc cần thiết để liên tục chạy các ứng dụng truyền liên tục và tự động điều chỉnh quy mô sao cho phù hợp với khối lượng và thông lượng dữ liệu đến. Với Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn sẽ không phải quản lý máy chủ, không phải trả phí tối thiểu hoặc chi phí thiết lập, cũng như chỉ phải trả tiền cho các tài nguyên mà ứng dụng truyền liên tục của bạn sử dụng.
 
Câu hỏi: Xử lý luồng theo thời gian thực là gì và tại sao tôi cần nó?
Do sự phát triển bùng nổ của các nguồn dữ liệu thời gian thực, các công ty tải nhập dữ liệu nhanh hơn bao giờ hết. Cho dù bạn đang xử lý dữ liệu bản ghi từ các ứng dụng di động và web, mua dữ liệu từ các nền tảng thương mại điện tử hoặc dữ liệu cảm biến từ các thiết bị IoT, việc tải nhập dữ liệu thời gian thực sẽ giúp bạn tìm hiểu những hành động mà khách hàng, tổ chức và doanh nghiệp của bạn đang thực hiện ngay lúc này.
 
Hỏi: Tôi có thể làm gì với Dịch vụ được quản lý của Amazon dành cho Apache Flink?
Bạn có thể sử dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink cho nhiều trường hợp sử dụng để xử lý dữ liệu liên tục, nhận thông tin chuyên sâu trong vài giây hoặc vài phút thay vì chờ đợi nhiều ngày hoặc thậm chí là nhiều tuần. Dịch vụ được quản lý của Amazon dành cho Apache Flink cho phép bạn nhanh chóng xây dựng các ứng dụng xử lý luồng toàn diện để phân tích bản ghi, phân tích vùng nhấp chuột, Internet vạn vật (IoT), công nghệ quảng cáo, chơi trò chơi, v.v. Bốn trường hợp sử dụng phổ biến nhất là truyền liên tục dữ liệu dưới hình thức trích xuất-chuyển đổi-tải (ETL), tạo chỉ số liên tục, phân tích phản hồi theo thời gian thực và truy vấn tương tác các luồng dữ liệu.
 
Truyền liên tục ETL
Với các ứng dụng truyền liên tục ETL, bạn có thể làm sạch, làm phong phú, sắp xếp và chuyển đổi dữ liệu thô trước khi tải hồ dữ liệu hoặc kho dữ liệu của mình theo thời gian thực, cắt giảm hoặc loại bỏ các bước xử lý ETL hàng loạt. Các ứng dụng này có thể làm đệm cho các bản ghi nhỏ vào các tệp lớn hơn trước khi phân phối và thực hiện các tác vụ kết hợp phức tạp trên khắp các luồng và bảng. Ví dụ: bạn có thể xây dựng một ứng dụng liên tục đọc dữ liệu cảm biến IoT được lưu trữ trong Dịch vụ truyền được quản lý của Amazon dành cho Apache Kafka (Amazon MSK), sắp xếp dữ liệu theo loại cảm biến, xóa dữ liệu trùng lặp, chuẩn hóa dữ liệu theo một lược đồ định sẵn và sau đó phân phối dữ liệu đến Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3).
 
Tạo số liệu liên tục
Với các ứng dụng có chức năng tạo số liệu liên tục, bạn có thể theo dõi và hiểu xem dữ liệu của mình đang thay đổi theo xu hướng nào theo thời gian. Các ứng dụng của bạn có thể tổng hợp dữ liệu truyền liên tục thành những thông tin quan trọng và tích hợp liền mạch vào những cơ sở dữ liệu báo cáo và dịch vụ giám sát nhằm phục vụ các ứng dụng và người dùng của bạn theo thời gian thực. Với Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn có thể sử dụng mã Apache Flink (viết bằng Java, Scala, Python hoặc SQL) để liên tục tạo phân tích chuỗi thời gian theo các khoảng thời gian. Ví dụ: bạn có thể xây dựng bảng xếp hạng trực tiếp cho một trò chơi di động bằng cách tính toán những người chơi giỏi nhất theo mỗi phút và sau đó gửi dữ liệu này đến Amazon DynamoDB. Bạn cũng có thể theo dõi lưu lượng truy cập vào trang web của mình bằng cách tính số lượng khách duy nhất truy cập vào trang web sau mỗi 5 phút, sau đó gửi kết quả đã xử lý đến Amazon Redshift.
 
Phân tích phản hồi theo thời gian thực
Các ứng dụng phân tích phản hồi theo thời gian thực sẽ gửi cảnh báo hoặc thông báo theo thời gian thực khi các chỉ số nhất định đạt đến một ngưỡng định trước, hoặc trong các trường hợp phức tạp hơn khi ứng dụng của bạn phát hiện sự bất thường bằng cách sử dụng thuật toán máy học (ML). Với những ứng dụng này, bạn có thể phản hồi ngay lập tức với những thay đổi trong doanh nghiệp của mình theo thời gian thực, ví dụ như dự đoán việc người dùng từ bỏ trong ứng dụng di động và xác định các hệ thống bị xuống cấp. Ví dụ: một ứng dụng có thể tính toán tính khả dụng hoặc tỷ lệ thành công của một API tương tác trực tiếp với khách hàng theo thời gian và gửi kết quả đó đến Amazon CloudWatch. Bạn có thể xây dựng một ứng dụng khác để tìm kiếm những sự kiện đáp ứng được các tiêu chí nhất định, sau đó tự động thông báo cho những khách hàng phù hợp bằng Luồng dữ liệu Amazon Kinesis và Dịch vụ thông báo đơn giản của Amazon (Amazon SNS).
 
Phân tích tương tác các luồng dữ liệu
Phân tích tương tác giúp bạn truyền phát việc khám phá dữ liệu theo thời gian thực. Với các truy vấn hoặc chương trình đặc thù, bạn có thể kiểm tra các luồng từ Amazon MSK hoặc Luồng dữ liệu Amazon Kinesis và trực quan hóa dữ liệu trong các luồng đó. Ví dụ: bạn có thể xem một số liệu tính toán ra giá trị trung bình trong một khoảng thời gian theo thời gian thực hoạt động như thế nào, sau đó, gửi số liệu tổng hợp được đến đích bạn chọn. Phân tích tương tác cũng hữu ích trong việc phát triển lặp lại của các ứng dụng xử lý luồng. Các truy vấn mà bạn xây dựng sẽ cập nhật liên tục khi có dữ liệu mới đến. Với Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn có thể triển khai các truy vấn này để chúng chạy liên tục cùng với tính năng tự động điều chỉnh quy mô và sao lưu trạng thái bền vững đã bật. 
 

Bắt đầu

Câu hỏi: Làm cách nào để tôi bắt đầu sử dụng các ứng dụng Apache Flink dành cho Dịch vụ được quản lý của Amazon dành cho Apache Flink?
Đăng nhập vào bảng điều khiển của Dịch vụ được quản lý của Amazon dành cho Apache Flink và tạo một ứng dụng xử lý luồng mới. Bạn cũng có thể sử dụng AWS CLI và AWS SDK. Sau khi bạn tạo một ứng dụng, hãy chuyển đến môi trường phát triển tích hợp tùy chọn, kết nối với AWS và cài đặt các thư viện Apache Flink mã nguồn mở và AWS SDK bằng ngôn ngữ tùy chọn. Apache Flink là một khung và công cụ mã nguồn mở có chức năng xử lý luồng dữ liệu và AWS SDK. Các thư viện có thể mở rộng bao gồm hơn 25 toán tử xử lý luồng được xây dựng sẵn, chẳng hạn như cửa sổ và tổng hợp, cũng như các tích hợp dịch vụ AWS như Amazon MSK, Luồng dữ liệu Amazon Kinesis, Amazon DynamoDB và Firehose dữ liệu Amazon Kinesis. Sau khi xây dựng, hãy tải mã của bạn lên Dịch vụ được quản lý của Amazon dành cho Apache Flink. Sau đó, dịch vụ này sẽ xử lý mọi thao tác cần thiết để chạy liên tục các ứng dụng theo thời gian thực, bao gồm tự động điều chỉnh quy mô để phù hợp với khối lượng và thông lượng dữ liệu đến của bạn. 
 
Câu hỏi: Làm thế nào để tôi bắt đầu sử dụng các ứng dụng Apache Beam dành cho Dịch vụ được quản lý của Amazon dành cho Apache Flink?
Việc sử dụng Apache Beam để tạo ra ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink cũng rất giống với việc bắt đầu sử dụng Apache Flink. Bạn có thể làm theo các hướng dẫn như đã giải đáp ở câu hỏi trên. Hãy đảm bảo rằng bạn cài đặt mọi thành phần cần thiết để các ứng dụng chạy trên Apache Beam, làm theo hướng dẫn trong Hướng dẫn dành cho nhà phát triển. Lưu ý rằng Dịch vụ được quản lý của Amazon dành cho Apache Flink chỉ hỗ trợ Java SDK khi chạy trên Apache Beam. 
 
Câu hỏi: Làm cách nào để tôi bắt đầu sử dụng Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink?
Bạn có thể bắt đầu từ bảng điều khiển của Dịch vụ được quản lý của Amazon dành cho Apache Flink và tạo sổ tay Studio mới. Khi khởi động sổ tay, bạn có thể mở nó trong Apache Zeppelin để ngay lập tức viết mã bằng ngôn ngữ SQL, Python hoặc Scala. Bạn có thể phát triển ứng dụng theo cách tương tác bằng giao diện sổ tay dành cho Luồng dữ liệu Amazon Kinesis, Amazon MSK và Amazon S3 bằng cách sử dụng các thành phần tích hợp sẵn và các nguồn và đích đến có hỗ trợ Apache Flink khác, kèm theo các bộ kết nối tùy chỉnh. Bạn có thể sử dụng tất cả các toán tử mà Apache Flink hỗ trợ trong Flink SQL và API bảng để thực hiện truy vấn luồng dữ liệu đặc thù và phát triển ứng dụng xử lý luồng của bạn. Khi đã sẵn sàng, chỉ với vài bước, bạn sẽ có thể xây dựng và đưa mã của mình lên một ứng dụng xử lý luồng chạy liên tục với tính năng tự động điều chỉnh quy mô và trạng thái bền vững. 
 
Câu hỏi: Các giới hạn của Dịch vụ được quản lý của Amazon dành cho Apache Flink là gì?
Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể điều chỉnh quy mô linh hoạt cho ứng dụng của bạn sao cho phù hợp với thông lượng dữ liệu của luồng nguồn cũng như độ phức tạp của truy vấn trong hầu hết các tình huống. Để biết thông tin chi tiết về giới hạn dịch vụ đối với các ứng dụng Apache Flink, hãy truy cập phần Giới hạn trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink. 
 
Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink có hỗ trợ đăng ký lược đồ không?
Có, bằng cách sử dụng Bộ kết nối DataStream của Apache Flink, các ứng dụng thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể sử dụng Sổ đăng ký lược đồ AWS Glue, một tính năng phi máy chủ của AWS Glue. Bạn có thể tích hợp Apache Kafka, Amazon MSK và Luồng dữ liệu Amazon Kinesis dưới dạng nơi gom dữ liệu hoặc nguồn dữ liệu, với khối lượng công việc Dịch vụ được quản lý của Amazon dành cho Apache Flink. Truy cập Hướng dẫn sử dụng Sổ đăng ký lược đồ của AWS Glue dành cho nhà phát triển để bắt đầu và tìm hiểu thêm. 

Khái niệm chính

Câu hỏi: Ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink là gì?
Một ứng dụng là một thực thể thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink mà bạn dùng để làm việc. Các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink liên tục đọc và xử lý dữ liệu truyền liên tục theo thời gian thực. Bạn viết mã ứng dụng bằng một ngôn ngữ hỗ trợ Apache Flink để xử lý dữ liệu truyền liên tục đến và tạo dữ liệu đầu ra. Sau đó, Dịch vụ được quản lý của Amazon dành cho Apache Flink sẽ viết dữ liệu đầu ra này vào một đích đến đã được cấu hình.
 
Mỗi ứng dụng bao gồm ba thành phần chính:
 
  1. Đầu vào: Đầu vào là nguồn truyền liên tục cho ứng dụng của bạn. Trong cấu hình đầu vào, bạn ánh xạ các nguồn truyền liên tục tới các luồng dữ liệu. Dữ liệu được truyền từ nguồn dữ liệu vào luồng dữ liệu. Bạn xử lý dữ liệu từ những luồng dữ liệu này bằng mã ứng dụng, sau đó gửi dữ liệu đã xử lý tới các luồng dữ liệu hoặc đích đến tiếp theo. Bạn thêm các đầu vào vào trong mã ứng dụng dành cho các ứng dụng Apache Flink và sổ tay Studio và thông qua API cho các ứng dụng thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink. 
  2. Mã ứng dụng: Mã ứng dụng là một loạt các toán tử của Apache Flink có chức năng xử lý đầu vào và tạo ra đầu ra. Ở dạng tối giản, mã ứng dụng có thể là một toán tử Apache Flink đơn lẻ, đọc từ luồng dữ liệu có liên kết bằng một nguồn truyền liên tục và ghi vào một luồng dữ liệu khác có liên kết bằng đầu ra. Đối với sổ tay Studio, đây có thể là một truy vấn lựa chọn Flink SQL đơn giản, trong đó kết quả được hiển thị trong ngữ cảnh được giới hạn trong sổ tay. Bạn có thể viết mã Apache Flink bằng các ngôn ngữ được hỗ trợ cho các ứng dụng thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink hoặc sổ tay Studio.
  3. Đầu ra: Sau đó, bạn có thể tùy ý cấu hình cho dữ liệu đầu ra của ứng dụng để lưu trữ lâu dài dữ liệu này tới đích đến bên ngoài. Bạn thêm các đầu ra này vào trong mã ứng dụng dành cho các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink và sổ tay Studio. 

Câu hỏi: Mã ứng dụng nào được hỗ trợ?

Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ các ứng dụng được xây dựng bằng Java, Scala và Python nhờ các thư viện Apache Flink mã nguồn mở và mã tùy chỉnh của riêng bạn. Dịch vụ được quản lý của Amazon dành cho Apache Flink cũng hỗ trợ các ứng dụng được xây dựng bằng Java nhờ các thư viện Apache Beam mã nguồn mở và mã khách hàng của riêng bạn. Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ mã được xây dựng bằng SQL, Python và Scala tương thích với Apache Flink.

Quản lý các ứng dụng

Câu hỏi: Làm thế nào để giám sát hoạt động và hiệu năng của các ứng dụng thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink?
AWS cung cấp nhiều công cụ khác nhau mà bạn có thể sử dụng để giám sát các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink, bao gồm quyền truy cập vào Bảng điều khiển Flink cho các ứng dụng Apache Flink. Bạn có thể cấu hình một số công cụ này để chúng thực hiện công việc giám sát cho bạn. Để biết thêm thông tin về cách giám sát ứng dụng của bạn, hãy khám phá các hướng dẫn dành cho nhà phát triển sau đây: 
 

Câu hỏi: Làm thế nào để tôi quản lý và kiểm soát quyền truy cập vào các ứng dụng thuộc Dịch vụ được quản lý của Amazon dành cho Apache Flink?

Dịch vụ được quản lý của Amazon dành cho Apache Flink cần được cấp quyền để đọc các bản ghi từ nguồn dữ liệu truyền liên tục mà bạn chỉ định trong ứng dụng của mình. Dịch vụ được quản lý của Amazon dành cho Apache Flink cũng cần được cấp quyền để ghi đầu ra của ứng dụng đó vào các đích đến được chỉ định trong cấu hình đầu ra của ứng dụng. Bạn có thể cấp các quyền này bằng cách tạo ra các vai trò Quản lý danh tính và quyền truy cập trong AWS (IAM) mà Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể đảm nhận. Các quyền mà bạn cấp cho vai trò này sẽ xác định những điều mà Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể thực hiện khi dịch vụ này đảm nhận vai trò đó. Để biết thêm thông tin, hãy tham khảo những hướng dẫn dành cho nhà phát triển sau đây:

  • Cấp quyền trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink.
  • Cấp quyền trong Hướng dẫn dành cho nhà phát triển về Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink điều chỉnh quy mô ứng dụng của tôi như thế nào?

Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể điều chỉnh quy mô linh hoạt cho ứng dụng của bạn sao cho phù hợp với thông lượng dữ liệu của luồng nguồn cũng như độ phức tạp của truy vấn trong hầu hết các tình huống. Dịch vụ được quản lý của Amazon dành cho Apache Flink cung cấp dung lượng dưới dạng các KPU Amazon. Một KPU cung cấp cho bạn 1 vCPU và bộ nhớ 4 GB. 

Đối với các ứng dụng Apache Flink và sổ tay Studio, Dịch vụ được quản lý của Amazon dành cho Apache Flink chỉ định 50 GB dung lượng lưu trữ cho ứng dụng đang chạy trên mỗi KPU mà ứng dụng của bạn sử dụng cho các điểm kiểm tra, đồng thời có sẵn để bạn sử dụng thông qua ổ đĩa tạm thời. Điểm kiểm tra là một bản sao lưu được cập nhật của một ứng dụng đang chạy, được dùng để khôi phục ngay lập tức sau khi ứng dụng bị gián đoạn hoạt động. Bạn cũng có thể kiểm soát việc thực thi song song cho các tác vụ ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink (ví dụ như đọc từ một nguồn hoặc thực thi toán tử) bằng cách sử dụng các tham số Parallelism (xử lý song song) và ParallelismPerKPU trong API. Phương pháp xử lý song song xác định số phiên bản của cùng một tác vụ đang diễn ra đồng thời. Tất cả các toán tử, nguồn và nơi gom dữ liệu đều chạy với một tham số xử lý song song được xác định theo mặc định. Theo mặc định, hình thức xử lý song song theo từng KPU xác định số lượng tác vụ song song có thể được lên lịch cho mỗi KPU của ứng dụng là một. Để biết thêm thông tin, hãy xem phần Điều chỉnh quy mô trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink. 
 
Hỏi: Các phương pháp hay nhất liên quan đến việc xây dựng và quản lý các ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink là gì?
Để biết thông tin về các phương pháp hay nhất cho Apache Flink, hãy xem phần  Phương pháp hay nhất trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink. Phần này bao gồm các phương pháp hay nhất về khả năng chịu lỗi, hiệu năng, tạo bản ghi, viết mã và hơn thế nữa. 
 
Để biết thông tin về các phương pháp hay nhất cho Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink, hãy xem phần Phương pháp hay nhất trong Hướng dẫn dành cho nhà phát triển về Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink. Ngoài các phương pháp hay nhất, phần này bao gồm cả các mẫu dành cho ứng dụng SQL, Python và Scala, các yêu cầu đối với việc triển khai mã dưới dạng ứng dụng xử lý luồng chạy liên tục, hiệu năng, tạo bản ghi và hơn thế nữa.
 
Câu hỏi: Tôi có thể truy cập các tài nguyên đằng sau Amazon VPC bằng một ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink không?
Có. Bạn có thể truy cập các tài nguyên đằng sau một Amazon VPC. Bạn có thể tìm hiểu cách cấu hình ứng dụng của mình để truy cập vào VPC trong phần Sử dụng Amazon VPC của Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink.
 
Câu hỏi: Một ứng dụng đơn lẻ của Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể truy cập vào nhiều VPC không?
Không. Nếu có nhiều mạng con được chỉ định, tất cả các mạng con đó phải trong cùng một VPC. Bạn có thể kết nối đến các VPC khác bằng cách kết nối ngang hàng các VPC của bạn.
 
Câu hỏi: Ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink được kết nối với VPC có thể truy cập internet và các điểm cuối của dịch vụ AWS không?
Các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink và sổ tay Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink được cấu hình để truy cập vào tài nguyên trong một VPC cụ thể sẽ không có quyền truy cập vào Internet theo cấu hình mặc định. Bạn có thể tìm hiểu cách cấu hình quyền truy cập Internet cho ứng dụng của mình trong phần Truy cập dịch vụ và Internet của Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Định giá và thanh toán

Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink có giá bao nhiêu?
Với Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn chỉ phải trả tiền cho những gì bạn sử dụng. Không cần phải cung cấp nguồn lực hay trả trước các chi phí liên quan đến Dịch vụ được quản lý của Amazon dành cho Apache Flink. 

Bạn bị tính phí theo mức phí theo giờ dựa trên số lượng KPU Amazon dùng để chạy ứng dụng truyền liên tục của bạn. Một KPU là một đơn vị công suất xử lý truyền liên tục, bao gồm khả năng điện toán 1 vCPU và bộ nhớ 4 GB. Dịch vụ được quản lý của Amazon dành cho Apache Flink tự động điều chỉnh số KPU cần thiết cho ứng dụng xử lý truyền liên tục của bạn khi nhu cầu của bộ nhớ và điện toán thay đổi theo độ phức tạp khi xử lý và thông lượng dữ liệu truyền liên tục được xử lý. 
 
Đối với các ứng dụng Apache Flink và Apache Beam, bạn bị tính phí thêm một KPU cho mỗi ứng dụng để điều phối ứng dụng. Các ứng dụng Apache Flink và Apache Beam cũng bị tính phí đối với dung lượng lưu trữ ứng dụng chạy và các bản sao lưu ứng dụng bền vững. Dung lượng lưu trữ của ứng dụng đang chạy được sử dụng cho các tính năng xử lý theo trạng thái trên Dịch vụ được quản lý của Amazon dành cho Apache Flink và bị tính phí mỗi GB-tháng. Bản sao lưu ứng dụng bền vững là một tùy chọn, được tính phí theo GB-tháng và cung cấp điểm khôi phục về thời điểm trước đó cho ứng dụng. 
 
Đối với Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink, ở chế độ phát triển hoặc tương tác, bạn phải thanh toán thêm cho một KPU để điều phối ứng dụng và 1 KPU để phát triển tương tác. Bạn cũng sẽ phải thanh toán cho dung lượng lưu trữ của ứng dụng đang chạy. Bạn không phải thanh toán cho các bản sao lưu ứng dụng bền vững.
 
Để biết thêm thông tin về giá, hãy xem trang định giá của Dịch vụ được quản lý của Amazon dành cho Apache Flink.
 
Câu hỏi: Tôi có bị tính phí cho ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink đang chạy nhưng không xử lý bất kỳ dữ liệu nào từ nguồn không?
Đối với các ứng dụng Apache Flink và Apache Beam, bạn phải thanh toán tối thiểu cho 2 KPU và 50 GB dung lượng lưu trữ ứng dụng đang chạy nếu ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink của bạn đang chạy.
 
Đối với sổ tay Studio của Dịch vụ được quản lý của Amazon dành cho Apache Flink, bạn phải thanh toán tối thiểu 3 KPU và 50 GB dung lượng lưu trữ ứng dụng đang chạy nếu ứng dụng của bạn đang hoạt động.
 
Câu hỏi: Ngoài các chi phí của Dịch vụ được quản lý của Amazon dành cho Apache Flink, liệu có khoản chi phí phát sinh nào khác không?
Dịch vụ được quản lý của Amazon dành cho Apache Flink là giải pháp xử lý luồng được quản lý toàn diện, độc lập với nguồn truyền liên tục mà dịch vụ này đọc dữ liệu và các đích đến mà dịch vụ này ghi dữ liệu đã xử lý. Các dịch vụ mà bạn dùng để đọc dữ liệu và ghi dữ liệu vào ứng dụng của mình sẽ được lập hóa đơn riêng biệt.
 
Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink có sẵn trong Bậc miễn phí của AWS không?
Không. Dịch vụ được quản lý của Amazon dành cho Apache Flink hiện không có sẵn trong Bậc miễn phí của AWS.
Hỏi: Apache Flink là gì?
Apache Flink là một khung và công cụ nguồn mở có chức năng xử lý dữ liệu hàng loạt hoặc theo luồng. Apache Flink giúp cho việc xây dựng các ứng dụng truyền liên tục trở nên dễ dàng do khả năng cung cấp các toán tử mạnh mẽ và giải quyết các vấn đề cốt lõi về truyền liên tục như xử lý trùng lặp. Apache Flink cung cấp các tính năng phân phối dữ liệu, giao tiếp và khả năng chịu lỗi dành cho việc tính toán phân phối trên các luồng dữ liệu.
 
Câu hỏi: Làm thế nào để tôi phát triển các ứng dụng?
Bạn có thể bắt đầu bằng cách tải xuống các thư viện nguồn mở bao gồm AWS SDK, Apache Flink và bộ kết nối cho dịch vụ AWS. Xem hướng dẫn về cách tải về các thư viện và tạo ra ứng dụng đầu tiên trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink.
 
Câu hỏi: Mã ứng dụng của tôi trông như thế nào?
Bạn viết mã Apache Flink bằng cách sử dụng luồng dữ liệu và toán tử luồng. Luồng dữ liệu ứng dụng là cấu trúc dữ liệu bạn thực hiện xử lý bằng cách sử dụng mã của bạn. Dữ liệu liên tục truyền từ nguồn vào luồng dữ liệu ứng dụng. Một hoặc nhiều toán tử luồng được sử dụng để xác định quá trình xử lý của bạn trên các luồng dữ liệu ứng dụng, bao gồm chuyển đổi, phân vùng, tổng hợp, kết hợp và cửa sổ. Các luồng dữ liệu và toán tử có thể được kết nối với nhau trong chuỗi nối tiếp và chuỗi song song. Sau đây là một ví dụ ngắn về việc sử dụng mã giả.
DataStream <GameEvent> rawEvents = env.addSource(
 New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
 rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId, 
   event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
            .keyBy(1)
            .window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
            .apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
Câu hỏi: Làm cách nào để tôi sử dụng toán tử Apache Flink?
Các toán tử nhận luồng dữ liệu của ứng dụng làm đầu vào và gửi các dữ liệu đã qua xử lý tới một luồng dữ liệu ứng dụng dưới dạng đầu ra. Các toán tử có thể được kết nối để xây dựng các ứng dụng với nhiều bước và không đòi hỏi kiến thức chuyên sâu về hệ thống phân tán để triển khai và vận hành.
 
Câu hỏi: Những toán tử nào được hỗ trợ?
Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ tất cả các toán tử từ Apache Flink có thể được sử dụng để giải quyết nhiều trường hợp sử dụng, bao gồm ánh xạ, KeyBy, tổng hợp, cửa sổ, kết hợp và hơn thế nữa. Ví dụ: toán tử ánh xạ cho phép bạn thực hiện xử lý tùy ý, lấy một phần tử từ luồng dữ liệu đến và tạo ra một phần tử khác. KeyBy tổ chức dữ liệu theo logic bằng cách sử dụng một khóa được chỉ định để bạn có thể xử lý các điểm dữ liệu tương tự với nhau. Việc xử lý tổng hợp thực hiện xử lý trên nhiều khóa khác nhau như sum, min và max. Window Join sẽ kết hợp hai luồng dữ liệu lại với nhau trên một khóa và một cửa sổ cho trước. 

Bạn có thể xây dựng toán tử tùy chỉnh nếu những toán tử này không đáp ứng được nhu cầu của bạn. Bạn có thể xem thêm ví dụ trong phần Toán tử của Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink. Bạn có thể tìm thấy danh sách đầy đủ các toán tử Apache Flink trong tài liệu Apache Flink
 
Câu hỏi: Những tích hợp nào được hỗ trợ trong một ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink?
Bạn có thể thiết lập các tích hợp được dựng sẵn mà Apache Flink cung cấp bằng mã tối thiểu, hoặc xây dựng tích hợp của riêng mình để kết nối với hầu hết các nguồn dữ liệu. Các thư viện mã nguồn mở dựa trên Apache Flink có thể hỗ trợ các nguồn truyền phát liên tục và đích, hoặc nơi gom dữ liệu, để xử lý việc truyền dữ liệu. Trong đó cũng bao gồm hỗ trợ làm phong phú dữ liệu thông qua các bộ kết nối I/O không đồng bộ. Một số bộ kết nối trong đó gồm:
 
  • Nguồn dữ liệu truyền liên tục: Dịch vụ truyền được quản lý của Amazon dành cho Apache Kafka (Amazon MSK), Đích đến Luồng dữ liệu Amazon Kinesis hoặc nơi gom dữ liệu: Luồng dữ liệu Amazon Kinesis
  • Firehose dữ liệu Amazon Kinesis, Amazon DynamoDB, Dịch vụ Elasticsearch của Amazon và Amazon S3 (thông qua tích hợp nơi gom tệp)

Hỏi: Các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể sao chép dữ liệu qua các luồng và chủ đề không?

Có. Bạn có thể sử dụng các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink để sao chép dữ liệu giữa Luồng dữ liệu Amazon Kinesis, Amazon MSK và các hệ thống khác. Một ví dụ được cung cấp trong tài liệu của chúng tôi cho thấy cách đọc từ một chủ đề Amazon MSK và viết vào một chủ đề khác.
 
Hỏi: Tích hợp tùy chỉnh có được hỗ trợ không?
Bạn có thể thêm nguồn hoặc đích vào ứng dụng của mình bằng cách xây dựng dựa trên một tập hợp các công cụ nguyên sơ cho phép bạn đọc và ghi từ các tệp, thư mục, socket hoặc bất cứ thứ gì mà bạn có thể truy cập qua internet. Apache Flink cung cấp các công cụ nguyên sơ này cho các nguồn dữ liệu nơi gom dữ liệu. Các công cụ nguyên sơ đi kèm với các cấu hình như khả năng đọc và ghi dữ liệu liên tục hoặc một lần, không đồng bộ hoặc đồng bộ, v.v. Ví dụ: bạn có thể thiết lập một ứng dụng để đọc liên tục từ Amazon S3 bằng cách mở rộng tích hợp nguồn dựa trên tệp hiện có.
 
Câu hỏi: Các ứng dụng Dịch vụ được quản lý của Amazon dành cho Apache Flink cung cấp mô hình phân phối và xử lý nào?
Các ứng dụng Apache Flink trong Dịch vụ được quản lý của Amazon dành cho Apache Flink sử dụng một mô hình phân phối chính xác một lần nếu có một ứng dụng được xây dựng bằng các toán tử lũy đẳng, bao gồm các nguồn và nơi gom dữ liệu. Điều này có nghĩa là dữ liệu được xử lý tác động đến kết quả hạ lưu một lần và chỉ một lần.
 
Theo mặc định, các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink sử dụng ngữ nghĩa chính xác một lần của Apache Flink. Ứng dụng của bạn hỗ trợ ngữ nghĩa xử lý chính xác một lần nếu bạn thiết kế các ứng dụng của mình bằng các nguồn, toán tử và nơi gom dữ liệu sử dụng ngữ nghĩa chính xác một lần của Apache Flink
 
Câu hỏi: Tôi có quyền truy cập vào bộ nhớ cục bộ từ bộ nhớ ứng dụng của mình không?
Có. Các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink cung cấp cho ứng dụng của bạn 50 GB dung lượng lưu trữ ứng dụng đang chạy trên mỗi KPU. Dịch vụ được quản lý của Amazon dành cho Apache Flink điều chỉnh quy mô của dung lượng lưu trữ phù hợp với ứng dụng của bạn. Dung lượng lưu trữ của ứng dụng đang chạy được dùng để lưu trạng thái của ứng dụng bằng các điểm kiểm tra. Bạn cũng có thể truy cập vào mã ứng dụng để sử dụng làm ổ đĩa tạm thời cho mục đích lưu dữ liệu vào bộ nhớ đệm hoặc bất kỳ mục đích nào khác. Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể xóa dữ liệu chưa được lưu qua các điểm kiểm tra (như toán tử, nguồn, nơi gom dữ liệu) vào bất kỳ lúc nào khỏi dung lượng lưu trữ của ứng dụng đang chạy. Tất cả các dữ liệu được lưu trữ trong dung lượng lưu trữ của ứng dụng đang chạy sẽ được mã hóa ở trạng thái nghỉ.
 
Câu hỏi: Dịch vụ được quản lý của Amazon dành cho Apache Flink tự động sao lưu ứng dụng của tôi như thế nào?
Dịch vụ được quản lý của Amazon dành cho Apache Flink tự động sao lưu trạng thái của ứng dụng đang chạy bằng cách sử dụng các điểm kiểm tra và ảnh chụp nhanh. Các điểm kiểm tra sẽ lưu trạng thái hiện tại của ứng dụng và cho phép các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink khôi phục vị trí của ứng dụng nhằm cung cấp ngữ nghĩa giống như khi thực thi không có lỗi. Các điểm kiểm tra sử dụng dung lượng lưu trữ của ứng dụng đang chạy. Các điểm kiểm tra dành cho ứng của Apache Flink được cung cấp thông qua chức năng điểm kiểm tra của Apache Flink. Ảnh chụp nhanh sẽ lưu điểm khôi phục theo điểm thời gian cho các ứng dụng và sử dụng các bản sao lưu ứng dụng bền vững. Ảnh chụp nhanh cũng tương tự như các điểm lưu của Flink.
 
Câu hỏi: Ảnh chụp nhanh ứng dụng là gì?
Với ảnh chụp nhanh, bạn có thể tạo và khôi phục ứng dụng của mình về một thời điểm trong quá khứ. Nhờ đó, bạn có thể duy trì trạng thái trước đó của ứng dụng và khôi phục ứng dụng vào bất kỳ lúc nào. Bạn kiểm soát số lượng ảnh chụp nhanh bạn có tại bất kỳ thời điểm nào, từ 0 đến hàng nghìn ảnh chụp nhanh. Ảnh chụp nhanh sử dụng các bản sao lưu ứng dụng bền vững và Dịch vụ được quản lý của Amazon dành cho Apache Flink sẽ tính phí dựa trên kích thước của chúng. Theo mặc định, Dịch vụ được quản lý của Amazon dành cho Apache Flink mã hóa dữ liệu được lưu trong ảnh chụp nhanh. Bạn có thể xóa từng ảnh chụp nhanh thông qua API hoặc tất cả ảnh chụp nhanh bằng cách xóa ứng dụng của bạn.
 
Câu hỏi: Những phiên bản nào của Apache Flink được hỗ trợ?
Để tìm hiểu thêm về các phiên bản Apache Flink được hỗ trợ, hãy truy cập trang Thông báo phát hành của Dịch vụ được quản lý của Amazon dành cho Apache Flink. Trang này cũng bao gồm các phiên bản Apache Beam, Java, Scala, Python và AWS SDK mà Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ. 
 
Câu hỏi: Các ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink có thể chạy Apache Beam không?
Có, Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ các ứng dụng truyền liên tục được xây dựng bằng Apache Beam. Bạn có thể xây dựng các ứng dụng truyền liên tục Apache Beam bằng Java và chạy chúng trong các công cụ và dịch vụ khác nhau, bao gồm sử dụng Apache Flink trên Dịch vụ được quản lý của Amazon dành cho Apache Flink. Bạn có thể tìm thấy thông tin liên quan đến các phiên bản Apache Flink và Apache Beam được hỗ trợ trong Hướng dẫn dành cho nhà phát triển về Dịch vụ được quản lý của Amazon dành cho Apache Flink

Câu hỏi: Làm thế nào để tôi phát triển một ứng dụng Studio?
Bạn có thể bắt đầu từ Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink, Luồng dữ liệu Amazon Kinesis hoặc bảng điều khiển Amazon MSK chỉ bằng một vài bước để khởi chạy sổ tay phi máy chủ nhằm truy vấn luồng dữ liệu và thực hiện phân tích dữ liệu tương tác ngay lập tức.
 
Phân tích dữ liệu tương tác: Bạn có thể viết mã vào sổ tay bằng SQL, Python hoặc Scala để tương tác với dữ liệu truyền liên tục của mình, trong đó thời gian phản hồi truy vấn chỉ mất vài giây. Bạn có thể sử dụng các hình ảnh trực quan hóa sẵn có để khám phá dữ liệu, xem thông tin chuyên sâu theo thời gian thực về dữ liệu truyền liên tục của mình từ trong sổ tay, đồng thời phát triển các ứng dụng xử lý luồng được Apache Flink hỗ trợ.

Khi mã của bạn đã sẵn sàng để chạy như một ứng dụng sản xuất, bạn có thể chuyển đổi thành ứng dụng xử lý có khả năng xử lý hàng gigabyte dữ liệu mỗi giây chỉ với một bước duy nhất và không cần đến máy chủ.

Ứng dụng xử lý luồng: Khi bạn đã sẵn sàng đưa mã của mình vào sản xuất, bạn có thể xây dựng mã của mình bằng cách nhấp vào “Triển khai dưới dạng ứng dụng xử lý luồng” trong giao diện sổ tay hoặc đưa ra một lệnh duy nhất trong CLI. Studio đảm nhiệm tất cả việc quản lý cơ sở hạ tầng cần thiết để bạn chạy ứng dụng xử lý luồng trên quy mô lớn, với tính năng tự động điều chỉnh quy mô và trạng thái bền vững được bật, giống như trong ứng dụng của Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Câu hỏi: Mã ứng dụng của tôi trông như thế nào?
Bạn có thể viết mã trong sổ tay bằng ngôn ngữ tùy chọn như SQL, Python hoặc Scala bằng cách sử dụng API bảng của Apache Flink. API bảng là một API quan hệ và trừu tượng tổng quan, hỗ trợ một tập hợp các tính năng của SQL. API này cung cấp các thao tác quen thuộc, chẳng hạn như chọn, lọc, kết hợp, nhóm theo, tổng hợp, v.v. cùng với các khái niệm dành riêng cho luồng, chẳng hạn như tạo cửa sổ. Bạn sử dụng % để chỉ định ngôn ngữ sẽ được sử dụng trong một phần của sổ tay và có thể chuyển đổi giữa các ngôn ngữ. Trình thông dịch là các plugin của Apache Zeppelin, vì vậy bạn có thể chỉ định một ngôn ngữ hoặc công cụ xử lý dữ liệu cho từng phần trong sổ tay. Bạn cũng có thể xây dựng các hàm do người dùng xác định và tham chiếu chúng để cải thiện chức năng của mã.

Câu hỏi: Những thao tác SQL nào được hỗ trợ?
Bạn có thể thực hiện các thao tác SQL như sau:

  • Quét và lọc (SELECT, WHERE) 
  • Tổng hợp (GROUP BY, GROUP BY WINDOW, HAVING) 
  • Tập hợp (UNION, UNIONALL, INTERSECT, IN, EXISTS) 
  • Xếp thứ tự (ORDER BY, LIMIT) 
  • Kết hợp (INNER, OUTER, Khoảng thời gian — BETWEEN, AND, Kết hợp với các bảng tạm thời — các bảng theo dõi các thay đổi theo thời gian)
  • Top-N
  • Chống trùng lặp
  • Nhận dạng mẫu 

Một số truy vấn trong số này, chẳng hạn như GROUP BY, OUTER JOIN và Top-N là kết quả cập nhật cho dữ liệu truyền liên tục, có nghĩa là kết quả được liên tục cập nhật khi dữ liệu truyền liên tục được xử lý. Các câu lệnh DDL khác, chẳng hạn như CREATE, ALTER và DROP, cũng được hỗ trợ. Để xem danh sách đầy đủ các truy vấn và mẫu, hãy tham khảo tài liệu Truy vấn Flink Apache.

Câu hỏi: Python và Scala được hỗ trợ như thế nào?

API bảng của Apache Flink hỗ trợ Python và Scala thông qua tích hợp ngôn ngữ nhờ chuỗi Python và biểu thức Scala. Các thao tác được hỗ trợ cũng rất giống với các thao tác SQL được hỗ trợ, bao gồm chọn, xếp thứ tự, nhóm, kết hợp, lọc và tạo cửa sổ. Trong hướng dẫn dành cho nhà phát triển của chúng tôi có bao gồm danh sách đầy đủ các thao tác và mẫu.

Câu hỏi: Những phiên bản nào của Apache Flink và Apache Zeppelin được hỗ trợ?

Để tìm hiểu thêm về các phiên bản Apache Flink được hỗ trợ, hãy truy cập trang Thông báo phát hành của Dịch vụ được quản lý của Amazon dành cho Apache Flink. Trang này cũng bao gồm các phiên bản Apache Zeppelin, Apache Beam, Java, Scala, Python và AWS SDK mà Dịch vụ được quản lý của Amazon dành cho Apache Flink hỗ trợ.

Câu hỏi: Theo mặc định, những tích hợp nào được hỗ trợ trong một ứng dụng Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink?

  • Nguồn dữ liệu: Dịch vụ truyền được quản lý của Amazon dành cho Apache Kafka (Amazon MSK), Luồng dữ liệu Amazon Kinesis, Amazon S3 
  • Đích đến hoặc nơi gom dữ liệu: Amazon MSK, Luồng dữ liệu Amazon Kinesis và Amazon S3

Câu hỏi: Tích hợp tùy chỉnh có được hỗ trợ không?
Bạn có thể thiết lập cấu hình tích hợp bổ sung chỉ với một vài bước và dòng mã Apache Flink (Python, Scala hoặc Java) để xác định kết nối với tất cả các tích hợp hỗ trợ Apache Flink. Trong đó bao gồm các đích đến như Dịch vụ OpenSearch của Amazon, Amazon ElastiCache dành cho Redis, Amazon Aurora, Amazon Redshift, Amazon DynamoDB, Amazon Keyspaces, v.v. Bạn có thể đính kèm tệp thực thi cho các bộ kết nối tùy chỉnh này khi tạo hoặc thiết lập cấu hình của ứng dụng Studio Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Thỏa thuận mức dịch vụ

Câu hỏi: SLA dành cho Dịch vụ được quản lý của Amazon dành cho Apache Flink đảm bảo những gì?

Thỏa thuận mức dịch vụ (SLA) của chúng tôi đảm bảo Tỷ lệ thời gian hoạt động hàng tháng tối thiểu đạt 99,9% đối với Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Hỏi: Làm thế nào để biết tôi có đủ điều kiện nhận Tín dụng dịch vụ SLA hay không?

Bạn đủ điều kiện nhận Tín dụng dịch vụ SLA cho Dịch vụ được quản lý của Amazon dành cho Apache Flink theo SLA của Dịch vụ được quản lý của Amazon dành cho Apache Flink nếu bạn chạy một tác vụ ở nhiều Vùng sẵn sàng, trong cùng một Khu vực AWS, có Tỷ lệ phần trăm thời gian hoạt động hàng tháng dưới 99,9% trong bất kỳ chu kỳ tính phí hàng tháng nào. Để biết đầy đủ chi tiết về tất cả các điều khoản và điều kiện của SLA cũng như chi tiết về cách gửi yêu cầu, hãy truy cập trang chi tiết về SLA của Dịch vụ được quản lý của Amazon dành cho Apache Flink.

Bắt đầu sử dụng Phân tích dữ liệu Amazon Kinesis

Truy cập trang định gi&aacute; Ph&acirc;n t&iacute;ch dữ liệu Kinesis
Tính toán chi phí của bạn

Truy cập trang định giá Phân tích dữ liệu Amazon Kinesis.

Read the documentation
Tham khảo hướng dẫn bắt đầu sử dụng

Tìm hiểu cách sử dụng Phân tích dữ liệu Amazon Kinesis trong hướng dẫn từng bước dành cho SQL hoặc Apache Flink.

Bắt đầu x&acirc;y dựng trong bảng điều khiển
Bắt đầu xây dựng ứng dụng truyền liên tục

Xây dựng ứng dụng truyền liên tục đầu tiên của bạn từ bảng điều khiển của dịch vụ Phân tích dữ liệu Amazon Kinesis.