The past 10 years or so has seen a large amount of research on how to create end-to-end traces of distributed-systems’ activity. Such traces show the workflow of causally-related activity (e.g., activity required to service a request) across every component of the distributed system. For example, one end-to-end trace might show the functions executed by a request as it traverses a front-end gateway, a load balancer, a database, and the local filesystem where the requested data is stored. The trace might also show detailed timing information, such as the overall response-time of the associated request and the execution times of each individual function. Some examples of tracing-related research efforts include Magpie (OSDI 2004), Stardust (Sigmetrics 2006), and X-Trace (NSDI 2007). Recently, several industry implementations have also emerged, including Google’s Dapper and Twitter’s Zipkin. This year’s NSDI included two papers that could be classified as end-to-end tracing infrastructures: NetSight and FlowTags.
Tag: Cloud computing
This past semester, I co-developed and co-taught a graduate class on cloud computing (15-719, Fall 2013) with three other professors at CMU. The class was targeted at Master’s students (mostly) and PhD students (somewhat). My responsibilities included developing an initial version of the syllabus, creating and supporting the projects, and lecturing. I also created a project for a separate cloud computing online course being developed at CMU. This was my first time teaching/developing a class, so I wanted to record some of my experiences here.