Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Contents

...

Streamline Grouping and Filtering in the Experiment Browser UI

Embed a researcher-focused dashboard to group and preview experiments in the Django portal. The goal is to improve how past experiment runs can be tracked, grouped, and arranged for faster lookup and insights.

Proposed Improvements:

  • Group submitted experiments by project, application, allocation, etc.
  • Clean, customizable dashboard elements (e.g., charts) to preview past experiments.
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Yasith Jayawardana, mail: yasithmilinda (at) apache.org
Project Devs, mail: dev (at) airavata.apache.org

Containerized Deployment of Airavata Services

Currently, all Airavata services are packaged and deployed as Java bundles. The goal is to containerize each service by wrapping it within a Dockerfile, allowing seamless deployment on container-enabled resources while also enabling local execution for development purposes.

This enhancement has potential to improve deployment consistency, simplify dependency management, and provide greater flexibility in running Airavata services across different environments, for both testing and production use cases.

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Yasith Jayawardana, mail: yasithmilinda (at) apache.org
Project Devs, mail: dev (at) airavata.apache.org

Update Airavata Django Portal to a Supported Python Version

The Airavata Django Portal currently runs on Python 3.6, which reached its end-of-life (EOL) in 2022. Continuing to use an

Update Airavata Django Portal to a Supported Python Version

The Airavata Django Portal currently runs on Python 3.6, which reached its end-of-life (EOL) in 2022. Continuing to use an unsupported Python version poses security risks and limits access to new features and package updates. Upgrading to a supported version (Python 3.12 or later) will ensure long-term maintainability, security, and compatibility with modern dependencies.

Status of Python versions

Impact:
• Improved security and stability
• Access to the latest language features and performance improvements
• Compatibility with actively maintained third-party packages

Proposed Solution: Update the codebase and dependencies for compatibility with Python 3.12+, and ensure everything works as expected post-upgrade.

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Yasith Jayawardana, mail: yasithmilinda (at) apache.org
Project Devs, mail: dev (at) airavata.apache.org

...

A Central Admin Dashboard to Inspect Health + Logs of Airavata Services

Develop a devops dashboard to monitor Apache Airavata services, enabling real-time tracking of service health, uptime, and logs independent of the science gateway(s).
This centralized tool will help administrators efficiently monitor service performance and troubleshoot issues. The dashboard will feature a user-friendly monitoring UI that displays real-time status updates and logs for each service.

Proposed Solution:

  • A logging subproces alongside each service, pushing logs to an external service.
  • A devops dashboard that aggregates the logs and provides a unified view into the system.
  • API calls from devops dashboard to each service, for proactive health-checking.
  • Ability to monitor multiple gateways from the same dashboard.
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Yasith Jayawardana, mail: yasithmilinda (at) apache.org
Project Devs, mail: dev (at) airavata.apache.org

Apache Dubbo

Containerized Deployment of Airavata Services

Currently, all Airavata services are packaged and deployed as Java bundles. The goal is to containerize each service by wrapping it within a Dockerfile, allowing seamless deployment on container-enabled resources while also enabling local execution for development purposes.

This enhancement has potential to improve deployment consistency, simplify dependency management, and provide greater flexibility in running Airavata services across different environments, for both testing and production use cases.

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Yasith Jayawardana, mail: yasithmilinda (at) apache.org
Project Devs, mail: dev (at) airavata.apache.org

Apache Dubbo

GSoC 2025 - Service Discovery

Background and Goal

Service Discovery

  1. Well organized logs
  2. Actuator endpoints
  3. Tools

Relevant Skills

GSoC 2025 - Service Discovery

Background and Goal

Service Discovery

  1. Well organized logs
  2. Actuator endpoints
  3. Tools

Relevant Skills

  1. Familiar with Java
  2. Familiar with Microservice architecture

Potential Mentors

  1. Jun Liu, Apache Dubbo PMC Chair, junliu@apache.org
  2. dev@dubbo.apache.org

     


Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Jun Liu, mail: liujun (at) apache.org
Project Devs, mail:

...

Beam YAML ML, Iceberg, and Kafka User Accessibility

Apache Beam's YAML DSL provides a powerful and declarative way to define data processing pipelines. However, its adoption for complex use cases like Machine Learning (ML) and Managed IO (specifically Apache Iceberg and Kafka) is hindered by a lack of comprehensive documentation and practical examples. This project aims to significantly improve the Beam YAML documentation and create illustrative examples focused on ML workflows and Iceberg/Kafka integration, making these advanced features more accessible to users.

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
XQ Hu, mail: xqhu (at) apache.org
Project Devs, mail: dev (at) beam.apache.org

