是否可以在从Kafka摄取到德鲁伊的过程中按维度值过滤数据?
e.g。考虑维度:version
,其中可能包含以下值:v1
,v2
,v3
我希望只加载v2
。
我意识到可以使用Spark / Flink / Kafka Streams完成,但也许有一个开箱即用的解决方案
答案 0 :(得分:2)
您可以在提取过程中使用transformSpec
进行此操作。
http://druid.io/docs/latest/ingestion/transform-spec.html
根据文档:
转换规范允许Druid在执行期间过滤和转换输入数据 摄取。
任何query filters都可以应用于此。
使用NOT
过滤器的示例用法:
"transformSpec": {
"filter": {
"type": "and",
"fields": [
{
"type": "not",
"field": {
"type": "selector",
"dimension": "my_dimension",
"value": "filter_me"
}
},
{
"type": "not",
"field": {
"type": "selector",
"dimension": "my_dimension",
"value": "filter_me_also"
}
}
]
},
"transforms": []
}
答案 1 :(得分:1)
德鲁伊方面不可能你需要事先过滤数据。