Logo Zephyrnet

Dịch vụ được quản lý của Amazon dành cho Apache Flink hiện hỗ trợ Apache Flink phiên bản 1.18 | Dịch vụ web của Amazon

Ngày:

Apache Flash là một công cụ xử lý phân tán mã nguồn mở, cung cấp các giao diện lập trình mạnh mẽ cho cả xử lý luồng và xử lý hàng loạt, với sự hỗ trợ hạng nhất cho xử lý trạng thái và ngữ nghĩa thời gian sự kiện. Apache Flink hỗ trợ nhiều ngôn ngữ lập trình, Java, Python, Scala, SQL và nhiều API với mức độ trừu tượng khác nhau, có thể được sử dụng thay thế cho nhau trong cùng một ứng dụng.

Dịch vụ được quản lý của Amazon dành cho Apache Flink, cung cấp trải nghiệm không có máy chủ, được quản lý hoàn toàn khi chạy các ứng dụng Apache Flink, hiện hỗ trợ Liên kết Apache 1.18.1, phiên bản mới nhất của Apache Flink tại thời điểm viết bài.

Trong bài đăng này, chúng tôi thảo luận về một số tính năng và khả năng mới thú vị của Apache Flink, được giới thiệu cùng với các bản phát hành chính gần đây nhất, 1.16, 1.17 và 1.18 và hiện được hỗ trợ trong Dịch vụ được quản lý cho Apache Flink.

kết nối mới

Trước khi đi sâu vào các chức năng mới của Apache Flink có sẵn với phiên bản 1.18.1, hãy khám phá các khả năng mới đến từ sự sẵn có của nhiều trình kết nối nguồn mở mới.

Tìm kiếm mở

Một chuyên dụng Tìm kiếm mở trình kết nối hiện có sẵn để đưa vào dự án của bạn, cho phép ứng dụng Apache Flink ghi dữ liệu trực tiếp vào OpenSearch mà không cần dựa vào chế độ tương thích Elaticsearch. Đầu nối này tương thích với Dịch vụ Tìm kiếm Mở của Amazon cung cấp và Dịch vụ OpenSearch không có máy chủ.

Trình kết nối mới này hỗ trợ API bảng và SQL, hoạt động với cả Java và Python, và API luồng dữ liệu, chỉ dành cho Java. Ngay lập tức, nó cung cấp các đảm bảo ít nhất một lần, đồng bộ hóa quá trình ghi với điểm kiểm tra Flink. Bạn có thể đạt được ngữ nghĩa chính xác một lần bằng cách sử dụng ID xác định và phương pháp upsert.

Theo mặc định, trình kết nối sử dụng thư viện máy khách OpenSearch phiên bản 1.x. Bạn có thể chuyển sang phiên bản 2.x bằng cách thêm các phụ thuộc chính xác.

Máy phát điện Amazon

Các nhà phát triển Apache Flink hiện có thể sử dụng trình kết nối chuyên dụng để ghi dữ liệu vào Máy phát điện Amazon. Trình kết nối này dựa trên Apache Flink AsyncSink, được phát triển bởi AWS và hiện là một phần không thể thiếu của dự án Apache Flink, nhằm đơn giản hóa việc triển khai các trình kết nối chìm hiệu quả, sử dụng các yêu cầu ghi không chặn và phân nhóm thích ứng.

Đầu nối này cũng hỗ trợ cả SQL và bảng API, Java và Python, và Dòng dữ liệu API, chỉ dành cho Java. Theo mặc định, bộ xử lý ghi theo lô để tối ưu hóa thông lượng. Một tính năng đáng chú ý của phiên bản SQL là hỗ trợ mệnh đề PARTITIONED BY. Bằng cách chỉ định một hoặc nhiều khóa, bạn có thể tránh trùng lặp phía máy khách, chỉ gửi bản ghi mới nhất cho mỗi khóa với mỗi lần ghi hàng loạt. Có thể đạt được điều tương đương với API DataStream bằng cách chỉ định danh sách các khóa phân vùng để ghi đè trong mỗi lô.