RocketMQ

Optimizing Apache RocketMQ's POP Orderly Consumption Process

Refactoring the RocketMQ Dashboard UI and Enhancing Usability

Background


 
Apache RocketMQ is renowned as a distributed cloud-native messaging and streaming platform that supports various messaging protocols. One of the key features of RocketMQ is its orderly message consumption capability, which guarantees that messages are processed in the order they are sent. However, there are existing issues with the POP Orderly consumption process that need to be addressed to enhance its reliability and performance.

 Current Challenges

Currently, the POP Orderly feature faces several shortcomings, particularly in scenarios where network instability leads to the loss of the attemptId carried by the consumer from the previous round. This issue can result in message consumption getting stuck until the acknowledgment response (ack) for the previous message pull times out. Such situations hinder the efficient processing of messages and reduce the overall effectiveness of the messaging system.

 Objectives

The primary objectives of this project are as follows:
●Refactor the POP Orderly Code: Analyze and redesign the existing codebase to improve its structure, maintainability, and performance.
●Optimize Performance: Implement performance enhancements that allow the POP Orderly feature to cope with network fluctuations and reduce the likelihood of consumption halting.
●Elegant Process Resolution: Develop a more graceful approach to handling the issue of consumption stalling, ensuring that the system can recover more smoothly from failures.

 Recommended Skills

1. Proficiency in Java programming.
2. Strong understanding of concurrent programming.
3. Excellent logical thinking and problem-solving skills.
4. Familiarity with message queue systems, particularly Apache RocketMQ.

 
 

Mentor

Rongtong Jin, Apache RocketMQ PMC, jinrongtong@apache.org

Potential Mentor

Juntao Ji, 3160102420@zju.edu.cn

Difficulty: Major
Project Size: ~350 hours (large)

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Rongtong Jin, mail: jinrongtong (at) apache.org
Project Devs, mail: dev (at) rocketmq.apache.org

Refactoring the RocketMQ Dashboard UI and Enhancing Usability

Background

Apache RocketMQ is renowned as a cloud-native messaging and streaming platform, enabling the creation of event-driven applications with simplicity and flexibility. The RocketMQ Dashboard is a crucial component that provides users with insight into system performance and client interactions through intuitive graphs and statistical data. Despite its fundamental role, the current user interface (UI) of the RocketMQ Dashboard is outdated, affecting user experience and interaction efficiency. Additionally, while the Dashboard offers valuable functionalities, there is a pressing need to enhance its usability and ensure robust security. This project aims to refactor the RocketMQ Dashboard by redesigning its UI with a more contemporary and user-friendly approach, improving overall usability, and introducing effective security measures to safeguard data and user interactions.

Relevant Skills

  • Strong Java development skills.
  • Experience with modern front-end technologies and frameworks
  • Proficiency in Spring Boot development.
  • Understanding of UX/UI design principles. - Knowledge of security best practices in web applications.
  • A keen interest in open-source projects and a willingness to learn and adapt.

Tasks

  • Launch and experiment with the RocketMQ Dashboard to understand current functionalities.
  • Refactor the UI of the RocketMQ Dashboard to align with modern user interface standards, ensuring it is intuitive and visually appealing.  
  • Improve usability by streamlining workflows, enhancing navigation, and incorporating responsive design. 
  • Integrate security features to protect user data, prevent unauthorized access, and mitigate potential vulnerabilities.
  • Maintain compatibility with existing RocketMQ functionalities while focusing on enhancements. 

Learning Material

Mentor

Rongtong Jin, Apache RocketMQ PMC, jinrongtong@apache.org

Potential Mentor

Juntao Ji, 3160102420@zju.edu.cn

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Rongtong Jin, mail: jinrongtong (at) apache.org
Project Devs, mail: dev (at) rocketmq.apache.org

SkyWalking

, enabling the creation of event-driven applications with simplicity and flexibility. The RocketMQ Dashboard is a crucial component that provides users with insight into system performance and client interactions through intuitive graphs and statistical data. Despite its fundamental role, the current user interface (UI) of the RocketMQ Dashboard is outdated, affecting user experience and interaction efficiency. Additionally, while the Dashboard offers valuable functionalities, there is a pressing need to enhance its usability and ensure robust security. This project aims to refactor the RocketMQ Dashboard by redesigning its UI with a more contemporary and user-friendly approach, improving overall usability, and introducing effective security measures to safeguard data and user interactions.

