Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-36445

Research and Specification for Resource Group Management

Details

    • Task
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 12.1
    • Server
    • None

    Description

      Description:
      To enhance resource management capabilities in MariaDB Enterprise Server, we need to research and specify the implementation of CPU and memory resource groups. This will allow DBAs to allocate CPU and memory resources to workloads or users using percentage-based parameters. Unlike MySQL, this implementation will introduce memory tracking and allocation, making MariaDB’s solution unique.

      Objectives:

      Define a resource group framework that allows CPU and memory allocation via percentage-based parameters.

      Establish SQL commands for creating, altering, and dropping resource groups.

      Design system tables for visibility and monitoring, including an INFORMATION_SCHEMA table and Performance Schema extensions.

      Ensure compatibility with MariaDB’s existing query execution and scheduling mechanisms.

      Analyze the MySQL 8.0 resource group implementation for reference while ensuring differentiation through memory management.

      Acceptance Criteria:

      DBAs can create, alter, and drop resource groups with specified CPU and memory percentage limits.

      Sessions assigned to a resource group are constrained by the defined CPU and memory percentages.

      A new INFORMATION_SCHEMA.RESOURCE_GROUPS table provides visibility into resource allocation.

      Performance Schema extensions allow monitoring of CPU and memory usage per resource group.

      When a resource group is dropped, sessions revert to a default group to ensure system stability.

      Benefits and Use Cases:

      Multi-Tenant Environments: Isolate CPU and memory resources for different tenants, ensuring fair resource distribution.

      Workload Prioritization: Assign batch jobs to specific vCPUs while reserving others for real-time queries.

      Monitoring & Optimization: Enable DBAs to dynamically adjust resource allocations based on real-time usage patterns.

      Attachments

        Issue Links

          Activity

            There are no comments yet on this issue.

            People

              Unassigned Unassigned
              adamluciano Adam Luciano
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.