Cache Table for Low-Latency File System Data Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
File systems, such as resilient file systems, face latency issues during data operations, particularly with cloned files, due to serialized access and locking logic, which can lead to delayed access and performance bottlenecks.
Innovation Solution
Implementing a cache table integrated with the existing B+ table store and B+ table functionality, using a hash table or hash map to map cache storage to B+ table storage, allowing for faster data operations and temporary storage of modified data, while periodically persisting cache data to B+ table storage, thus reducing the number of serialized operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If serialized access and locking logic are used to ensure data consistency, then data consistency is maintained, but data operation latency increases
Solution Approach 1:
The patent segments the file system operations into two independent paths: a fast path using cache tables for low-latency operations and a slow path using B+ tables for consistency-critical operations. This segmentation allows most operations to bypass the serialized locking logic while maintaining consistency through periodic sync operations.
Solution Approach 2:
The cache table acts as an intermediary layer between applications and the B+ table storage. It provides a high-speed access path for data operations while the sync mechanism ensures consistency with the underlying B+ tables, effectively mediating between speed and consistency requirements.
2Reliability
If B+ table storage is used for all data operations, then data consistency is ensured, but operation speed decreases due to serialized access
Solution Approach 1:
The patent divides the storage access path into two segments: cache tables for high-speed operations and B+ tables for consistency-critical operations. This segmentation enables the system to use the appropriate path based on operation requirements, achieving both speed and consistency.
Solution Approach 2:
The system performs preliminary actions by pre-loading data into cache tables before actual data operations occur. This preliminary caching allows subsequent operations to execute at high speed without immediately accessing the serialized B+ table path.
3Speed
If cache storage is introduced to reduce latency, then data operation speed improves, but system complexity increases
Solution Approach 1:
The cache table structure is designed to be multi-functional: it serves as a high-speed access path, a temporary storage buffer, and a sync operation target. This universality reduces the need for separate specialized components, thereby limiting the increase in system complexity.
Solution Approach 2:
The cache table acts as an intermediary that integrates with the existing B+ table infrastructure rather than replacing it. This intermediary approach allows the system to gain speed benefits while maintaining compatibility with existing consistency mechanisms, limiting complexity overhead.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Methods, systems, and computer storage media for providing reduced-latency data operations in a file system. In operation, a request to perform a data operation associated with a B+ table storage of a file system is received. The file system supports the B+ table storage that is accessible using a B+ tree lookup logic for accessing B+ table data and supports a cache storage that is accessible using a cache table lookup logic for accessing cache data in the cache storage. A number of references to the location in the B+ table storage is determined. The location in the B+ table storage is associated with the request to perform the data operation. Based on determining the number of references to the location, a cache storage location to perform the data operation is accessed. The cache storage location is mapped (using the cache table) to the location in the B+ table storage.