Relevant Skills

  • Strong Java development skills.
  • Experience with modern front-end technologies and frameworks
  • Proficiency in Spring Boot development.
  • Understanding of UX/UI design principles. - Knowledge of security best practices in web applications.
  • A keen interest in open-source projects and a willingness to learn and adapt.

Tasks


  • Launch and experiment with the RocketMQ Dashboard to understand current functionalities.
  • Refactor the UI of the RocketMQ Dashboard to align with modern user interface standards, ensuring it is intuitive and visually appealing.  
  • Improve usability by streamlining workflows, enhancing navigation, and incorporating responsive design. 
  • Integrate security features to protect user data, prevent unauthorized access, and mitigate potential vulnerabilities.
  • Maintain compatibility with existing RocketMQ functionalities while focusing on enhancements. 

Learning Material



Mentor

Rongtong Jin, Apache RocketMQ PMC, jinrongtong@apache.org

Potential Mentor

Juntao Ji, 3160102420@zju.edu.cn

Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Rongtong Jin, mail: jinrongtong (at) apache.org
Project Devs, mail: dev (at) rocketmq.apache.org

Optimizing Apache RocketMQ's POP Orderly Consumption Process

Background

 
Apache RocketMQ is a distributed messaging and streaming platform that supports various messaging protocols. One of the key features of RocketMQ is its orderly message consumption capability, which guarantees that messages are processed in the order they are sent. However, there are existing issues with the POP Orderly consumption process that need to be addressed to enhance its reliability and performance.

 Current Challenges


Currently, the POP Orderly feature faces several shortcomings, particularly in scenarios where network instability leads to the loss of the attemptId carried by the consumer from the previous round. This issue can result in message consumption getting stuck until the acknowledgment response (ack) for the previous message pull times out. Such situations hinder the efficient processing of messages and reduce the overall effectiveness of the messaging system.

 Objectives

The primary objectives of this project are as follows:
●Refactor the POP Orderly Code: Analyze and redesign the existing codebase to improve its structure, maintainability, and performance.
●Optimize Performance: Implement performance enhancements that allow the POP Orderly feature to cope with network fluctuations and reduce the likelihood of consumption halting.
●Elegant Process Resolution: Develop a more graceful approach to handling the issue of consumption stalling, ensuring that the system can recover more smoothly from failures.

 Recommended Skills


1. Proficiency in Java programming.
2. Strong understanding of concurrent programming.
3. Excellent logical thinking and problem-solving skills.
4. Familiarity with message queue systems, particularly Apache RocketMQ.

 
 

Mentor


Rongtong Jin, Apache RocketMQ PMC, jinrongtong@apache.org

Potential Mentor

Juntao Ji, 3160102420@zju.edu.cn


Difficulty: Major
Project Size: ~350 hours (large)


Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Rongtong Jin, mail: jinrongtong (at) apache.org
Project Devs, mail: dev (at) rocketmq.apache.org

SkyWalking

SkyWalking BanyanDB Extend remote.FS with Object Storage Support for AWS, Google Cloud, and Azure

Overview:
The current implementation of the remote.FS interface only supports a local file system (via the implementation in local.go). This GSOC2025 project proposes to extend remote.FS with popular object storage services—namely AWS S3, Google Cloud Storage, and Azure Blob Storage. This enhancement will allow the project to support robust cloud-based backup and restore operations in addition to local storage.

Proposed Features:

  1. AWS S3 Implementation:
    • Implement methods for Upload, Download, List, and Delete operations using the AWS S3 API.
  2. Google Cloud Storage Implementation:
    • Provide a module that integrates with Google Cloud Storage to perform similar operations.
  3. Azure Blob Storage Implementation:
    • Develop functionality to access and manage Azure Blob Storage via the remote.FS interface.

Implementation Details:

  • Interface Compliance:
    Each object storage implementation must adhere to the remote.FS interface defined in remote.go.
  • Error Handling & Resilience:
    Implement robust error handling, logging, and retry mechanisms to ensure reliable operations across different cloud services.
  • Testing:
    Develop comprehensive unit and integration tests to cover edge cases and guarantee compatibility and stability.
  • Documentation:
    Update the project documentation to detail configuration, deployment, and usage of each cloud storage option.


Difficulty: Major
Project size: ~350 hour

