You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Druid中能否为维度提取函数使用多个维度?

能否为维度提取函数使用多个维度?

当然可以!你给出的示例写法完全是正确的思路,不少OLAP分析引擎(比如Druid)都支持这种多维度传入的提取函数配置。

先来看你提供的标准配置示例:

{ 
  "type": "extraction", 
  "dimension": ["dimension_1", "dimension_2"], 
  "outputName": "new_dimension", 
  "outputType": "STRING", 
  "extractionFn": { 
    "type": "javascript", 
    "function": "function(x, y){ // do sth with both x and y to return the result }" 
  } 
}

咱们拆解下里面的关键点:

  • dimension字段支持传入数组,你写的["dimension_1", "dimension_2"]会把这两个维度的对应值按顺序传递给提取函数
  • 你的JavaScript函数里,参数x对应dimension_1的值,y对应dimension_2的值,参数顺序和dimension数组的顺序严格匹配,这点要注意别搞反
  • outputName定义了新生成维度的名称,outputType指定类型为STRING,只要你的函数返回值符合这个类型要求就没问题

另外给你几个实用提醒:

  • 要确认你的分析引擎支持JavaScript提取函数,有些引擎默认禁用该功能,可能需要在全局配置中开启
  • 如果后续需要用到更多维度,只需要在dimension数组里添加对应的维度名,同时在函数里增加对应参数即可(比如3个维度就写function(x, y, z){...})
  • 记得处理好空值场景,比如某个维度值为空时,函数里要做兼容逻辑,避免出现运行时错误

内容的提问来源于stack exchange,提问作者Elijah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 17:39:09