Đầu nối này chỉ hoạt động như một bồn rửa. Bạn không thể sử dụng nó để đọc từ DynamoDB. Để tra cứu dữ liệu trong DynamoDB, bạn vẫn cần triển khai tra cứu bằng cách sử dụng API I/O không đồng bộ của Flink hoặc triển khai hàm tùy chỉnh do người dùng xác định (UDF) cho SQL.

MongoDB

Một kết nối thú vị khác là dành cho MongoDB. Trong trường hợp này, cả nguồn và đích đều có sẵn, cho cả SQL và bảng API và Dòng dữ liệu API. Trình kết nối mới hiện chính thức là một phần của dự án Apache Flink và được cộng đồng hỗ trợ. Trình kết nối mới này thay thế trực tiếp trình kết nối cũ do MongoDB cung cấp, trình kết nối này chỉ hỗ trợ các API nguồn và API Flink Sink cũ hơn.

Đối với các trình kết nối lưu trữ dữ liệu khác, nguồn có thể được sử dụng làm nguồn giới hạn, ở chế độ hàng loạt hoặc để tra cứu. Phần chìm hoạt động ở cả chế độ hàng loạt và phát trực tuyến, hỗ trợ cả chế độ upsert và chắp thêm.

Trong số nhiều tính năng đáng chú ý của trình kết nối này, một tính năng đáng nói đến là khả năng bật bộ nhớ đệm khi sử dụng nguồn để tra cứu. Ra khỏi hộp, bồn rửa hỗ trợ đảm bảo ít nhất một lần. Khi khóa chính được xác định, phần chìm có thể hỗ trợ ngữ nghĩa chính xác một lần thông qua các phần bổ sung bình thường. Trình kết nối chìm cũng hỗ trợ ngữ nghĩa chính xác một lần, với các phần bổ sung bình thường, khi khóa chính được xác định.

Phiên bản trình kết nối mới

Không phải là một tính năng mới nhưng là yếu tố quan trọng cần xem xét khi cập nhật ứng dụng Apache Flink cũ hơn, đó là phiên bản trình kết nối mới. Bắt đầu từ Apache Flink phiên bản 1.17, hầu hết các trình kết nối đã được đưa ra bên ngoài từ bản phân phối Apache Flink chính và tuân theo phiên bản độc lập.

Để bao gồm phần phụ thuộc phù hợp, bạn cần chỉ định phiên bản tạo phẩm có dạng: <connector-version>-<flink-version>

Ví dụ: trình kết nối Kafka mới nhất, cũng hoạt động với Truyền trực tuyến được quản lý của Amazon cho Apache Kafka (Amazon MSK), tại thời điểm viết bài là phiên bản 3.1.0. Nếu bạn đang sử dụng Apache Flink 1.18, phần phụ thuộc để sử dụng sẽ như sau:

<dependency> 
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-connector-kafka</artifactId> 
    <version>3.1.0-1.18</version>
</dependency>

Trong Amazon Kinesis, phiên bản trình kết nối mới là 4.2.0. Phần phụ thuộc của Apache Flink 1.18 sẽ như sau:

<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-connector-kinesis</artifactId> 
    <version>4.2.0-1.18</version>
</dependency>

Trong các phần sau, chúng ta sẽ thảo luận thêm về các tính năng mới mạnh mẽ hiện có trong Apache Flink 1.18 và được hỗ trợ trong Amazon Managed Service dành cho Apache Flink.

SQL

