[talks] Jude Nelson will present his Pre-FPO on Wednesday, March 30, 2016 at 2pm in CS 402.

Nicki Gotsis ngotsis at CS.Princeton.EDU
Wed Mar 23 15:07:01 EDT 2016

Jude Nelson will present his Pre-FPO on Wednesday, March 30, 2016  at 2pm in CS 402.

The members of his committee are:   Larry Peterson (adviser), John Hartman (reader; University of Arizona), Jen Rexford (reader), Brian Kernighan (non-reader),  Kai Li (non-reader)

Everyone is invited to attend his talk.  The talk title and abstract follow below:

"Syndicate: Software-defined Storage for Wide-area Networks"

The proliferation of commodity cloud services presents a golden opportunity for hosting data for wide-area applications.  Instead of writing a new storage system from scratch, developers can integrate existing component services into a coherent storage solution.  This is highly desirable in theory, because it reduces the amount of code they must deploy while helping them achieve their desired storage cost/performance trade-offs.  However, in practice this poses interesting distributed systems challenges, since each component can independently fail, become a performance bottleneck, become too costly to utilize, or change its API and behaviors.  Without careful design, built-from-parts wide-area storage can result in brittle, hard-to-modify, and expensive-to-operate applications.

In this thesis, we explore the challenges of integrating existing systems to create coherent wide-area storage.  Our solution is Syndicate, a scalable software-defined storage system for wide-area networks.  Unlike conventional built-from-parts storage, Syndicate lets developers explicitly control end-to-end data consistency, data flow processing, and administrative and trust boundaries across the wide-area.  With Syndicate, an application accesses data via a stable storage interface (such as a filesystem), while developers control at runtime how data moves through an ever-changing set of underlying existing systems.  In this manner, applications remain resilient to service changes--developers can "hot-swap" services for a better cost/performance trade-off, and tolerate service API changes and failures without taking the application offline.  We validate Syndicate's design by using it to construct three non-trivial wide-area applications, and show that Syndicate imposes minimal runtime overhead while significantly reducing the amount of storage code a developer must write.

Syndicate is open-source software comprising of approximately 30,000 lines of C++ and 13,000 lines of Python.  It is available at https://github.com/syndicate-storage.

More information about the talks mailing list