Druid 德鲁伊-获得前X记录,按时间排序,按一组维度分组?
是否有可能获得按时间排序、按一组维度分组的前X条记录 例子: 这是一个虚构的例子,旨在简单地说明问题 给定以下格式的数据源,我如何获取最近10名进行购买的人员,以及他们最近的购买金额和产品名称 因此,结果是10个独特的人,以及他们最近的购买金额和产品名称 数据源架构:Druid 德鲁伊-获得前X记录,按时间排序,按一组维度分组?,druid,Druid,是否有可能获得按时间排序、按一组维度分组的前X条记录 例子: 这是一个虚构的例子,旨在简单地说明问题 给定以下格式的数据源,我如何获取最近10名进行购买的人员,以及他们最近的购买金额和产品名称 因此,结果是10个独特的人,以及他们最近的购买金额和产品名称 数据源架构: purchases ----------------------------------------------------------------- timestamp first_name last_name c
purchases
-----------------------------------------------------------------
timestamp first_name last_name customer_id product_name purchase_amount
我尝试过的事情:
选择查询
这不会进行任何分组,但会按时间顺序排列最近的10条记录。问题是它们不是独一无二的
{
"context": {
"timeout": 8000
},
"queryType": "select",
"dataSource": "purchases",
"granularity": "all",
"intervals": [ "2017-04-01T00:00:00.000Z/2017-04-23T00:00:00.000Z" ],
"descending": "true",
"pagingSpec": { "pageIdentifiers": {}, "threshold": 10 }
}
分组查询
这将根据所有维度和指标进行分组,而不仅仅是根据名字、姓氏、客户id进行分组,然后根据最新的产品名称和购买金额进行分组
所以你会有10条记录,但他们不是10个独一无二的人。仅列出了10种独特的度量和维度组合
而且它不是按时间排序的
{
"queryType": "groupBy",
"dataSource": "purchases",
"granularity": "all",
"intervals": [ "2017-04-01T00:00:00.000Z/2017-04-23T00:00:00.000Z" ],
"dimensions": [
"first_name",
"last_name",
"customer_id",
"product_name"
],
"metrics": [
"purchase_amount"
],
"limitSpec": {
"type": "default",
"limit": 10
}
}