2017 · 145 citations · 67 references
ComputingComputer ScienceComputer SystemsFault ToleranceFault-tolerant ComputingReal-time SystemsHigh-throughput ComputingLatency OptimizationStream ProcessingData StreamingLatency MetricsLatency MinimizationLatency ModelingMicro-batch ProcessingStream SchedulingStreaming Architectures
Large scale streaming systems aim to provide high throughput and low latency. They are often used to run mission-critical applications, and must be available 24x7. Thus such systems need to adapt to failures and inherent changes in workloads, with minimal impact on latency and throughput. Unfortunately, existing solutions require operators to choose between achieving low latency during normal operation and incurring minimal impact during adaptation. Continuous operator streaming systems, such as Naiad and Flink, provide low latency during normal execution but incur high overheads during adaptation (e.g., recovery), while micro-batch systems, such as Spark Streaming and FlumeJava, adapt rapidly at the cost of high latency during normal operations.
67
Sanjay Ghemawat · Communications of the ACM · 2008 · 18.5K citations · Full text
Congestion avoidance and control
Van Jacobson · ACM SIGCOMM Computer Communication Review · 1995 · 5.3K citations
Large Scale Distributed Deep Networks
Jay B. Dean, Greg S. Corrado, Rajat Monga et al. · 2012 · 2.9K citations