Python中的流式和数据处理图
项目描述
Python数据流
Tributary是一个用于在Python中构建数据处理图的库。与其他许多Python中的DAG库(如airflow、luigi、prefect、dagster、dask、kedro等)不同,Tributary不是为数据/ETL管道或调度而设计的。相反,Tributary更类似于mdf、loman、pyungo、streamz或pyfunctional等库,它被设计为数据模型实现的一部分。例如,greeks库利用Tributary构建用于期权定价的数据模型。
安装
使用pip安装
pip install tributary
或使用conda
conda install -c conda-forge tributary
或从源码安装
python setup.py install
注意:如果您想使用.graphviz()
方法可视化图,则需要安装Graphviz本身。
流类型
Tributary提供几种类型的流
流式
这些是同步、响应式数据流,使用异步Python生成器构建。它们在事件排序方面旨在模拟复杂事件处理器。
功能型
这些是功能型流,通过柯里化Python函数(回调)构建。
懒加载
这些是懒加载的Python流,只有当输入改变时才会传播输出。它们被实现为有向无环图。
示例
- 流式处理:在这个示例中,我们构建了各种前向传播的响应式图。
- 懒加载:在这个示例中,我们构建了各种懒加载的有向无环计算图。
- 自动微分:在这个示例中,我们使用
tributary
在懒加载和流式图中进行自动微分。
图形可视化
您可以使用Graphviz可视化图形。所有流式和懒加载节点都支持 graphviz
方法。
流式和懒加载节点还支持 ipydagred3 进行实时更新监控。
流式
在这里,绿色表示正在执行,黄色表示因为背压而阻塞,红色表示已传播 StreamEnd
(例如,流已结束)。
懒加载
在这里,绿色表示正在执行,红色表示节点已脏。请注意,节点是否脏的判断也是懒加载的(我们可以通过 isDirty
检查,它将更新节点的图状态)。
目录
请参阅 目录 以获取函数、转换、源和目的地的完整列表。
支持/贡献者
感谢以下组织提供代码或财务支持。
许可证
本软件根据Apache 2.0许可证授权。有关详细信息,请参阅 许可证 文件。
替代方案
以下是不完整的库列表,这些库实现了类似/重叠的功能
项目详情
下载文件
下载适用于您平台的自定义文件。如果您不确定选择哪一个,请了解有关 安装包 的更多信息。
源分布
构建分布
tributary-0.2.1.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 7f99e8257e989fabf5bb60b06dea5dd10d13c14b90de93490855d5b68d6c6fe6 |
|
MD5 | 867c53dfd794976456d8071735cf3e77 |
|
BLAKE2b-256 | fbcfcf7180aa27943a361783c8bde4eb888cb63b5ac9da626df33151a66fa9df |