我们有一堆用户可能想要查看窗口的数据并快速完成。他们可能希望查看一天,一周,一个月或任意开始和结束数据的数据窗口。实时对所有这些东西进行排序和总结对我们来说是痛苦的,所以我想到了在3D渲染中做类似于Mipmaps的事情。您最终存储了以各种不同比例预先计算的相同数据,然后使用不同的比例插入结果。所以我已经知道了一年,某个月,某个星期以及某个商店的特定日期的数字是什么,如果他们要求特定的范围,我会使用各种尺度快速添加一些给出正确的结果,但我没有必要重新处理完整的数据集,我只检索四或五个记录并添加或减去它们。
这是一个真实的模式吗?它是否有任何意义,我可以阅读有关如何做到最好的地方,或者有更好的方法来处理大量的数据,例如需要在不同的切片中查看?
看起来这应该是一个众所周知的问题。例如,很多人都有股票投资组合,他们每天都需要这样做。我们的数据不是股票价格,但想法是一样的。
答案 0 :(得分:2)
好的,我搜索并搜索了一些。 Andy Dent的链接让我开始将数据描述为“时间序列”,并帮助了一些人。然后我跑过OLAP并意识到我正在做的是重新发明。我知道这必须是一个众所周知的,彻底处理的问题,我是对的。 OLAP是它。
您构建了一堆聚合表,这些聚合表沿特定维度聚合数据(在本例中为时间),您甚至可以获得Mondrian之类的工具,这些工具将使用另一种查询语言(即非SQL)编写查询。一组事实表加上聚合,它将决定如何最好地对这些表执行查询。
答案 1 :(得分:1)
从某种意义上说,当你解释Mip Mapping如何工作(通过插值/外推)时,我认为你在这里回答了你自己的问题。
在“缩放”的不同级别,您只需选择较低的分辨率或采样率的数据。反过来适用于更高级别的“缩放” - 您需要对数据使用插值(如线性/多项式/样条/等)来估计数据点之间的值。
答案 2 :(得分:1)
我喜欢你对mipmapping的类比,我认为Observations and Measurements的领域,特别是采样制度可能就是你会找到你所追求的抽象数据设计的地方。它为您提供了数据背后的理论,尽管他们在XML数据模型方面比关系表更多地考虑。
我曾经和CSIRO的人一起工作,而且很多想法来自于为水采样传感器等事情管理庞大的数据集。更多细节见SEEGrid wiki。