Discretized Streams: A Fault-Tolerant Model for Scalable Stream Processing

Abstract

Many "big data" applications need to act on data arriving in real time. However, current programming models for distributed stream processing are relatively low-level often leaving the user to worry about consistency of state across the system and fault recovery. Furthermore, the models that provide fault recovery do so in an expensive manner, requiring either hot replication or long recovery times. We propose a new programming model discretized streams (D-Streams), that offers a high-level functional API, strong consistency, and efficient fault recovery. D-Streams support a new recovery mechanism that improves efficiency over the traditional replication and upstream backup schemes in streaming databases-parallel recovery of lost state-and unlike previous systems also mitigate stragglers. We implement D-Streams as an extension to the Spark cluster computing engine that lets users seamlessly intermix streaming, batch and interactive queries. Our system can process over 60 million records/second at sub-second latency on 100 nodes.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 14, 2012
Accession Number
ADA575859

Entities

People

  • Haoyuan Li
  • Ion Stoica
  • Matei Zaharia
  • Scott Shenker
  • Tathagata Das
  • Timothy Hunter

Organizations

  • University of California, Berkeley

Tags

Communities of Interest

  • Autonomy
  • Cyber
  • Materials and Manufacturing Processes
  • Space

DTIC Thesaurus Topics

  • Algorithms
  • Batch Processing
  • Big Data
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Consistency
  • Databases
  • Detection
  • Fault Tolerance
  • Human-Machine Interaction
  • Mobile Phones
  • Social Media
  • Social Networking Services
  • Statistics
  • Time Intervals

Fields of Study

  • Computer science

Readers

  • Distributed Systems and Data Platform Development
  • Fault Tolerant Diagnosis of Black and White Balloon Isolation Tests Using ¥.
  • Parallel and Distributed Computing.