Parallel Uncompression of Partially Compressed Database Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database systems face performance limitations when querying partially compressed tables, as they require the entire table to be uncompressed, incurring significant processor overhead and restricting the use of compression due to the inability to perform parallel uncompression of compressed portions during query execution.
Innovation Solution
A multiprocessing uncompression mechanism that leverages existing parallelism in database systems to dynamically uncompress portions of a partially compressed database table in parallel, using historical information and user-specified parameters to determine the appropriate number of tasks for parallel processing, thereby improving query performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If the entire database table is uncompressed to allow querying, then query access is enabled, but processor overhead increases significantly and query performance decreases
Solution Approach 1:
The patent divides the database table into compressed and uncompressed portions, allowing queries to access only the necessary uncompressed data segments rather than requiring full table uncompression. This segmentation enables selective uncompression based on query requirements, improving both access efficiency and performance.
Solution Approach 2:
The patent implements partial uncompression of the database table, uncompressing only the portions of data needed for the current query rather than the entire table. This partial action reduces processor overhead while maintaining query functionality, directly addressing the performance bottleneck.
2Adaptability or versatility
If the entire database table is uncompressed, then all data becomes accessible, but the cost in processor overhead becomes significant
Solution Approach 1:
The database table is segmented into compressed and uncompressed portions, allowing the system to maintain data accessibility for queried segments while avoiding the processor overhead of uncompressing the entire table. Each segment can be independently managed based on access patterns.
Solution Approach 2:
Different portions of the database table have different compression states - frequently accessed portions remain uncompressed while less accessed portions stay compressed. This local quality differentiation optimizes the balance between data accessibility and processor resource consumption.
3Productivity
If parallel uncompression is implemented, then uncompression speed increases, but system complexity increases
Solution Approach 1:
The uncompression process is divided into multiple parallel tasks that operate on different segments of the database table simultaneously. This segmentation enables parallel processing to increase uncompression speed while managing system complexity through structured task division.
Data Source
AI summary
A multiprocessing uncompression mechanism takes advantage of existing multiprocessing capability within a database to perform dynamic uncompression of portions of a partially compressed database table that satisfy a query using processes that may be executed in parallel. Historical information is gathered for each query. Uncompression advice includes user-specified parameters that determine how the multiprocessing uncompression mechanism functions. The multiprocessing uncompression mechanism processes the historical information and uncompression advice to determine an appropriate task count for performing uncompression in parallel processes. The existing multiprocessing capability within the database then processes the tasks that perform the uncompression in parallel.