SkyWalking BanyanDB Extend remote.FS with Object Storage Support for AWS, Google Cloud, and Azure

Overview:
The current implementation of the remote.FS interface only supports a local file system (via the implementation in local.go). This GSOC2025 project proposes to extend remote.FS with popular object storage services—namely AWS S3, Google Cloud Storage, and Azure Blob Storage. This enhancement will allow the project to support robust cloud-based backup and restore operations in addition to local storage.

Proposed Features:

  1. AWS S3 Implementation:
    • Implement methods for Upload, Download, List, and Delete operations using the AWS S3 API.
  2. Google Cloud Storage Implementation:
    • Provide a module that integrates with Google Cloud Storage to perform similar operations.
  3. Azure Blob Storage Implementation:
    • Develop functionality to access and manage Azure Blob Storage via the remote.FS interface.

Implementation Details:

  • Interface Compliance:
    Each object storage implementation must adhere to the remote.FS interface defined in remote.go.
  • Error Handling & Resilience:
    Implement robust error handling, logging, and retry mechanisms to ensure reliable operations across different cloud services.
  • Testing:
    Develop comprehensive unit and integration tests to cover edge cases and guarantee compatibility and stability.
  • Documentation:
    Update the project documentation to detail configuration, deployment, and usage of each cloud storage option.
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Hongtao Gao, mail: hanahmily (at) apache.org
Project Devs, mail: dev (at) skywalking.apache.org

...

Apache DorisEvaluating Column Encoding and Optimization

Synopsis

Apache Doris is a real-time data warehouse that utilizes columnar storage. Currently, Doris applies default encoding methods based on column data types. This project aims to evaluate the efficiency of these default encodings (e.g., encoding/decoding time and compression ratios) using benchmark datasets like TPC-DS, HTTP logs, and TPC-H. The findings will guide optimizations to improve performance.

Key Objectives

  • A. Develop a tool to evaluate encoding efficiency. The tool will take a column of data and an encoding method as input and output metrics such as compression ratio and processing speed.
  • B. Optimize dictionary encoding for string columns. Current implementations apply dictionary encoding by default without evaluating data suitability, leading to inefficiencies for non-dictionary-friendly data.
  • C. Assess the effectiveness of BitShuffle encoding for enhancing downstream compression.

    Benefits to the Community

