Gotchas of Streaming Pipelines: Profiling & Performance Improvements

Every streaming pipeline is unique. When reviewing a pipeline’s performance, we ask the following questions: “Is there a bottleneck?”, “Is the pipeline performing optimally?”, “Will it continue to scale with increased load?”
Regularly asking these questions are vital to avoid scrambling to fix performance issues at the last minute. By doing so, one can tune pipelines to perform optimally, consistently satisfy SLAs, and reduce resource waste.

This article will cover the following topics:

  • Performance improvement process
  • Strategies to profile streaming pipelines
  • Common performance problems
  • General guidelines to improve performance

Performance Improvement Process

The performance improvement of any software system is not an independent and isolated task but an iterative process. It entails the following steps:

  1. Measure / profile performance
  2. Identify root cause
  3. Fix
  4. Go to step one

The process is repeated until you get the desired performance (at the targeted scale) or you exhaust all performance measures.

Profiling Your Pipeline

Identifying a performance issue without any profiling tool is a shot in the dark. Profiling is the first step of the process, and requires the right tools. Tools help you identify the most impactful performance issues faster. They can also be integrated with development environments to provide a comprehensive report early in the development lifecycle.

Click Here

Tags: Pipeline SLAs