Log-structured Flash Storage Manager for Random Write Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash disk technology faces performance issues with random writes due to the need for repeated erasure and copying of data, leading to significant performance overhead, and coarser mapping granularity exacerbates this problem, making it comparable to or worse than magnetic disks in random write workloads.
Innovation Solution
The Log-structured Flash Storage Manager (LFSM) converts random writes into sequential writes by introducing an additional level of indirection above the Flash Translation Layer (FTL), using a Block Mapping Table (BMT) update log, and batching updates to minimize overhead, while allocating Erasure Units (EUs) to logical blocks with similar lifetimes to stabilize utilization ratios.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If flash disk uses coarser mapping granularity to reduce memory requirement, then device complexity is reduced, but random write performance deteriorates
Solution Approach 1:
The patent introduces a Log-structured Storage Manager (LFSM) as an intermediary layer between the file system and the flash disk. This mediator converts random write requests into sequential writes by maintaining a log structure, thereby resolving the contradiction between coarse mapping granularity and random write performance. The LFSM acts as a buffer that translates random access patterns into sequential operations, eliminating the need for fine-grained mapping while preserving performance.
Solution Approach 2:
The patent changes the fundamental parameter of write operation sequencing from random to sequential. By implementing log-structured storage, the system transforms random write requests into sequential writes in the log, which then get mapped to physical flash locations. This parameter change from random to sequential writing eliminates the performance penalty associated with random writes on flash memory.
2Device complexity
If flash disk performs random writes directly, then device complexity is low, but performance overhead increases due to repeated erasure and copying
Solution Approach 1:
The patent implements continuous sequential writing to a log structure, eliminating the intermittent random write operations that trigger erasure and copying. The log-structured approach allows continuous appending of write operations in sequence, which is the most efficient operation for flash memory. This continuous sequential writing pattern eliminates the harmful erasure-and-copy cycle while maintaining simple write semantics.
Solution Approach 2:
The patent uses a log structure that copies write operations sequentially rather than directly modifying flash memory cells at random locations. The log acts as an intermediary buffer where writes are copied sequentially, and only when the log needs to be flushed are the operations translated to physical flash locations. This copying approach to sequential writes eliminates the need for repeated erasure and copying operations.
3Productivity
If flash disk uses sequential writes, then performance is improved, but adaptability to random access patterns deteriorates
Solution Approach 1:
The LFSM serves as a mediator that accepts random access requests from the file system and translates them into sequential write operations. This intermediary layer maintains the adaptability to random access patterns while executing efficient sequential writes. The log structure allows the system to handle random access semantics without actually performing random physical writes, thus preserving both adaptability and performance.
Solution Approach 2:
The patent introduces an additional dimensional layer - the log structure - between the logical view (random access patterns) and the physical view (sequential writes). This extra dimension allows the system to maintain random access adaptability at the logical level while executing sequential operations at the physical level, resolving the contradiction between adaptability and performance.
Data Source
AI summary
Disclosed is a method for managing logical block write requests for a flash drive. The method includes receiving a logical block write request from a file system; assigning a category to the logical block; and generating at least three writes from the logical block write request, a first write writes the logical block to an Erasure Unit (EU) according to the category assigned to each logical block, a second write inserts a Block Mapping Table (BMT) update entry to a BMT update log, and a third write commits the BMT update entry to an on-disk BMT, wherein the first and second writes are performed synchronously and the third write is performed asynchronously and in a batched fashion.


