限制Kettle的mongodb输入中的行数

时间:2014-11-10 08:53:17

标签: mongodb pentaho kettle

我想通过限制行数来检索mongodb输入中的数据。 但是我发现$limit操作在Kettle中不起作用。

有一个类似的帖子使用$maxScan来解决它(link)。但我的查询中有一些条件。例如:

{ "$query" : { "type" : " view " } , $orderby : { "time" : -1}, $limit : 100 } // not working

使用$maxScan的结果完全不同。 $maxScan只能返回10行。

我怎么能解决这个问题?为什么水壶不支持$limit操作?我认为这是一项基本操作。

非常感谢!

2 个答案:

答案 0 :(得分:1)

也许您可以使用聚合框架。

答案 1 :(得分:1)

最后!我通过@Keviswang的建议解决了这个问题。我们必须使用MongoDB提供的聚合方法,这里是链接:docs.mongodb.org/manual/applications/aggregation

就我而言,我在MongoDB输入Kettle中使用此查询,我们还必须选择Query is aggregation pipline

{$match: {activity_type: " view "}},
{$sort: {activity_target: -1 } },
{$limit: 10}

以下屏幕截图可帮助您更清楚地了解操作。

enter image description here enter image description here