【发布时间】:2015-10-22 18:11:43
【问题描述】:
这本身不是一个应用程序引擎问题......尽管我们的应用程序在应用程序引擎上的 Python 中运行,使用 NDB 针对数据存储。所以问题是关于在分布式系统中处理大型数据集。
我们有一个不断增长的数据集,我们需要根据(计数、总和等)计算统计数据。我们有适当的系统以不同的方式成功地做到这一点,以便在事情发生变化时以事务方式维护它们……但是在某些情况下,我们想要删除我们的统计数据并从头开始重新计算它们……或者运行验证例程检查我们一直保持差异的计数/总和
问题是,一般来说,针对分布式系统中不断变化的超大型数据集构建统计数据的最佳实践是什么?
假设我们启动了一项大型 MapReduce 作业,以对一百万个实体的特定字段求和...当该作业运行时,有几个新实体进入,一些被删除,并且其他几个求和属性发生了变化。确保将这些添加/删除/更改纳入总和的最知名/公认/成功的方法有哪些?
【问题讨论】:
标签: google-app-engine mapreduce google-cloud-datastore app-engine-ndb appengine-pipeline