Skip to content

Commit

Permalink
Better landing page
Browse files Browse the repository at this point in the history
  • Loading branch information
aandres committed Jul 11, 2023
1 parent 520ced1 commit 252b7be
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 7 deletions.
18 changes: 12 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,30 @@

# Beavers

**Beavers** is a python library for stream processing, optimized for analytics.
[Beavers][1] is a python library for stream processing, optimized for analytics.

It is used at [Tradewell Technologies](https://www.tradewelltech.co/),
It is used at [Tradewell Technologies][2],
to calculate analytics and serve model predictions,
in both realtime and batch jobs.

# Key Features
## Key Features


* Works in **real time** (eg: reading from kafka) and **replay mode** (eg: reading from parquet)
* Optimized for analytics, it uses micro-batching (instead of processing records one by one)
* Similar to [incremental](https://github.com/janestreet/incremental), it updates nodes in a dag incrementally
* Taking inspiration from [kafka streams](https://www.confluent.io/blog/kafka-streams-tables-part-1-event-streaming/), there are two types of nodes in the dag:
* Similar to [incremental][3], it updates nodes in a dag incrementally
* Taking inspiration from [kafka streams][4], there are two types of nodes in the dag:
* **Stream:** ephemeral micro-batches of events (cleared after every cycle)
* **State:** durable state derived from streams
* Clear separation between the business logic and the IO.
So the same dag can be used in real time mode, replay mode or can be easily tested.
* functional interface (no inheritance required)
* Functional interface: no inheritance or decorator required


[1]: https://github.com/tradewelltech/beavers
[2]: https://www.tradewelltech.co/
[3]: https://github.com/janestreet/incremental
[4]: https://www.confluent.io/blog/kafka-streams-tables-part-1-event-streaming/

[pypi-image]: https://img.shields.io/pypi/v/beavers
[pypi-url]: https://pypi.org/project/beavers/
Expand Down
26 changes: 25 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,27 @@

# Beavers

[**Beavers**](https://github.com/tradewelltech/beavers) is a python library for stream processing, optimized for analytics.
[Beavers][1] is a python library for stream processing, optimized for analytics.

It is used at [Tradewell Technologies][2],
to calculate analytics and serve model predictions,
in both realtime and batch jobs.

## Key Features


* Works in **real time** (eg: reading from kafka) and **replay mode** (eg: reading from parquet)
* Optimized for analytics, it uses micro-batching (instead of processing records one by one)
* Similar to [incremental][3], it updates nodes in a dag incrementally
* Taking inspiration from [kafka streams][4], there are two types of nodes in the dag:
* **Stream:** ephemeral micro-batches of events (cleared after every cycle)
* **State:** durable state derived from streams
* Clear separation between the business logic and the IO.
So the same dag can be used in real time mode, replay mode or can be easily tested.
* Functional interface: no inheritance or decorator required


[1]: https://github.com/tradewelltech/beavers
[2]: https://www.tradewelltech.co/
[3]: https://github.com/janestreet/incremental
[4]: https://www.confluent.io/blog/kafka-streams-tables-part-1-event-streaming/

0 comments on commit 252b7be

Please sign in to comment.