What Is Nessie?
				
					Nessie is a distributed, high-throughput, low-latency key-value store. Nessie
					quickly and easily enables high-performance distributed storage. Its in-memory
					data retention, as well as its peer-to-peer inspired design, make it perfect
					for cloud and cluster computing workloads.
				
				What Differentiates Nessie from Other Key-Value Stores?
				
					Programmers are inundated with options for key-value stores, so what makes
					Nessie special? Several properties help Nessie stand out from the pack:
				
				
					- 
						Nessie is RDMA-enabled: Unlike most key-value stores, Nessie
						is designed on top of Remote Direct Memory Access (RDMA), instead of
						traditional TCP or UDP technologies. RDMA allows Nessie to complete operations
						within the span of several microseconds. A non-RDMA-enabled key-value store
						typically completes an operation within a few hundred microseconds at best,
						with the overhead of TCP or UDP communication dominating the cost of the
						operation.
					
 
					- 
						Nessie is client-driven: Nessie also uses RDMA to implement a
						purely client-driven protocol. There are no polling server processes required
						for Nessie to achieve low-latency. This means that CPU resources are only
						consumed by the system when absolutely necessary, making Nessie resilient to
						CPU interference from other processes, and CPU / energy conserving during
						periods of non-peak system load.
					
 
					- 
						Nessie is distributed: Nessie is designed with a peer-to-peer
						architecture in mind, allowing each node in the system to perform both storage
						and computation, ensuring a very high degree of scalability.
					
 
					- 
						Nessie is flexible and locality-aware: Nessie is able to
						migrate key-value pair ownership between nodes at runtime. This means that
						Nessie requires no pre-partitioning of the key-value space, simplifying
						configuration and preventing poor performance that can arise from
						misconfiguration. Additionally, Nessie is able to use its online data migration
						abilities to better exploit data locality - By appropriately moving data
						between nodes according to a workload plan or access patterns, Nessie can
						reduce the amount of network usage required to satisfy a request, reducing
						resource contention and boosting performance.
					
 
				
				Learn More
				
					To learn more about the types of workloads that Nessie is suitable for, as well
					as implementation details, please see the about page.
					For an even more in-depth examination of Nessie, the
					publications page
					links to Nessie-related documents.
				
				Questions and Comments
				
				
					To ask a question about Nessie or provide feedback to the authors, please see
					the contact page.