0

ActivePivot 使用分区来提高并行性并加速查询执行。但是,在执行涉及后处理度量的查询时,我注意到后处理器的评估并没有从分区中受益:并行度没有增加。

是否可以让后处理器评估分区知道以使我的查询更快?

4

1 回答 1

2

事实上,ActivePivot 确实利用了分区优势来实现多核可扩展性、加速查询和数据管理,并使 NUMA(非统一内存访问)优化成为可能。

要并行进行后处理器评估,您需要在AMapReducePostProcessor后处理器之上创建一个。它存在于核心产品中,这个 map-reduce 后处理器的简单实现:SimpleDistributedPostProcessor.

假设您的后处理器定义如下:

 <measures>
      <postProcessor name="PnL.MyPP" pluginKey="XXX" [...] />
 </measures>

只需添加这个新的后处理器:

<postProcessor name="PnL.MyDistributedPP" pluginKey="SIMPLE_DISTRIBUTED" underlyingMeasures="PnL.MyPP.DIST"/>

请注意,underlyingMeasures 属性等于PnL.MyPP.DIST; 后缀.DIST强制性的。

后处理器的评估PnL.MyDistributedPP将以分布式方式在每个分区上执行,并以SUM聚合函数结束聚合。如果要使用其他聚合函数,只需在 xml 后处理器声明中更改它即可。

于 2014-09-01T13:22:22.177 回答