Improve data compression efficiency in Apache Doris.
  • Enhance query performance through optimized encoding/decoding.

    Technical Details

    • Languages/Tools: C++ for encoding logic, GitHub for version control.
    • Methodology:
    • inefficiencies for non-dictionary-friendly data.
    • C. Assess the effectiveness of BitShuffle encoding for enhancing downstream compression.

      Benefits to the Community


    • Improve data compression efficiency in Apache Doris.
    • Enhance query performance through optimized encoding/decoding.

      Technical Details

    • Languages/Tools: C++ for encoding logic, GitHub for version control.
    • Methodology:

      • Benchmark existing encoding methods (e.g., dictionary, BitShuffle).

      • Develop an evaluation framework to measure compression ratios and processing overhead.
      • Implement optimizations for specific data types and use cases.

        Timeline (12+ Weeks, Full-Time Commitment - 30 hrs/week)

    1. Community Bonding (Weeks 1-2)

      1. Engage with mentors and the Doris community.

      2. Set up the development environment and study the codebase.

      3. Document current column encoding strategies for all data types.
    1. Phase 1: Planning & Initial Development (Weeks 3-6)

      1. Build a tool to evaluate encoding schemes across data types.

      2. Run benchmarks using TPC-DS, HTTP logs, and TPC-H datasets.
    1. Phase 2: Analysis & Optimization (Weeks 7-10)
      1. Optimize Dictionary Encoding: Automatically detect and skip non-dictionary-friendly data (e.g., high-cardinality strings).
      1. BitShuffle Evaluation: Quantify its impact on compression ratios and processing speed.

      1. Address additional optimization opportunities identified during analysis.
    1. Phase 3: Finalization & Refinement (Weeks 11-12+)

    1. Refine code and documentation based on community feedback.
    2. Submit PRs and ensure their merge into the Doris master branch.
       
      🔹 Total Effort: 350+ hours

      Expected Outcomes


    1. A tool to evaluate encoding efficiency for all Doris column types.

    2. Optimized dictionary encoding logic with automated suitability checks.

    3. Improved BitShuffle integration for enhanced compression.
    4. Additional optimizations identified during the project.
      This project will strengthen Apache Doris’s performance in real-time analytics scenarios while fostering collaboration within the open-source community.

    Contact Information *
    Mentor Name: [Yongqiang Yang](dataroaring@apache.orgImage Added) , Apache Doris PMC member

    Difficulty: Major
    Project size: ~350 hour (large)
    Potential mentors:
    Calvin Kirs, mail: kirs (at) apache.org
    Project Devs, mail: dev (at) doris.apache.org

    Apache Doris Enhancing Group Commit Functionality

    Synopsis

       The current Group Commit mechanism in Apache Doris batches data until a predefined size or time threshold is met before committing. This project aims to improve flexibility and control over data visibility by introducing the following enhancements: #
    Trigger Immediate Flush After a Specified Number of Imports: Allow data to be committed automatically after accumulating a configurable number of import operations.

    1. SYNC TABLE Syntax Support: Enable users to explicitly trigger Group Commit for a table via SQL (e.g., SYNC TABLE table_name), ensuring the command returns only after the commit completes.

    2. System Table for Monitoring: Add an information_schema.group_commit system table to track Group Commit status, including columns such as BE host, table ID, and commit metadata (e.g., batch size, latency).

      Technical Details

    • Languages: C++ (core) and Java (SQL syntax integration).

    • Tools: GitHub for version control and collaborative development

      Benchmark existing encoding methods (e.g., dictionary, BitShuffle).Develop an evaluation framework to measure compression ratios and processing overhead.Implement optimizations for specific data types and use cases

      .

      Timeline (12+ Weeks, Full-Time Commitment - 30 hrs/week)

    1. Community Bonding (Weeks 1-2)


      1. Engage Collaborate with mentors and the Apache Doris community.

      2. Set up the development environment and study the codebasereview the existing Group Commit implementation.

      3. Document current column encoding strategies for all data typesthe current Group Commit workflow and proposed optimizations.
    2. Phase 1:

      Planning

      Implementation &

      Initial Development

      Testing (Weeks 3-6)

      Build a tool to evaluate encoding schemes across data types.Run benchmarks using TPC-DS, HTTP logs, and TPC-H datasets.
    3. Phase 2: Analysis & Optimization (Weeks 7-10)
      1. Optimize Dictionary Encoding: Automatically detect and skip non-dictionary-friendly data (e.g., high-cardinality strings).
      1. BitShuffle Evaluation: Quantify its impact on compression ratios and processing speed.

      1. Develop support for flushing data after a configurable number of imports.

      2. Implement the SYNC TABLE syntax to trigger manual Group Commit.

      3. Design and integrate the information_schema.group_commit system table.

      4. Conduct performance benchmarking and rigorous testing.
    1. Phase 2: Refinement & Integration (Weeks 7+)


      1. Address feedback from code reviews and community testing.

      2. Finalize documentation and ensure backward compatibility.
      3. Submit pull requests (PRs) and work toward merging changes into the master branch.
        🔹 Total Effort: 210+ hours
        Expected Outcomes


    2. Enhanced flexibility in Group Commit with configurable flush triggers (size, time, or import count).

    3. A user-friendly SYNC TABLE SQL command for explicit commit control.

    4. A monitoring system table (information_schema.group_commit) for real-time visibility into commit operations.
    5. Address additional optimization opportunities identified during analysis.
    6. Phase 3: Finalization & Refinement (Weeks 11-12+)
    7. Refine code and documentation based on community feedback.
    8. Submit PRs and ensure their merge into the Doris master branch.
       
      🔹 Total Effort: 350+ hours

      Expected Outcomes

    9. A tool to evaluate encoding efficiency for all Doris column types.Optimized dictionary encoding logic with automated suitability checks.Improved BitShuffle integration for enhanced compression.Additional optimizations identified during the project.
      This project will strengthen Apache Doris’s performance in real-time analytics scenarios while fostering collaboration within the open-source community.

      Robust performance validation and integration into Apache Doris’s core workflow.
      This project will empower users with finer control over data ingestion and visibility while maintaining Doris’s high-throughput capabilities.
       


      Contact Information *
      Mentor Name: [Yongqiang Yang](dataroaring@apache.orgImage Modified) , Apache Doris PMC member

    Difficulty: Major
    Project size: ~350 hour (large)
    Potential mentors:
    Calvin Kirs, mail: kirs (at) apache.org
    Project Devs, mail: dev (at) doris.apache.org

    ...