GlusterFS is a clustered filesystem capable of scaling to several petabytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. GlusterFS is based on a stackable user space design without compromising performance. It allows access via Swift API, SMB, NFSv3, QEMU/KVM, OpenStack Compute, OpenStack Block Storage, Xen, CloudStack, HDFS API, oVirt, and more, all in a unified backend which enables multiple, simultaneous access points to the same data stores.
chunkd is a simple storage service based on the GET, PUT, and DELETE operations. It is meant to be used in building larger, replicated, distributed storage systems. Clients connect via TCP and remotely manage storage. Typical applications include distributed filesystems and other distributed storage applications.
xNBD is yet another NBD (Network Block Device) server program, which is fully compatible with the NBD client driver in the Linux kernel. In comparison with the original NBD server, it provides possibly better I/O performance by using mmap(), concurrent access from multiple clients, distributed Copy-on-Write disk, and live storage migration for virtual machines.
piler is an email archiving application with all the features required for an average company. The most prominent features are full text searching, deduplication, compression, encryption, digital fingerprinting, policy rules, access control, a built-in SMTP server, and Active Directory/openldap support.
EJDB is an embedded JSON database engine. It aims to be a fast MongoDB-like NoSQL library that can be embedded into C/C++/Nodejs/Python3/Lua applications. It features collection-level write locking, collection level transactions, string token matching queries, and a Node.js binding.
btier is a Linux kernel module that creates an auto tiering block device. It can be used to aggregate various types of storage into a virtual block device. btier will automatically optimize data placement on the underlying devices according to a policy that can be set. The size of a btier device is equal to the combined size of all block devices that were assigned to it. Only a small amount of space is used to store the metadata of the device. A btier device can contain up to 16 physical devices or files. Next to the built-in data migration engine, btier also provides an user space API the allows user to write custom data migration engines. Python, C, and bash example code is included. btier can use raw devices or (sparse) files (even hard mounted NFS) as part of the tiering device. The last tier can therefore reside on a deduplicating or compressing filesystem when needed. The devices that are used with btier should be redundant, since a btier device will lose all data when one of the underlying devices is lost. The performance of btier is determined by the devices that are used for the first tier. It is known to scale up to 130k IOPS with a RAID1 that consisted of modern PCIe SSD's. btier has support for SSD trim / discard, and can be configured in writeback or writethrough mode.