Trong Apache Flink SQL, người dùng có thể cung cấp gợi ý để tham gia các truy vấn có thể được sử dụng để đề xuất trình tối ưu hóa có tác dụng trong kế hoạch truy vấn. Đặc biệt, trong các ứng dụng phát trực tuyến, tra cứu tham gia được sử dụng để làm phong phú bảng, biểu thị dữ liệu truyền phát, với dữ liệu được truy vấn từ hệ thống bên ngoài, thường là cơ sở dữ liệu. Kể từ phiên bản 1.16, một số cải tiến đã được giới thiệu cho các phép nối tra cứu, cho phép bạn điều chỉnh hành vi của phép nối và cải thiện hiệu suất:

  • Tra cứu bộ đệm là một tính năng mạnh mẽ, cho phép bạn lưu vào bộ nhớ những bản ghi được sử dụng thường xuyên nhất, giảm áp lực lên cơ sở dữ liệu. Trước đây, bộ nhớ đệm tra cứu được dành riêng cho một số trình kết nối. Kể từ Apache Flink 1.16, tùy chọn này đã có sẵn cho tất cả các trình kết nối hỗ trợ tra cứu nội bộ (FLIP-221). Theo văn bản này, JDBC, Tổ ongHBase kết nối hỗ trợ tra cứu bộ đệm. Bộ đệm tra cứu có ba chế độ khả dụng: FULL, đối với một tập dữ liệu nhỏ có thể được lưu giữ hoàn toàn trong bộ nhớ, PARTIAL, đối với tập dữ liệu lớn, chỉ lưu vào bộ nhớ đệm các bản ghi gần đây nhất hoặc NONE, để tắt hoàn toàn bộ đệm. Vì PARTIAL cache, bạn cũng có thể định cấu hình số hàng cần đệm và thời gian tồn tại.
  • Tra cứu không đồng bộ là một tính năng khác có thể cải thiện đáng kể hiệu suất. Tra cứu Async cung cấp cho Apache Flink SQL một chức năng tương tự như I/O không đồng bộ có sẵn trong API DataStream. Nó cho phép Apache Flink phát ra các yêu cầu mới tới cơ sở dữ liệu mà không chặn luồng xử lý cho đến khi nhận được phản hồi cho các lần tra cứu trước đó. Tương tự như I/O Async, bạn có thể định cấu hình tra cứu async để thực thi thứ tự hoặc cho phép kết quả không có thứ tự hoặc điều chỉnh dung lượng bộ đệm và thời gian chờ.
  • Bạn cũng có thể cấu hình một tra cứu chiến lược thử lại kết hợp với PARTIAL or NONE bộ nhớ đệm tra cứu, để đặt cấu hình hành vi trong trường hợp tra cứu không thành công trong cơ sở dữ liệu bên ngoài.

Tất cả những hành vi này có thể được kiểm soát bằng cách sử dụng LOOKUP gợi ý, giống như trong ví dụ sau, trong đó chúng tôi hiển thị tham gia tra cứu bằng cách sử dụng tra cứu không đồng bộ:

SELECT 
    /*+ LOOKUP('table'='Customers', 'async'='true', 'output-mode'='allow_unordered') */ 
    O.order_id, O.total, C.address
FROM Orders AS O 
JOIN Customers FOR SYSTEM_TIME AS OF O.proc_time AS C 
  ON O.customer_id = O.customer_id

PyFlink

Trong phần này, chúng tôi thảo luận về những cải tiến và hỗ trợ mới trong PyFlink.

Hỗ trợ Python 3.10

Các phiên bản mới nhất của Apache Flink đã giới thiệu một số cải tiến cho người dùng PyFlink. Đầu tiên và quan trọng nhất, Python 3.10 hiện đã được hỗ trợ và hỗ trợ Python 3.6 đã bị xóa hoàn toàn (FLINK-29421). Dịch vụ được quản lý cho Apache Flink hiện sử dụng thời gian chạy Python 3.10 để chạy các ứng dụng PyFlink.

Tiến gần hơn đến tính năng tương đương

Từ góc độ API lập trình, PyFlink đang tiến gần hơn đến Java trên mọi phiên bản. API DataStream hiện hỗ trợ các tính năng như đầu ra phụ và trạng thái phát sóng, đồng thời các khoảng trống trên API cửa sổ đã được đóng lại. PyFlink hiện cũng hỗ trợ các trình kết nối mới như Luồng dữ liệu Amazon Kinesis trực tiếp từ API DataStream.

Cải tiến chế độ chủ đề

