Dự án Apache Beam

Trang này chứa thông tin chi tiết về một dự án viết kỹ thuật được chấp nhận cho Phần Google Tài liệu.

Tóm tắt dự án

Tổ chức nguồn mở:
Truyền tia Apache
Người viết nội dung 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
Thời lượng dự án:
Thời gian 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à luồng. Apache Beam cho phép bạn xác định mô hình để đại diện 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 trên bất kỳ khung thời gian chạy nào được hỗ trợ (trình chạy), bao gồm cả Apache Apex, Apache Flink, Apache Spark và Google Cloud Dataflow. Apache Beam cũng có nhiều SDK cho phép bạn viết quy trình bằng các ngôn ngữ lập trình như Java, python và GO.

Tôi đang gửi đơn đăng ký cho GSOD trên "Cập nhật trang so sánh/ma trận chức năng của trình chạy". Vì Apache Beam hỗ trợ nhiều trình chạy và SDK nên người dùng mới sẽ bối rối khi lựa chọn giữa chúng. Tài liệu hiện tại về nhiều trình chạy đưa ra thông tin tổng quan rất ngắn gọn về trình chạy này. Ý tưởng của tôi là thêm thông tin chi tiết hơn để hiểu hơn về mỗi người chạy trên trang tài liệu cụ thể về trình chạy. Ngoài ra, tôi muốn cập nhật nội dung mô tả của dự án số từ mẫu để thêm nội dung giải thích chi tiết. Với trường hợp này, tôi dự định sẽ thử mọi ví dụ về số từ trên máy của mình và tìm hiểu xem có bị thiếu một số bước nào không rồi giải thích thêm về quy trình này. Một điều khác mà tôi nhận thấy là tài liệu dành cho người chạy không tuân theo bất kỳ mẫu nào(Một vài phần có phần tổng quan trong khi những 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ả để tuân 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 vận động viên và cung cấp bài tường thuật mô tả cho từng vận động viên[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 định thêm một phép so sánh mang tính mô tả về từng người chạy tại đây. Hiện tại, tôi đang sử dụng Beam NEXMark để đo điểm chuẩn trình chạy Flink cho luận văn thạc sĩ của mình. Vì tôi đã nắm rõ về việc đo đ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ế độ lô và chế độ phát trực tuyến tại đây(BEAM-2944). Tôi cũng sẽ cập nhật tài liệu NEXMark nếu tôi thấy bất kỳ thông số/ cấu hình nào bị thiếu/xoá. Trước khi sử dụng trình chạy Flink, ban đầu tôi gặp khó khăn do thiếu một trong các tham số trong tài liệu. Nhưng bây giờ, khi tôi đã quen thuộc hơn với cơ sở mã NEXMark, tôi cũng sẽ dễ dàng hơn trong việc đo điểm chuẩn và thêm chỉ số. Cũng trong trang này, tôi muốn đưa vào một bản tóm tắt ngắn gọn về trạng thái sẵn sàng sản xuất của từng người chạy.

Trong tài liệu hiện tại, hỗ trợ cho trình chạy cổ điển/di động được bao gồm trong mỗi trang mô tả trình chạy. Tôi nghĩ cũng nên đưa tất cả chúng vào cùng một nơi, trong ma trận chức năng hoặc trong trang mô tả mới được thêm vào. Ngoài ra, hỗ trợ tính di động hiệ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 tương thích. Trong nhiệm vụ này, tôi dự định đưa vào tất cả các nội dung chỉnh sửa chính/phụ được đề cập trong BEAM-2888.

Tôi coi GSoD là một cơ hội để sử dụng khoản đóng góp 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à tôi 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ần cải thiện tài liệu để cập nhật tài liệu này. 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ề 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 từ cộng đồng khi bắt đầu sử dụng Beam.

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

  1. Tôi là người đam mê hệ thống phân phối và đang cố gắng tìm hiểu về bên trong các 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. Là một nhà phát triển, tôi hiểu rõ cơ sở mã Apache Beam và Apache Flink.
  4. Tôi đã thực hiện một dự án để so sánh các trình chạy tia khác nhau.
  5. Tôi có kinh nghiệm viết các 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 tính năng triển khai Apache Beam NEXMark để đo điểm chuẩn và tôi đã đóng góp vào việc cập nhật tài liệu Apache Beam.
  7. Do đã có 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à các tệp Readme(hiện tôi không có quyền truy cập).
  8. Tôi viết tài liệu theo cách mà bất cứ ai không có kiến thức trước cũng có thể hiểu ngay từ đầu.