Dự án Apache Beam

Trang này chứa thông tin chi tiết về một dự án viết nội dung kỹ thuật đã được chấp nhận tham gia Google Season of Docs.

Tóm tắt dự án

Tổ chức nguồn mở:
Apache Beam
Tác giả kỹ thuật:
Sruthi Sree Kumar
Tên dự án:
Cập nhật trang so sánh trình chạy / ma trận chức năng
Độ dài dự án:
Thời hạn tiêu chuẩn (3 tháng)

Mô tả dự án

Apache Beam là một nền tảng hợp nhất để xác định cả quy trình xử lý hàng loạt và quy trình xử lý luồng. Apache Beam cho phép bạn xác định một mô hình để biểu thị và chuyển đổi tập dữ liệu bất kể nền tảng xử lý dữ liệu cụ thể nào. Sau khi xác định, bạn có thể chạy chương trình này trên bất kỳ khung thời gian chạy (chạy) nào được hỗ trợ, bao gồm Apache Apex, Apache Flink, Apache Spark và Google Cloud Dataflow. Apache Beam cũng đi kèm với các SDK khác nhau cho phép bạn viết quy trình của mình bằng các ngôn ngữ lập trình như Java, python và GO.

Tôi gửi đơn đăng ký tham gia GSOD về nội dung "Cập nhật trang so sánh trình chạy/mảng chức năng". Vì Apache Beam hỗ trợ nhiều trình chạy và SDK, nên người dùng mới sẽ bị nhầm lẫn khi chọn giữa các trình chạy và SDK đó. Tài liệu hiện tại về các trình chạy khác nhau cung cấp thông tin tổng quan rất ngắn gọn về trình chạy. Ý tưởng của tôi là thêm thông tin chi tiết hơn về từng trình chạy trên trang tài liệu về trình chạy cụ thể. Ngoài ra, tôi muốn cập nhật nội dung mô tả của dự án đếm từ mẫu để thêm nội dung giải thích chi tiết. Đối với việc này, tôi dự định thử mọi ví dụ về số từ trên máy tính của mình và tìm hiểu xem một số bước có bị thiếu hay không và giải thích thêm về quy trình. Một điều khác mà tôi nhận thấy là tài liệu cho trình chạy không tuân theo bất kỳ mẫu nào(Rất ít tài liệu có phần tổng quan, trong khi các tài liệu khác bắt đầu bằng cách sử dụng hoặc điều kiện tiên quyết hoặc một số tiêu đề ngẫu nhiên). Tôi sẽ cập nhật tất cả theo một mẫu đơn giản duy nhất.

Tôi dự định thêm một trang mới để mô tả từng trình chạy và cung cấp nội dung tường thuật mô tả cho từng trình chạy[BEAM-3220]. Từ trang này, người dùng có thể chuyển hướng đến trang mô tả chi tiết của từng trình chạy và ma trận chức năng. Tôi cũng dự định thêm nội dung so sánh mô tả về từng trình chạy tại đây. Hiện tại, tôi đang sử dụng Beam NEXMark để đo điểm chuẩn cho trình chạy Flink cho luận văn thạc sĩ của mình. Vì tôi hoàn toàn biết về điểm chuẩn NEXMark, tôi muốn đưa vào kết quả đo điểm chuẩn của từng người chạy ở cả chế độ hàng loạt và phát trực tuyến ở đây(BEAM-2944). Tôi cũng sẽ cập nhật tài liệu NEXMark nếu phát hiện thấy bất kỳ tham số/ cấu hình nào bị thiếu/bị xoá. Trước đây, khi sử dụng trình chạy Flink, tôi đã gặp khó khăn ban đầu vì thiếu một trong các thông số trong tài liệu. Nhưng giờ đây, khi đã quen thuộc hơn với cơ sở mã NEXMark, tôi có thể dễ dàng đo điểm chuẩn cho trình chạy và thêm các chỉ số. Trên cùng một trang này, tôi muốn thêm một bản tóm tắt ngắn gọn về mức độ sẵn sàng phát hành của từng trình chạy.

Trong tài liệu hiện tại, tính năng hỗ trợ trình chạy cổ điển/có thể di chuyển được đưa vào mỗi trang mô tả trình chạy. Tôi nghĩ bạn cũng nên đưa tất cả các tính năng đó vào một nơi, trong ma trận chức năng hoặc trong trang mô tả mới thêm. Ngoài ra, hiện tại, tính năng hỗ trợ khả năng di chuyển được duy trì trong một trang tính Google riêng biệt mà tôi muốn hợp nhất vào ma trận khả năng tương thích. https://docs.google.com/spreadsheets/d/1KDa_FGn1ShjomGd-UUDOhuh2q73de2tPz6BqHpzqvNI/edit#gid=0). Trong nhiệm vụ này, tôi dự định đưa vào tất cả những sửa chữa lớn/nhỏ được đề cập trong BEAM-2888.

Tôi coi GSoD là một cơ hội để bắt đầu đóng góp cho nguồn mở. Tôi sẽ tiếp tục đóng góp cho các dự án nguồn mở, đặc biệt là Beam và muốn tiếp tục là một thành viên tích cực của cộng đồng. Vì Apache Beam có một cộng đồng tích cực với các tính năng liên tục được phát triển, tôi cho rằng luôn có thể cải thiện tài liệu để tài liệu cập nhật. Ngoài ra, tôi cũng muốn đóng góp vào công việc phát triển. Nếu có kiến thức vững chắc về Beam, tôi cũng có thể giúp đỡ cộng đồng người dùng vì tôi luôn nhận được sự trợ giúp của cộng đồng khi bắt đầu sử dụng Beam.

Tôi tin rằng mình là người phù hợp cho dự án này vì:

  1. Tôi là một người đam mê hệ thống phân phối và đang cố gắng tìm hiểu về thành phần bên trong của hệ thống xử lý dữ liệu.
  2. Tôi có kinh nghiệm làm việc với Apache Beam và Apache Flink với tư cách là người dùng.
  3. Tôi đã hiểu cơ sở mã Apache Beam và Apache Flink với tư cách là một nhà phát triển.
  4. Tôi đã thực hiện một dự án để so sánh các trình chạy chùm khác nhau.
  5. Tôi có kinh nghiệm viết blog kỹ thuật để giải thích các khái niệm về hệ thống phân phối và xử lý dữ liệu lớn.
  6. Hiện tại, tôi đang làm luận văn thạc sĩ để cải thiện hiệu suất của phần phụ trợ trạng thái Apache Flink. Tôi đang sử dụng phương thức triển khai Apache Beam NEXMark để đo điểm chuẩn và đã đóng góp vào việc cập nhật tài liệu về Apache Beam.
  7. Với 4 năm kinh nghiệm làm nhà phát triển phần mềm, tôi đã viết nhiều tài liệu thiết kế kỹ thuật, tài liệu sản phẩm và tệp Readme(tôi hiện không có quyền truy cập vào các tài liệu này).
  8. Tôi viết tài liệu theo cách mà bất kỳ ai không có kiến thức trước đó cũng có thể hiểu được ngay từ cái nhìn đầu tiên.