PyFlink rất hiệu quả. Chi phí chạy các toán tử API Flink trong PyFlink là tối thiểu so với Java hoặc Scala, vì thời gian chạy thực sự chạy trực tiếp việc triển khai toán tử trong JVM, bất kể ngôn ngữ ứng dụng của bạn là gì. Nhưng khi bạn có một hàm do người dùng xác định, mọi thứ sẽ hơi khác một chút. Một dòng mã Python đơn giản như lambda x: x + 1hoặc phức tạp như hàm Pandas, phải chạy trong thời gian chạy Python.

Theo mặc định, Apache Flink chạy thời gian chạy Python trên mỗi Trình quản lý tác vụ, bên ngoài JVM. Mỗi bản ghi được tuần tự hóa, chuyển sang thời gian chạy Python thông qua giao tiếp giữa các tiến trình, được giải tuần tự hóa và được xử lý trong thời gian chạy Python. Sau đó, kết quả được tuần tự hóa và chuyển lại cho JVM, nơi nó được giải tuần tự hóa. Đây là liên kết PyFlink chế độ QUY TRÌNH. Nó rất ổn định nhưng lại gây ra chi phí chung và trong một số trường hợp, nó có thể trở thành nút thắt cổ chai về hiệu suất.

Kể từ phiên bản 1.15, Apache Flink cũng hỗ trợ chế độ CHỦ ĐỀ cho PyFlink. Trong chế độ này, các hàm do người dùng Python xác định được chạy trong chính JVM, loại bỏ chi phí liên lạc tuần tự hóa/giải tuần tự hóa và giữa các quá trình. Chế độ CHỦ ĐỀ có một số hạn chế; ví dụ: không thể sử dụng chế độ THREAD cho Pandas hoặc UDAF (các hàm tổng hợp do người dùng xác định, bao gồm nhiều bản ghi đầu vào và một bản ghi đầu ra), nhưng có thể cải thiện đáng kể hiệu suất của ứng dụng PyFlink.

Với phiên bản 1.16, sự hỗ trợ của chế độ THREAD đã được mở rộng đáng kể, bao gồm cả API DataStream của Python.

Chế độ THREAD được Dịch vụ quản lý hỗ trợ cho Apache Flink và có thể được bật trực tiếp từ ứng dụng PyFlink của bạn.

Hỗ trợ Apple Silicon

Nếu bạn sử dụng các máy dựa trên Apple Silicon để phát triển các ứng dụng PyFlink, phát triển cho PyFlink 1.15, có thể bạn đã gặp phải một số vấn đề phụ thuộc Python đã biết trên Apple Silicon. Những vấn đề này cuối cùng đã được giải quyết (FLINK-25188). Những hạn chế này không ảnh hưởng đến các ứng dụng PyFlink chạy trên Dịch vụ được quản lý cho Apache Flink. Trước phiên bản 1.16, nếu bạn muốn phát triển ứng dụng PyFlink trên máy sử dụng chipset M1, M2 hoặc M3, bạn phải sử dụng một số cách giải quyết, vì không thể cài đặt trực tiếp PyFlink 1.15 trở về trước trên máy.

Cải tiến điểm kiểm tra không được căn chỉnh

Apache Flink 1.15 đã hỗ trợ Điểm kiểm tra tăng dần và Gỡ lỗi bộ đệm. Các tính năng này có thể được sử dụng, đặc biệt là kết hợp với nhau, để cải thiện hiệu suất của điểm kiểm tra, giúp thời gian của điểm kiểm tra dễ dự đoán hơn, đặc biệt khi có áp suất ngược. Để biết thêm thông tin về các tính năng này, hãy xem Tối ưu hóa điểm kiểm tra trong Dịch vụ được quản lý của Amazon dành cho các ứng dụng Apache Flink với tính năng gỡ lỗi bộ đệm và các điểm kiểm tra không được căn chỉnh.

Với phiên bản 1.16 và 1.17, một số thay đổi đã được đưa ra để cải thiện tính ổn định và hiệu suất.

Xử lý dữ liệu lệch

