DBMS I/O Method Selection Based on Storage Response Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database management systems (DBMS) face performance issues when selecting inappropriate I/O methods for executing tasks in parallel, leading to decreased performance due to asynchronous I/O overhead, especially when dealing with storage devices having varying response speeds.

Innovation Solution

The DBMS selects between synchronous and asynchronous I/O methods based on the I/O response speed of the storage device, using synchronous I/O for fast response devices to reduce overhead and asynchronous I/O for slow response devices to utilize CPU resources effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If asynchronous I/O method is used to execute tasks in parallel, then CPU utilization is improved, but switching overhead increases and performance decreases

Engineering Contradiction:
ImproveCPU utilizationVSAvoidswitching overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies parameter changes by dynamically selecting between synchronous and asynchronous I/O methods based on storage device response speed characteristics. Fast-response devices use synchronous I/O to minimize switching overhead, while slow-response devices use asynchronous I/O to maximize CPU utilization. This conditional parameter selection resolves the contradiction by adapting the I/O method to match storage device performance characteristics.

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If synchronous I/O method is used, then switching overhead is reduced, but CPU utilization decreases

Engineering Contradiction:
Improveswitching overheadVSAvoidCPU utilization
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies local quality by assigning different I/O methods to different storage devices based on their individual response speed characteristics. Fast-response storage devices are assigned synchronous I/O method to reduce switching overhead, while slow-response storage devices are assigned asynchronous I/O method to improve CPU utilization. This localized optimization resolves the contradiction by matching I/O method characteristics to storage device performance.

Inventive Principle:
Principle #3Local quality

3Productivity

If asynchronous I/O method is selected for all storage devices, then parallel task execution is improved, but performance decreases due to inappropriate selection

Engineering Contradiction:
Improveparallel task executionVSAvoidperformance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies dynamics by making the I/O method selection dynamic rather than static. The system determines storage device response speeds and dynamically assigns synchronous or asynchronous I/O methods accordingly. This dynamic adaptation allows the system to optimize for parallel task execution when using asynchronous I/O with slow devices while maintaining performance by using synchronous I/O with fast devices, resolving the contradiction between parallel execution capability and overall system performance.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10853365B2Database management system, computer, and database management method
Publication Date: 2020.12.01 HITACHI LTD
  • US10853365B2 patent drawing
  • US10853365B2 patent drawing
  • US10853365B2 patent drawing

AI summary

As an I/O method of issuing an I/O request, there are a synchronous I/O method, in which a task is in a waiting state until an I/O response to the I/O request is returned and an asynchronous I/O method, in which another task can be executed before an I/O response to the I/O request is returned. When issuing an I/O request in execution of a task, a DBMS selects any one of the synchronous I/O method and the asynchronous I/O method, based on an I/O response speed of an I/O destination storage device and issues an I/O request according to the selected I/O method.