在Deequ中,如何使用Scala和Spark在下一次运行中保存或存储InMemoryStateProvider以进行增量计算

问题描述 投票:0回答:1

目前,我正在理解此文档:https://github.com/awslabs/deequ/blob/master/src/main/scala/com/amazon/deequ/examples/algebraic_states_example.md

[这里Deequ说我们可以进行有状态的指标计算并使用InMemoryStateProvider()存储结果现在我的问题是,一旦维护了状态,如何恢复我的计算,如他们的示例所示,这是可能的,但是如果我的服务器重新启动怎么办?是否有可能在本地保存此状态,然后将其加载回deequ并恢复我的计算或持久性,这是我唯一的选择?

我对此很陌生,所以也许我可能遗漏了一些东西,但是总的来说,我想对大数据进行增量计算,以避免在数据集时重新计算

scala apache-spark yarn data-quality amazon-deequ
1个回答
0
投票

您可以使用https://github.com/awslabs/deequ/blob/master/src/main/scala/com/amazon/deequ/analyzers/StateProvider.scala#L73处的HdfsStateProvider将状态存储到本地磁盘,HDFS或S3。这样一来,它可以在多次运行中保持不变。

最好,塞巴斯蒂安

© www.soinside.com 2019 - 2024. All rights reserved.