Skip to content

Pravega Overview

Pravega is an open source storage primitive implementing Streams for continuous and unbounded data. A Pravega stream is a durable, elastic, append-only, unbounded sequence of bytes that has good performance and strong consistency.

Read Pravega Concepts for more details.

Key Features

  • Exactly-Once Semantics - Ensure that each event is delivered and processed exactly once, with exact ordering guarantees, despite failures in clients, servers or the network.

  • Auto Scaling - Unlike systems with static partitioning, Pravega can automatically scale individual data streams to accommodate changes in data ingestion rate.

  • Distributed Computing Primitive - Pravega is great for distributed computing; it can be used as a data storage mechanism, for messaging between processes and for other distributed computing services such as leader election.

  • Write Efficiency - Pravega shrinks write latency to milliseconds, and seamlessly scales to handle high throughput reads and writes from thousands of concurrent clients, making it ideal for IoT and other time sensitive applications.

  • Unlimited Retention - Ingest, process and retain data in streams forever. Use same paradigm to access both real-time and historical events stored in Pravega.

  • Storage Efficiency - Use Pravega to build pipelines of data processing, combining batch, real-time and other applications without duplicating data for every step of the pipeline.

  • Durability - Don't compromise between performance, durability and consistency. Pravega persists and protects data before the write operation is acknowledged to the client.

  • Transaction Support - A developer uses a Pravega Transaction to ensure that a set of events are written to a stream atomically.

Releases

The latest pravega releases can be found on the Github Release project page.

Quick Start

Read Getting Started page for more information, and also visit sample-apps repo for more applications.

Frequently Asked Questions

You can find a list of frequently asked questions here.

Running Pravega

Pravega can be installed locally or in a distributed environment. The installation and deployment of Pravega is covered in the Running Pravega guide.

Support

Don’t hesitate to ask! Contact the developers and community on the mailing lists or on slack if you need any help. Open an issue if you found a bug on Github Issues

Contributing

Become one of the contributors! We thrive to build a welcoming and open community for anyone who wants to use the system or contribute to it. Here we describe how to contribute to Pravega! You can see the roadmap document here

About

Pravega is 100% open source and community-driven. All components are available under Apache 2 License on GitHub.