US 12,326,838 B2
Implementation for efficient log storage
Hao Wang, Los Angeles, CA (US); Sheng Qiu, Los Angeles, CA (US); Yizheng Jiao, Los Angeles, CA (US); Jianyang Hu, Beijing (CN); and Kuankuan Guo, Beijing (CN)
Assigned to Lemon Inc., Grand Cayman (KY); and Beijing Volcano Engine Technology Co., Ltd., Beijing (CN)
Filed by Lemon Inc., Grand Cayman (KY); and Beijing Volcano Engine Technology Co., Ltd., Beijing (CN)
Filed on Sep. 27, 2023, as Appl. No. 18/475,943.
Prior Publication US 2024/0020277 A1, Jan. 18, 2024
Int. Cl. G06F 16/18 (2019.01); G06F 12/02 (2006.01); G06F 16/17 (2019.01); G06F 16/176 (2019.01)
CPC G06F 16/1805 (2019.01) [G06F 12/0253 (2013.01); G06F 16/1734 (2019.01); G06F 16/176 (2019.01); G06F 2212/7205 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A log engine configured to log data operation in a file system, the log engine comprising:
a physical processor configured to execute instructions to generate:
a user interface module configured to receive a plurality of data operation logs that respectively record a data operation and a sequence ID corresponding to an order of the data operation being performed; and
a shared log manager, implemented with a lock-free queue, that is configured to:
provide an in queue configured to consolidate the plurality of data operation logs, and
swap the plurality of data operation logs to an out queue with the plurality of data operation logs being ordered based on the sequence ID and saved in memory in a shared log, wherein
the shared log includes the plurality of data operation logs in sequential order based on the sequence ID and extended memory allocations such that tail latency from random write is avoided, wherein the extended memory allocations result from an extend of memory allocation for storing the shared log when the shared log having a file size exceeds a predefined file size allocation.