For a write request, today flash storage cannot distinguish the logical object it comes from. In such object-oblivious flash devices, concurrent writes from different objects are simply packed in their arrival order to flash memory blocks; hence objects with different lifetimes are multiplexed onto the same flash blocks. This multiplexing incurs write amplification, worsening the performance. Tackling the multiplexing problem, we propose a novel interface for flash storage, FlashAlloc. It is used to pass the logical address ranges of logical objects to the flash storage and thus enlighten the storage to stream writes by objects. The object-aware flash storage can de-multiplex writes from different objects with distinct deathtimes into per-object dedicated flash blocks. Given that popular data stores separate writes using objects (e.g., SSTables in RocksDB), we can achieve, unlike the existing solutions, transparent write streaming just by calling FlashAlloc upon object creation. Our experimental results using an open-source SSD prototype demonstrate that FlashAlloc can reduce write amplification factor (WAF) in RocksDB, F2FS, and MySQL by 1.5, 2.5, and 0.3, respectively and thus improve throughput by 2x, 1.8x, and 1.2x, respectively. In particular, FlashAlloc will mitigate the interference among multitenants. When RocksDB and MySQL were run together on the same SSD, FlashAlloc decreased WAF from 4.2 to 2.5 and doubled their throughputs.
翻译:对于写请求, 今天闪闪存储无法区分它来自的逻辑对象 。 在这种对象可见闪闪装置中, 不同对象的共写器在到达时会被简单包装到闪存区块; 因此, 不同寿命的物体会被多个倍化到相同的闪存区块上。 这个多重任务会进行写增动, 使性能恶化。 处理多轴问题, 我们提出一个用于闪存、 闪存、 FlaxAloc 的新型界面。 我们用一个逻辑对象的逻辑地址将逻辑对象的逻辑范围传送到闪存, 从而将存储到各个对象的流中。 对象- 闪存的闪存可以将不同死亡时间的不同对象的双倍双倍化写入每个目标的闪存区块中。 鉴于流行数据仓库会用对象( 如 RocksDB 中的SS Tables) 进行不同的写振动, 使性写流更加透明, 我们用一个开放源的 SSDF 原样的实验结果显示, Flaimalput 和 MySQL AL 会分别通过1.5、 2.5 和 0. 2 和 FladSL 分别通过 Slix 递制、 2.L 、 和 25 和 25 和 和 25L 、 和 ALs、 20 2. 将 将 25L 、 分别通过 SL 、 、 和 25L 、 、 、 25L 、 、 和 25L 、 、 和 、 、 、 、 、 、 、 、 、 、 、 和 、 、 和 25L 、 、 、 、 、 、 、 、 、 、 、 、 、 、 和 、 、 、 、 、 、 、 、 、 和 、 、 、 和 、 和 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 和 、 和