CORFU--which stands for Clusters of Redundant Flash Units, and also for an
island near Paxos in Greece--organizes a cluster of flash devices as a single,
shared log that can be accessed concurrently by multiple clients over the
network. The CORFU shared log makes it easy to build distributed applications
that require strong consistency at high speeds, such as databases, transactional
key-value stores, replicated state machines, and metadata services. CORFU can be
viewed as a distributed SSD, providing advantages over conventional SSDs such as
distributed wear-leveling, network locality, fault tolerance, incremental
scalability and geo-distribution. A single CORFU instance can support up to 200K
appends/sec, while reads scale linearly with cluster size. Importantly, CORFU is
designed to work directly over network-attached flash devices, slashing cost,
power consumption and latency by eliminating storage servers.