Everyone Loves File: File Storage Service (FSS) in Oracle Cloud Infrastructure


Bradley C. Kuszmaul, Matteo Frigo, Justin Mazzola Paluska, and Alexander (Sasha) Sandler, Oracle Corporation


File Storage Service (FSS) is an elastic filesystem provided as a managed NFS service in Oracle Cloud Infrastructure. Using a pipelined Paxos implementation, we implemented a scalable block store that provides linearizable multipage limited-size transactions. On top of the block store, we built a scalable B-tree that provides linearizable multikey limited-size transactions. By using self-validating B-tree nodes and performing all Btree housekeeping operations as separate transactions, each key in a B-tree transaction requires only one page in the underlying block transaction. The B-tree holds the filesystem metadata. The filesystem provides snapshots by using versioned key-value pairs. The entire system is programmed using a nonblocking lock-free programming style. The presentation servers maintain no persistent local state, with any state kept in the B-tree, making it easy to scale up and failover the presentation servers. We use a non-scalable Paxos-replicated hash table to store configuration information required to bootstrap the system. The system throughput can be predicted by comparing an estimate of the network bandwidth needed for replication to the network bandwidth provided by the hardware. Latency on an unloaded system is about 4 times higher than a Linux NFS server backed by NVMe, reflecting the cost of replication.

Open Access Media


@inproceedings {234888,
author = {Bradley C. Kuszmaul and Matteo Frigo and Justin Mazzola Paluska and Alexander (Sasha) Sandler},
title = {Everyone Loves File: File Storage Service ({FSS}) in Oracle Cloud Infrastructure},
year = {2019},
address = {Renton, WA},
pages = {15--32},
url = {https://www.usenix.org/conference/atc19/presentation/kuszmaul},
publisher = {{USENIX} Association},