# Balloon: An Elastic Data Management Strategy for Interlaced Magnetic Recording
## 4 Balloon Design
### Adaptive Write Interference Data Placement  
#### 4.2.1 Track Allocation  
As described in Section 2.1, the tracks on an IMR disk are conceptually divided into bottom tracks and top tracks. To simplify the discussion in the subsequent sections, the collections of the bottom tracks are referred to as bottom regions and vice versa for the top regions. Figure 3: The track allocation rate for different workloads: The X-axis indicates the the percentage of completed write requests and the Y-axis shows the percentage of free tracks. The goal of the adaptive write interference data placement module is to improve placement efficiency by dynamically placing data on the specified track based on seek distance or track hotness. To prevent the unnecessary introduction of track rewrites, the allocation of tracks in the bottom region takes precedence. Initially, all unallocated tracks reside in the free track pool. As long as there are free tracks in the bottom region, any new incoming data are placed on these tracks. To minimize seek latency, the track allocator searches for the nearest free bottom track in the inside diameter (ID)/outside diameter (OD) direction, starting with the track accessed by the last I/O request. As shown in Figure 5a, there are no valid data that exist above the bottom track at this stage; so, it can be written freely without incurring additional rewrite overhead. Once the free tracks in the bottom region are exhausted, track allocation immediately switches from the bottom allocation phase to the top allocation phase. From then on, writes to the bottom track with write interference will trigger track rewrites. To reduce the frequency of track rewrites, dynamic allocation is proposed to guide the allocation of tracks in the top region. Specifically, the track allocator selects top tracks for incoming data based on the hotness of the bottom track, thus minimizing the probability that it is involved in rewrites. The evaluation of track hotness is described in Section 4.2.2. As shown in Figure 5b, when new data arrive, the track allocator searches for eligible candidates along the ID/OD direction. For free top track 1, it is not an ideal candidate, because the  
Figure 4: The overview of the proposed Balloon translation layer. Figure 5: Illustration of the adaptive write interference data placement: The track allocator determines which tracks to place data on based on space utilization and the write request type, where \(F\), \(W\), and \(H\) denote track hotness, i.e., frozen, warm, and hot, respectively. neighboring hot bottom track 0 and warm bottom track 2 have a higher probability of engaging it in track rewrites. In contrast, frozen tracks 4 and 6 indicate that they have not been updated recently, making it unlikely that the adjacent top track 5 is involved in track rewrites. Therefore, track 5 is treated as a candidate for allocation. However, as space utilization gradually increases, more and more top tracks are affected by write interference, which inevitably triggers track rewrites. To amortize and reduce the extra I/O generated by rewrites, the track allocator selects the eligible free top track to act as a temporary buffer for the target track to accommodate the write interference data. Therefore, from a functional perspective, tracks are further divided into data tracks and buffer tracks. It should be noted that since block-level I/O typically exhibits spatial locality, each buffer track is used exclusively. In fact, not only does this track-level caching maintain logical data block continuity, but the redirected data blocks do not incur costly metadata management overhead. As shown in Figure 5c, both the top track 9 and the top track 11 adjacent to the bottom track 10 contain valid data. Upon the arrival of the update request for bottom track 10, the track allocator selects the free top track 13 from the top region as its buffer track instead of the direct RMW operation.