Sử dụng Apache Flink hình mờ để hỗ trợ ngữ nghĩa thời gian sự kiện. Hình mờ là các bản ghi đặc biệt, thường được đưa vào luồng từ toán tử nguồn, đánh dấu tiến trình về thời gian sự kiện đối với các toán tử như tập hợp cửa sổ thời gian sự kiện. Một kỹ thuật phổ biến là trì hoãn các hình mờ từ thời điểm sự kiện được quan sát gần đây nhất, để cho phép các sự kiện không theo thứ tự, ít nhất ở một mức độ nào đó.

Tuy nhiên, việc sử dụng hình mờ đi kèm với một thách thức. Ví dụ: khi ứng dụng có nhiều nguồn, nó nhận được các sự kiện từ nhiều phân vùng của một chủ đề Kafka, hình mờ được tạo độc lập cho từng phân vùng. Trong nội bộ, mỗi nhà điều hành luôn chờ cùng một hình mờ trên tất cả các phân vùng đầu vào, gần như căn chỉnh nó trên phân vùng chậm nhất. Hạn chế là nếu một trong các phân vùng không nhận được dữ liệu, hình mờ sẽ không hoạt động, làm tăng độ trễ từ đầu đến cuối. Vì lý do này, một thời gian chờ nhàn rỗi tùy chọn đã được giới thiệu trong nhiều nguồn phát trực tuyến. Sau thời gian chờ được định cấu hình, việc tạo hình mờ sẽ bỏ qua mọi phân vùng không nhận được bất kỳ bản ghi nào và hình mờ có thể tiếp tục.

Bạn cũng có thể phải đối mặt với thách thức tương tự nhưng ngược lại nếu một nguồn nhận được sự kiện nhanh hơn nhiều so với các nguồn khác. Hình mờ được căn chỉnh theo phân vùng chậm nhất, nghĩa là mọi tập hợp cửa sổ sẽ chờ hình mờ. Các bản ghi từ nguồn nhanh phải chờ, được lưu vào bộ đệm. Điều này có thể dẫn đến việc lưu vào bộ nhớ đệm một khối lượng dữ liệu quá lớn và trạng thái toán tử tăng lên không thể kiểm soát được.

Để giải quyết vấn đề về nguồn nhanh hơn, bắt đầu với Apache Flink 1.17, bạn có thể bật căn chỉnh hình mờ của các phần tách nguồn (FLINK-28853). Cơ chế này, bị tắt theo mặc định, đảm bảo rằng không có phân vùng nào xử lý hình mờ quá nhanh so với các phân vùng khác. Bạn có thể liên kết nhiều nguồn với nhau, chẳng hạn như nhiều chủ đề đầu vào, gán cùng một ID nhóm căn chỉnh và định cấu hình khoảng thời gian trôi tối đa so với hình mờ hiện tại. Nếu một phân vùng cụ thể đang nhận sự kiện quá nhanh, toán tử nguồn sẽ tạm dừng sử dụng phân vùng đó cho đến khi độ lệch giảm xuống dưới ngưỡng đã định cấu hình.

Bạn có thể kích hoạt nó cho từng nguồn riêng biệt. Tất cả những gì bạn cần là chỉ định ID nhóm căn chỉnh, ID này sẽ liên kết với nhau tất cả các nguồn có cùng ID và khoảng thời gian trôi tối đa so với hình mờ tối thiểu hiện tại. Điều này sẽ tạm dừng việc tiêu thụ từ nhiệm vụ con nguồn đang tiến triển quá nhanh, cho đến khi độ lệch thấp hơn ngưỡng được chỉ định.

Đoạn mã sau đây cho thấy cách bạn có thể thiết lập căn chỉnh hình mờ của các phần tách nguồn trên nguồn Kafka phát ra các hình mờ không theo thứ tự bị giới hạn:

KafkaSource<Event> kafkaSource = ...
DataStream<Event> stream = env.fromSource(
    kafkaSource,
    WatermarkStrategy.<Event>forBoundedOutOfOrderness( Duration.ofSeconds(20))
        .withWatermarkAlignment("alignment-group-1", Duration.ofSeconds(20), Duration.ofSeconds(1)),
    "Kafka source"));

Tính năng này chỉ có sẵn với FLIP-217 các nguồn tương thích, hỗ trợ căn chỉnh hình mờ của các phần tách nguồn. Khi viết, trong số các trình kết nối nguồn phát trực tuyến chính, chỉ có nguồn Kafka hỗ trợ tính năng này.

