Join our Streaming Lakehouse Tour!
Register Now.->

Streaming Lakehouse

A Streaming Lakehouse (also sometimes referred to as a Real-time Lakehouse) is a modern data architecture that extends the capabilities of a traditional Data Lakehouse by deeply integrating real-time stream processing. It aims to unify batch and streaming data workloads on a common open storage foundation (the data lake), providing low-latency data ingestion, continuous processing, and immediate access to fresh, queryable insights.

The core idea is to enable both historical analysis (typical of data warehouses/lakehouses) and real-time analytics directly on the same data platform, often leveraging open table formats.

Key Components and Concepts

  1. Data Lake Foundation: Built on scalable and cost-effective cloud object storage (e.g., AWS S3, Google Cloud Storage, Azure Data Lake Storage).
  2. Open Table Formats: Utilizes open table formats like Apache Iceberg, Apache Hudi, or Delta Lake. These formats bring database-like features (ACID transactions, schema evolution, time travel, partitioning) to the raw data files in the lake, making them reliable and queryable.
  3. Streaming Ingestion & Processing Engine: A powerful stream processing engine (like RisingWave) is a central component. It's responsible for:
    • Ingesting data from real-time sources (Kafka, Pulsar, CDC, IoT, etc.).
    • Performing continuous transformations, joins, and aggregations on these streams.
    • Materializing results for low-latency querying.
  4. Unified Batch and Stream Processing: The architecture aims to allow both batch jobs (e.g., Spark, Trino, Presto) and streaming queries to operate on the same underlying data managed by the open table formats.
  5. Serving Layer:
    • Real-time / Fresh Data: The streaming engine (like RisingWave via its materialized views) can serve highly fresh, low-latency results directly.
    • Ad-hoc / Batch Queries: Traditional query engines can access the data in the lakehouse tables for batch analytics, BI reporting, and data science.
  6. Schema Management: Often involves a Schema Registry for managing schemas of streaming data sources. The open table formats handle schema for the data at rest in the lake.

Benefits of a Streaming Lakehouse

  • Simplified Architecture: Reduces the need for separate, siloed systems for batch and real-time processing (e.g., traditional Lambda architecture with distinct speed and batch layers). It promotes a more unified "Kappa-like" approach where streaming is primary.
  • Data Freshness: Makes up-to-the-second data available for analytics and operational use cases, as opposed to data that is hours or days old.
  • Reduced Data Duplication: By processing and storing data in a common format and location, it minimizes data silos and redundancy.
  • Cost Efficiency: Leverages inexpensive cloud storage and allows for flexible scaling of compute resources for both streaming and batch workloads.
  • Improved Data Consistency: Using open table formats with transactional capabilities helps ensure data integrity across both streaming writes and batch operations.
  • Enhanced Agility: Enables faster development and deployment of real-time data applications and analytics.
  • Single Source of Truth (Closer to): Strives to provide a unified view of data for both real-time and historical analysis.

Role of RisingWave in a Streaming Lakehouse

RisingWave is a key enabler for building Streaming Lakehouse architectures:

  • Real-time Ingestion and Processing: Ingests data from various streaming sources.
  • Continuous SQL-based Transformations: Allows users to define complex data transformations, joins, and aggregations using SQL, which are processed continuously.
  • Materialized Views for Freshness: Materializes the results of these streaming queries, providing low-latency access to always up-to-date data.
  • Sinking to Open Table Formats: RisingWave can act as a powerful engine that processes, refines, and aggregates streaming data and then sinks these results into open table formats like Apache Iceberg within the data lake. This populates the lakehouse with fresh, structured, and queryable data.
  • Serving Layer: Can directly serve queries on its materialized views for applications needing the freshest data.
  • Interoperability: By writing to open formats, RisingWave ensures that the data it processes can also be accessed by other batch query engines and BI tools operating on the lakehouse.

By integrating a streaming database like RisingWave with open table formats on a data lake, organizations can build powerful, flexible, and efficient Streaming Lakehouse platforms to meet both real-time and batch analytical needs.

The Journey: From Warehouse to Streaming Lakehouse

Understanding the Streaming Lakehouse requires looking at the evolution of data architectures:

  1. Data Warehouse: Optimized for structured data and Business Intelligence (BI). Often rigid, expensive, and primarily handled data in batches, leading to data freshness delays.
  2. Data Lake: Offered flexibility for diverse data types and low-cost storage (like AWS S3, GCS, ADLS). However, lacked transactional guarantees, schema enforcement, and query performance, often leading to "data swamps".
  3. Data Lakehouse: Bridged the gap by adding data warehouse-like structure and reliability features (ACID transactions, schema evolution, time travel) directly onto data lake storage, primarily through open table formats like Apache Iceberg, Delta Lake, and Apache Hudi. This enabled reliable batch processing and BI on the lake.
  4. The Streaming Gap: While Data Lakehouses improved batch processing on the lake, efficiently integrating real-time data streams and making them instantly available for querying alongside historical data remained a challenge, often requiring separate, complex streaming pipelines. The Streaming Lakehouse directly addresses this gap.

