Releases
June 10, 2025

Quix Streams Release 3.16.0

Quix Streams 3.16.0 introduces join_lookup for seamless data enrichment, plus RocksDB optimizations and improved topic handling. Upgrade now for enhanced stream

Steve Rosam
Steve Rosam
Head of Content
QuixStreams 3.16.0, Lookup Joins

Python stream processing, simplified

Pure Python. No JVM. No wrappers. No cross-language debugging. Use streaming DataFrames and the whole Python ecosystem to build stream processing applications.

Python stream processing, simplified

Pure Python. No JVM. No wrappers. No cross-language debugging. Use streaming DataFrames and the whole Python ecosystem to build stream processing applications.

Data integration, simplified

Ingest, pre-process and load high volumes of data into any database, lake or warehouse, without overloading your systems or budgets.

The 4 Pillars of a Successful AI Strategy

Foundational strategies that leading companies use to overcome common obstacles and achieve sustained AI success.
Get the guide

Guide to the Event-Driven, Event Streaming Stack

Practical insights into event-driven technologies for developers and software architects.
Get the guide
Quix is a performant, general-purpose processing framework for streaming data. Build real-time AI applications and analytics systems in fewer lines of code using DataFrames with stateful operators and run it anywhere Python is installed.

Quix Streams 3.16.0: Accelerating R&D Data Pipelines with Enhanced Enrichment

Quix Streams 3.16.0 delivers critical enhancements for engineering teams managing complex R&D data workflows. This release focuses on improving data enrichment capabilities and system performance, specifically designed to accelerate the design-validation cycle in hardware development and testing environments.

Key Feature: Seamless Integration with R&D Data Sources

The experimental StreamingDataFrame.join_lookup() method enables real-time enrichment of test and simulation data with reference information from existing engineering systems. This addresses a critical need for integrating live test data with Model-Based Development tools like MATLAB and Simulink.

# Example usage of the new join_lookup
enriched_stream = stream.join_lookup(    
    lookup_func=query_database,  # Your custom lookup function    
    data_identifier="user_id",   # Field to match on    
    stateful=False               # Whether to cache results
)

Performance Optimizations for Engineering Workloads

Version 3.16.0 introduces optimizations specifically beneficial for handling large volumes of time-series data common in engineering applications:

Performance and Stability Improvements

Version 3.16.0 includes several under-the-hood optimizations:

  1. RocksDB Column Family Management: Reduces memory overhead by up to 40% for applications managing multiple test configurations, enabling more efficient processing of high-frequency sensor data.
  1. Topic Handling Refactoring: Improves reliability when managing multiple data streams from test rigs and simulation environments, with enhanced error recovery mechanisms.
  1. Windowed Reducer Fix: Ensures accurate statistical analysis of time-series data, critical for engineering validation and verification processes.

Real-World Applications for Engineering Teams

New resources demonstrate practical applications for R&D organizations:

  • Test Data Enrichment Guide: Step-by-step tutorial on enriching live test data with configuration parameters and reference models
  • Simulation-Data Correlation: Example implementation for correlating real-world test results with simulation outputs
  • Regulatory Compliance: Best practices for maintaining data lineage and audit trails in regulated environments

Getting Started

Upgrade to Quix Streams 3.16.0 using pip:

pip install quixstreams==3.16.0

More Information

For detailed documentation and examples, visit the Quix Streams documentation and for the full release note visit GitHub.

Note: The join_lookup feature is currently marked as experimental. We encourage users to test it in non-production environments and provide feedback to help shape its future development.

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.