Hỗ trợ trực tiếp cho định dạng Protobuf

API bảng và SQL hiện hỗ trợ trực tiếp Định dạng Protobuf. Để sử dụng định dạng này, bạn cần tạo các lớp Java Protobuf từ .proto tệp định nghĩa lược đồ và đưa chúng vào làm phần phụ thuộc trong ứng dụng của bạn.

Định dạng Protobuf chỉ hoạt động với SQL và API bảng và chỉ để đọc hoặc ghi dữ liệu được tuần tự hóa Protobuf từ nguồn hoặc tới bồn. Hiện tại, Flink không hỗ trợ trực tiếp Protobuf để tuần tự hóa trực tiếp trạng thái và nó không hỗ trợ tiến hóa lược đồ, giống như đối với Avro, Ví dụ. Bạn vẫn cần phải đăng ký một bộ nối tiếp tùy chỉnh với một số chi phí cho ứng dụng của bạn.

Giữ Apache Flink là nguồn mở

Apache Flink nội bộ dựa vào Akka để gửi dữ liệu giữa các nhiệm vụ con. Vào năm 2022, Lightbend, công ty đứng sau Akka, thông báo thay đổi giấy phép đối với các phiên bản Akka trong tương lai, từ Apache 2.0 đến giấy phép hạn chế hơn và Akka 2.6, phiên bản được Apache Flink sử dụng, sẽ không nhận được bất kỳ bản cập nhật hoặc sửa lỗi bảo mật nào nữa.

Mặc dù Akka về mặt lịch sử rất ổn định và không yêu cầu cập nhật thường xuyên, nhưng việc thay đổi giấy phép này gây ra rủi ro cho dự án Apache Flink. Quyết định của cộng đồng Apache Flink là thay thế Akka bằng một nhánh của phiên bản 2.6, được gọi là Apache Pekko (FLINK-32468). Phân nhánh này sẽ giữ lại giấy phép Apache 2.0 và nhận mọi bản cập nhật cần thiết của cộng đồng. Trong thời gian chờ đợi, cộng đồng Apache Flink sẽ xem xét liệu có nên loại bỏ hoàn toàn sự phụ thuộc vào Akka hay Pekko hay không.

nén trạng thái

Apache Flink cung cấp tính năng nén tùy chọn (mặc định: tắt) cho tất cả các điểm kiểm tra và điểm lưu trữ. Apache Flink đã xác định được một lỗi trong Flink 1.18.1 trong đó trạng thái toán tử không thể được khôi phục chính xác khi bật tính năng nén ảnh chụp nhanh. Điều này có thể dẫn đến mất dữ liệu hoặc không thể khôi phục từ điểm kiểm tra. Để giải quyết vấn đề này, Dịch vụ được quản lý dành cho Apache Flink đã nhập lại sửa chữa điều đó sẽ được đưa vào các phiên bản tương lai của Apache Flink.

Nâng cấp phiên bản tại chỗ với Dịch vụ được quản lý cho Apache Flink

Nếu bạn hiện đang chạy một ứng dụng trên Dịch vụ được quản lý cho Apache Flink bằng Apache Flink 1.15 trở lên thì giờ đây bạn có thể nâng cấp ứng dụng đó lên 1.18 mà không làm mất trạng thái bằng cách sử dụng Giao diện dòng lệnh AWS (AWS CLI), Hình thành đám mây AWS or Bộ công cụ phát triển đám mây AWS (AWS CDK) hoặc bất kỳ công cụ nào sử dụng API AWS.

Sản phẩm Cập nhật ứng dụng Hành động API hiện hỗ trợ cập nhật phiên bản thời gian chạy Apache Flink của Dịch vụ được quản lý hiện có cho ứng dụng Apache Flink. Bạn có thể sử dụng UpdateApplication trực tiếp trên ứng dụng đang chạy.