Core Components of a Streaming Lakehouse

A typical Streaming Lakehouse architecture integrates the following key components:

  • Cloud Object Storage: The scalable, durable, and cost-effective foundation (e.g., AWS S3, Google Cloud Storage, Azure Blob Storage) where all data resides.
  • Open Table Format: Essential for bringing database-like reliability and management to the raw storage. Apache Iceberg is frequently used in Streaming Lakehouses due to its robust features for handling concurrent writes, schema evolution, and efficient partitioning, which are critical for streaming updates. Delta Lake and Apache Hudi are other options.
  • Streaming Ingestion & Processing Engine: The heart of the "streaming" capability. This component continuously ingests data streams (from sources like Apache Kafka, message queues, or Change Data Capture (CDC) feeds), processes them in real-time using Streaming SQL, performs transformations, aggregations, and joins, and often maintains results in Materialized Views for low-latency access. RisingWave is specifically designed to fulfill this role efficiently.
  • (Optional) Batch Query Engines: Standard batch processing tools (like Apache Spark, Trino, Presto, Flink batch) can still operate directly on the same open table format tables managed by the streaming engine, ensuring compatibility for large-scale historical analysis or ad-hoc queries.

How a Streaming Lakehouse Works

In a simplified flow:

  1. Raw data streams (e.g., Kafka topics, Debezium CDC events) are ingested by the Streaming Engine (e.g., RisingWave).
  2. The Streaming Engine uses Streaming SQL to define continuous queries that process, transform, join, and aggregate this data.
  3. Results are often maintained incrementally within the Streaming Engine's state (e.g., via Materialized Views) for ultra-low-latency queries on the freshest data.
  4. The Streaming Engine uses a Sink connector to write processed data or changes from Materialized Views into Open Table Format tables (e.g., Apache Iceberg) residing on cloud object storage.
  5. Downstream applications can now:
    • Query the Streaming Engine's Materialized Views for near real-time insights.
    • Use batch or ad-hoc query engines to analyze the full historical data stored in the Iceberg tables.

Key Benefits

  • Data Freshness: Enables access to processed, queryable data with end-to-end latencies measured in seconds or milliseconds, rather than hours or days.
  • Unified Architecture: Simplifies the data stack by potentially eliminating separate batch and speed layers (Lambda architecture), reducing complexity and operational overhead. Provides a single source of truth for both real-time and historical data.
  • Scalability & Elasticity: Leverages cloud-native principles, often allowing independent scaling of storage and compute resources to meet varying demands.
  • Cost-Effectiveness: Utilizes affordable cloud object storage and open-source formats, reducing vendor lock-in and total cost of ownership compared to traditional warehouses.
  • Reliability: Inherits ACID transactions, schema enforcement, and time travel capabilities from the underlying open table format, ensuring data integrity even with concurrent streaming updates.
  • Flexibility: Supports diverse data types (structured, semi-structured) and allows various query engines and BI tools to access the same underlying data.

Common Use Cases

The Streaming Lakehouse architecture is well-suited for applications requiring fresh, reliable data, such as:

  • Real-time Dashboards & Business Intelligence
  • Operational Analytics (system monitoring, application performance)
  • Real-time Personalization & Recommendation Engines
  • Fraud Detection and Anomaly Detection
  • Streaming ETL/ELT Pipelines
  • Real-time IoT Data Analysis
  • ML Feature Engineering and Online Serving

RisingWave in the Streaming Lakehouse

RisingWave is designed to be a powerful and efficient streaming engine within a Streaming Lakehouse architecture. Its key enabling features include:

  • PostgreSQL-Compatible Streaming SQL: Allows users to define complex stream processing logic using familiar SQL syntax.
  • Incremental Materialized Views: Persistently stores and continuously updates query results with very low latency, serving as the real-time query layer.
  • Built-in State Management: Reliably manages the state required for complex operations like joins and aggregations.
  • Connectors: Offers source connectors for common streaming platforms (Kafka, Pulsar, Kinesis, CDC) and sink connectors, crucially including an Apache Iceberg sink, enabling it to write results directly to the lakehouse storage layer.
  • Separation of Storage and Compute: Aligns with the scalable, cloud-native principles of the lakehouse.

Conclusion

The Streaming Lakehouse represents a significant evolution in data architecture, merging the best of data lakes, data warehouses, and stream processing. By leveraging open table formats like Apache Iceberg and powerful streaming engines like RisingWave, organizations can build unified, scalable, and cost-effective platforms that deliver real-time insights from their data.

Related Glossary Terms

The Modern Backbone for Your
Event-Driven Infrastructure
GitHubXLinkedInSlackYouTube
Sign up for our to stay updated.