在以下代码中:
dsBodyStartStopSort =
order dsBodyStartStop
by terminal_id, point_date_stamp, point_time_stamp, event_code
;
dsBodyStartStopRank =
rank dsBodyStartStopSort
;
store dsBodyStartStopSort
into 'xStartStopSort.csv'
using PigStorage(';')
;
我知道如果我不在中间执行RANK,排序顺序将进入STORE命令。这是猪的保证。
从我做过的测试中可以看出,做RANK会使不搞乱排序顺序 - 但保证吗?我不想只是运气好。
更一般地说,猪一旦完成后保留排序的规则是什么?是否会发生一些减少事件?它会在FILTER上运行吗?当然不是GROUP?只是想知道是否有关于猪何时以及如何保证或不保证订单的明确规则。
总结:1)RANK的订单是否保留? 2)如何保留订单?
答案 0 :(得分:0)
我在这个主题上找到的最好的文档:
除非您明确应用嵌套的ORDER BY,否则行李无序 操作如下所示。嵌套的FOREACH将保留 订购,让您按一个字段组合订购然后投影 只是你想要连接的值。
通过查看非官方的例子和评论,我得出以下结论:
public function hookActionProductUpdate($params) {
$product = $params['product'];
$arrrs = $product->getFrontFeatures(1);
pr($arrrs);die("No updating :(");
}
,如果确实需要,我只会在之后使用ORDER。