Trước khi tiếp tục cập nhật tại chỗ, bạn cần xác minh và cập nhật các phần phụ thuộc có trong ứng dụng của mình, đảm bảo chúng tương thích với phiên bản Apache Flink mới. Đặc biệt, bạn cần cập nhật mọi thư viện, trình kết nối Apache Flink và có thể cả phiên bản Scala.

Ngoài ra, chúng tôi khuyên bạn nên kiểm tra ứng dụng đã cập nhật trước khi tiếp tục cập nhật. Chúng tôi khuyên bạn nên thử nghiệm cục bộ và trong môi trường phi sản xuất, sử dụng phiên bản thời gian chạy Apache Flink mục tiêu để đảm bảo không có hiện tượng hồi quy nào được đưa ra.

Và cuối cùng, nếu ứng dụng của bạn có trạng thái, chúng tôi khuyên bạn nên thực hiện ảnh chụp của trạng thái ứng dụng đang chạy. Điều này sẽ cho phép bạn quay trở lại phiên bản ứng dụng trước đó.

Khi bạn đã sẵn sàng, bây giờ bạn có thể sử dụng Cập nhật ứng dụng Hành động API hoặc ứng dụng cập nhật Lệnh AWS CLI để cập nhật phiên bản thời gian chạy của ứng dụng và trỏ nó tới cấu phần phần mềm ứng dụng mới, JAR hoặc tệp zip, với các phần phụ thuộc được cập nhật.

Để biết thêm thông tin chi tiết về quy trình và API, hãy tham khảo Nâng cấp phiên bản tại chỗ cho Apache Flink. Tài liệu bao gồm hướng dẫn từng bước và video hướng dẫn bạn trong quá trình nâng cấp.

Kết luận

Trong bài đăng này, chúng tôi đã xem xét một số tính năng mới của Apache Flink, được hỗ trợ trong Amazon Managed Service dành cho Apache Flink. Danh sách này không đầy đủ. Apache Flink cũng giới thiệu một số tính năng rất hứa hẹn, như TTL cấp nhà điều hành cho SQL và API bảng [FLIP-292] và du hành thời gian [FLIP-308], nhưng những thứ này chưa được API hỗ trợ và người dùng chưa thực sự có thể truy cập được. Vì lý do này, chúng tôi quyết định không đề cập đến chúng trong bài viết này.

Với sự hỗ trợ của Apache Flink 1.18, Dịch vụ được quản lý dành cho Apache Flink hiện hỗ trợ phiên bản Apache Flink được phát hành mới nhất. Chúng tôi đã thấy một số tính năng mới thú vị và trình kết nối mới có sẵn với Apache Flink 1.18 cũng như cách Dịch vụ được quản lý cho Apache Flink giúp bạn nâng cấp ứng dụng hiện có tại chỗ.

Bạn có thể tìm thêm thông tin chi tiết về các bản phát hành gần đây từ blog Apache Flink và ghi chú phát hành:

Nếu bạn chưa quen với Apache Flink, chúng tôi khuyên bạn nên sử dụng hướng dẫn chọn API và ngôn ngữ phù hợp và theo dõi Bắt đầu khóa hướng dẫn để bắt đầu sử dụng Dịch vụ được quản lý cho Apache Flink.


Về các tác giả

Lorenzo NicoraLorenzo Nicora làm việc với tư cách là Kiến trúc sư giải pháp phát trực tuyến cấp cao tại AWS, giúp đỡ khách hàng trên khắp EMEA. Ông đã xây dựng các hệ thống dựa trên đám mây, sử dụng nhiều dữ liệu trong hơn 25 năm, làm việc trong ngành tài chính thông qua tư vấn và cho các công ty sản phẩm FinTech. Ông đã tận dụng rộng rãi các công nghệ nguồn mở và đóng góp cho một số dự án, bao gồm cả Apache Flink.

Francisco MorilloFrancisco Morillo là Kiến trúc sư giải pháp phát trực tuyến tại AWS. Francisco làm việc với khách hàng AWS, giúp họ thiết kế kiến ​​trúc phân tích thời gian thực bằng dịch vụ AWS, hỗ trợ Amazon MSK và Amazon Managed Service cho Apache Flink.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img