Skip to content

risingwavelabs/risingwave

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌊 Ride the Wave of Streaming Data.

Docs | Benchmarks | Demos

RisingWave is the world's most advanced event stream processing platform engineered to provide the simplest and most cost-efficient approach for processing, analyzing, and managing real-time event streaming data. It provides both a Postgres-compatible SQL interface and a DataFrame-style Python interface.

RisingWave can ingest millions of events per second, continuously join and analyze live data streams with historical tables, serve ad-hoc queries at low latency, and deliver fresh, consistent results wherever needed.

RisingWave

Try it out in 60 seconds

Install RisingWave standalone mode:

curl -L https://risingwave.com/sh | sh

To learn about other installation options, such as using a Docker image, see Quick Start.

Not just a stream processor!

RisingWave simplifies end-to-end development of real-time data pipelines and applications - going beyond traditional stream processors.

Like other stream processors, RisingWave supports:

  • Ingestion: Ingest millions of events per second from streaming and batch sources.
  • Stream processing: Perform real-time incremental processing to join and analyze live data with historical tables.
  • Delivery: Deliver fresh, consistent results to data lakes (e.g., Apache Iceberg) or any destination.

But RisingWave does more. It provides both online and offline storage:

  • Online serving: Row-based storage for ad-hoc point/range queries with single-digit millisecond latency.
  • Offline persistence: Apache Iceberg-based storage that persists streaming data at low cost, enabling open access by other query engines.

Key design decisions

RisingWave is designed to be easier to use and more cost-efficient:

PostgreSQL compatibility

  • Seamless integration: Connects via the PostgreSQL wire protocol, working with psql, JDBC, and any Postgres tool.
  • Expressive SQL: Supports structured, semi-structured, and unstructured data with a familiar SQL dialect.
  • No manual state tuning: Eliminates complex state management configurations.

Zero disk architecture

  • Cloud-native storage: Stores data in S3 (or equivalent), using local disk as a cache.
  • High performance: Optimized for complex queries like joins and time windowing.
  • Fast recovery: Recovers from system crashes within seconds.
  • Dynamic scaling: Instantly adjusts resources for workload spikes.

In what use cases does RisingWave excel?

RisingWave is particularly effective for the following use cases:

  • Streaming analytics: Achieve sub-second data freshness in live dashboards, ideal for high-stakes scenarios like stock trading, sports betting, and IoT monitoring.
  • Event-driven applications: Develop sophisticated monitoring and alerting systems for critical applications such as fraud and anomaly detection.
  • Real-time data enrichment: Continuously ingest data from diverse sources, conduct real-time data enrichment, and efficiently deliver the results to downstream systems.
  • Feature engineering: Transform batch and streaming data into features in your machine learning models using a unified codebase, ensuring seamless integration and consistency.

Production deployments

RisingWave Cloud offers the easiest way to run RisingWave in production.

For Docker deployment, please refer to Docker Compose.

For Kubernetes deployment, please refer to Kubernetes with Helm or Kubernetes with Operator.

Community

Looking for help, discussions, collaboration opportunities, or a casual afternoon chat with our fellow engineers and community members? Join our Slack workspace!

Notes on telemetry

RisingWave uses Scarf to collect anonymized installation analytics. These analytics help support us understand and improve the distribution of our package. The privacy policy of Scarf is available at https://about.scarf.sh/privacy-policy.

RisingWave also collects anonymous usage statistics to better understand how the community is using RisingWave. The sole intention of this exercise is to help improve the product. Users may opt out easily at any time. Please refer to the user documentation for more details.

License

RisingWave is distributed under the Apache License (Version 2.0). Please refer to LICENSE for more information.

Contributing

Thanks for your interest in contributing to the project! Please refer to RisingWave Developer Guide for more information.