# pathway **Repository Path**: amplitude/pathway ## Basic Information - **Project Name**: pathway - **Description**: Pathway 是一个高吞吐量、低延迟的数据处理框架,可为您处理实时数据和流媒体。专为 ❤️ Python 和 ML/AI 开发人员设计。 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-28 - **Last Updated**: 2024-11-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
Getting Started |
Example |
Performance |
Deployment |
Resources |
Documentation |
Blog |
Get Help
In addition to Pathway's built-in dashboard, you can [use Prometheus](https://pathway.com/developers/user-guide/deployment/prometheus-monitoring) to monitor your Pathway application.
## Resources
See also: **📖 [Pathway Documentation](https://pathway.com/developers/)** webpage (including API Docs).
### Videos about Pathway
[▶️ Building an LLM Application without a vector database](https://www.youtube.com/watch?v=kcrJSk00duw) - by [Jan Chorowski](https://scholar.google.com/citations?user=Yc94070AAAAJ) (7min 56s)
[▶️ Linear regression on a Kafka Stream](https://vimeo.com/805069039) - by [Richard Pelgrim](https://twitter.com/richardpelgrim) (7min 53s)
### Guides
- [Core concepts of Pathway](https://pathway.com/developers/user-guide/introduction/dataflow/)
- [Basic operations](https://pathway.com/developers/user-guide/data-transformation/table-operations/)
- [Joins](https://pathway.com/developers/user-guide/data-transformation/join-manual/)
- [Groupby](https://pathway.com/developers/user-guide/data-transformation/groupby-reduce-manual/)
- [Windowby](https://pathway.com/developers/user-guide/temporal-data/windows-manual/)
- [Transformer classes](https://pathway.com/developers/user-guide/diving-deeper/transformer-introduction/)
- [Input and output connectors](https://pathway.com/developers/user-guide/connecting-to-data/connectors/)
- [Coming from pandas](https://pathway.com/developers/user-guide/connecting-to-data/switch-from-batch-to-streaming/)
- [API docs](https://pathway.com/developers/api-docs/pathway)
- [Troubleshooting](https://pathway.com/developers/user-guide/development/troubleshooting/)
### Tutorials
- [Linear regression on a Kafka Stream](https://pathway.com/developers/showcases/linear_regression_with_kafka/) ([video](https://vimeo.com/805069039))
- Joins:
- [Interval joins](https://pathway.com/developers/user-guide/temporal-data/interval-join)
- [Window joins](https://pathway.com/developers/user-guide/temporal-data/window-join)
- [ASOF joins](https://pathway.com/developers/user-guide/temporal-data/asof-join)
- Connectors:
- [CSV connectors](https://pathway.com/developers/user-guide/connectors/csv_connectors/)
- [Database connectors](https://pathway.com/developers/user-guide/connectors/database-connectors/)
- [Kafka connectors](https://pathway.com/developers/user-guide/connectors/kafka_connectors/)
- [Custom Python connector](https://pathway.com/developers/user-guide/connectors/custom-python-connectors/)
- [Switching from Kafka to Redpanda](https://pathway.com/developers/user-guide/connectors/switching-to-redpanda/)
- [Monitoring Pathway with Prometheus](https://pathway.com/developers/user-guide/deployment/prometheus-monitoring/)
- [Time between events in a multi-topic event stream](https://pathway.com/developers/showcases/event_stream_processing_time_between_occurrences/)
### Showcases
- [Realtime Twitter Analysis App](https://pathway.com/developers/showcases/twitter/)
- [Realtime classification with Nearest Neighbors](https://pathway.com/developers/showcases/lsh/lsh_chapter1/)
- [Realtime Fuzzy joins](https://pathway.com/developers/showcases/fuzzy_join/fuzzy_join_chapter1/)
### External and community content
- [Real-time linear regression (Data Engineering Weekly)](https://pathway.com/developers/showcases/unlocking-data-stream-processing-1/)
- [Realtime server logs monitoring (Data Engineering Weekly)](https://pathway.com/developers/showcases/unlocking-data-stream-processing-2/)
- [Data enrichment with fuzzy joins (Data Engineering Weekly)](https://pathway.com/developers/showcases/unlocking-data-stream-processing-3/)
- [▶️ How to do Realtime Twitter Sentiment Analysis in Python (video)](https://www.youtube.com/watch?v=V7T3xHfjE4o)
If you would like to share with us some Pathway-related content, please give an admin a shout on [Discord](https://discord.gg/pathway).
### Manul conventions
Manuls (aka Pallas's Cats) [are creatures with fascinating habits](https://www.youtube.com/watch?v=rlSTBvViflc). As a tribute to them, we usually read `pw`, one of the most frequent tokens in Pathway code, as: `"paw"`.
If you try your own benchmarks, please don't hesitate to let us know. We investigate situations in which Pathway is underperforming on par with bugs (i.e., to our knowledge, they shouldn't happen...).
## Coming soon
Here are some features we plan to incorporate in the near future:
- Enhanced monitoring, observability, and data drift detection (integrates with Grafana visualization and other dashboarding tools).
- New connectors: interoperability with Delta Lake and Snowflake data sources.
- Easier connection setup for MongoDB.
- More performant garbage collection.
## Dependencies
Pathway is made to run in a "clean" Linux/MacOS + Python environment. When installing the pathway package with `pip` (from a wheel), you are likely to encounter a small number of Python package dependencies, such as sqlglot (used in the SQL API) and python-sat (useful for resolving dependencies during compilation). All necessary Rust crates are pre-built; the Rust compiler is not required to install Pathway, unless building from sources. A modified version of Timely/Differential Dataflow (which provides a dataflow assembly layer) is part of this repo.
## License
Pathway is distributed on a [BSL 1.1 License](https://github.com/pathwaycom/pathway/blob/main/LICENSE.txt) which allows for unlimited non-commercial use, as well as use of the Pathway package [for most commercial purposes](https://pathway.com/license/), free of charge. Code in this repository automatically converts to Open Source (Apache 2.0 License) after 4 years. Some [public repos](https://github.com/pathwaycom) which are complementary to this one (examples, libraries, connectors, etc.) are licensed as Open Source, under the MIT license.
## Contribution guidelines
If you develop a library or connector which you would like to integrate with this repo, we suggest releasing it first as a separate repo on a MIT/Apache 2.0 license.
For all concerns regarding core Pathway functionalities, Issues are encouraged. For further information, don't hesitate to engage with Pathway's [Discord community](https://discord.gg/pathway).
## Get Help
If you have any questions, issues, or just want to chat about Pathway, we're here to help! Feel free to:
- Check out the [documentation](https://pathway.com/developers/) for detailed information.
- [Open an issue on GitHub](https://github.com/pathwaycom/pathway/issues) if you encounter any bugs or have feature requests.
- Join us on [Discord](https://discord.com/invite/pathway) to connect with other users and get support.
- Reach out to us via email at [contact@pathway.com](mailto:contact@pathway.com).
Our team is always happy to help you and ensure that you get the most out of Pathway.
If you would like to better understand how best to use Pathway in your project, please don't hesitate to reach out to us.