Dataflow - 状态持久化数据库
Dataflow - State persistence database
我们正在考虑使用 Beam/Dataflow 进行有状态处理:
- 全局 windows 指标的实时聚合(每 1 分钟)
- 大量并行会话(> 1 mio)的实时聚合
示例:获取在门户网站上注册后每 1 个 mio 客户购买的最高价格文章
此外,我们还希望在不干扰实时作业的情况下访问那些计算的聚合。
设计问题:当前状态后端是否可以涵盖它 - Windmill/Persistent 磁盘 [1] - 或者使用数据库(如 BigTable)是否更合适?
谢谢!
[1]
其实可以在Dataflow中定义Big Table connectors来进行读写操作。
此外,project.jobs.get method of the Dialogflow API that returns an instance of a job 是一个 json 响应,也包含“currentState”字段。
因此,我认为您可以构建一种自动化脚本来获取此字段值,然后使用 Big Table 连接器将其存储在 Big Table 数据库中,但这是一个非常复杂的解决方案,我不确定如果方便的话
我们正在考虑使用 Beam/Dataflow 进行有状态处理:
- 全局 windows 指标的实时聚合(每 1 分钟)
- 大量并行会话(> 1 mio)的实时聚合
示例:获取在门户网站上注册后每 1 个 mio 客户购买的最高价格文章
此外,我们还希望在不干扰实时作业的情况下访问那些计算的聚合。
设计问题:当前状态后端是否可以涵盖它 - Windmill/Persistent 磁盘 [1] - 或者使用数据库(如 BigTable)是否更合适?
谢谢!
[1]
其实可以在Dataflow中定义Big Table connectors来进行读写操作。 此外,project.jobs.get method of the Dialogflow API that returns an instance of a job 是一个 json 响应,也包含“currentState”字段。 因此,我认为您可以构建一种自动化脚本来获取此字段值,然后使用 Big Table 连接器将其存储在 Big Table 数据库中,但这是一个非常复杂的解决方案,我不确定如果方便的话