CPC G06F 3/0611 (2013.01) [G06F 3/067 (2013.01); G06F 3/0631 (2013.01); G06F 3/0644 (2013.01); G06F 3/0652 (2013.01); G06F 3/0683 (2013.01); G06F 12/0808 (2013.01); G06F 12/128 (2013.01); G06F 16/1727 (2019.01); H04L 67/1097 (2013.01); G06F 12/12 (2013.01); G06F 2212/1044 (2013.01)] | 24 Claims |
1. A method for operating a region server of a distributed computing system, the method comprising:
tracking usage of a memory arena in a memory heap of the region server, the memory arena dedicated to a target region of the distributed computing system, wherein the memory arena is configured to utilize an offset pointer to track a previous end location associated with a previous write request so that a subsequent write request can continue data writing from the previous end location, and wherein the offset pointer is reset upon allocating a new chunk of blocks for the target region;
determining, based on the tracking, that usage of the memory arena has reached a usage threshold; and
flushing data from the memory arena to a storage in response to determining that usage of the memory arena has reached the usage threshold;
wherein the memory arena is a contiguous portion of the memory heap such that when said flushing occurs data storage space freed from the memory arena is also contiguous.
|