The workflow motif: a widely-useful performance diagnosis abstraction for distributed applications
Mania Abdi, Peter Desnoyers, Mark Crovella, Raja R. Sambasivan
TL;DR
The paper addresses the challenge of diagnosing problems in deployed distributed applications due to a mismatch between developer abstractions and available diagnosis tools. It introduces the workflow motif, a formal abstraction for frequent processing patterns in request workflows, augmented with performance characteristics, and defines a formal framework for mining them from workflow-centric traces using frequent-subgraph mining. The authors discuss candidate mining systems (Arabesque, Gaston) and present a first case study on Hadoop HDFS that identifies about 40 motifs at 75% support and highlights a slow-read motif as a potential optimization. If refined, workflow motifs could enable top-down, hierarchical diagnosis, improved anomaly detection, and targeted performance optimization across distributed storage and compute platforms.
Abstract
Diagnosing problems in deployed distributed applications continues to grow more challenging. A significant reason is the extreme mismatch between the powerful abstractions developers have available to build increasingly complex distributed applications versus the simple ones engineers have available to diagnose problems in them. To help, we present a novel abstraction, the workflow motif, instantiations of which represent characteristics of frequently-repeating patterns within and among request executions. We argue that workflow motifs will benefit many diagnosis tasks, formally define them, and use this definition to identify which frequent-subgraph-mining algorithms are good starting points for mining workflow motifs. We conclude by using an early version of workflow motifs to suggest performance-optimization points in HDFS.
