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

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" Abstract 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.
participants (1)
-
Nicki Gotsis