首页 文章

如何在Druid中启用Javascript

提问于
浏览
1

我过去一周一直在使用德鲁伊,并想为一些postAggregations启用javascript .

我想我按照概述的步骤更新了 ../con f/druid/_common/ 中的 common.runtime.properties 文件以包含 druid.javascript.enabled=true . 然后我停止了当前的进程并重新运行了Quickstart程序,但它仍然表示禁用了JavaScript:

{
  "error" : "Unknown exception",
  "errorMessage" : "Instantiation of [simple type, class io.druid.query.aggregation.post.JavaScriptPostAggregator] value failed: JavaScript is disabled. (through reference chain: java.util.ArrayList[0])",
  "errorClass" : "com.fasterxml.jackson.databind.JsonMappingException",
  "host" : null
}

我目前正在“快速启动”配置中运行它 - 单个本地计算机 . 有什么指针吗?谢谢!

2 回答

  • 0

    JavaScript查询对于德鲁伊聚合 . 将文件另存为.body并点击curl请求 . 这是平均值的示例查询 .

    curl -X POST“http:// localhost:8082 / druid / v2 /?pretty”\ -H'content-type:application / json'-d @ query.body

    {
       "queryType":"groupBy",
       "dataSource":"whirldata",
       "granularity":"all",
       "dimensions":[],
       "aggregations":[{"name":"rows","type":"count","fieldName":"rows"},
    {"name":"TargetDOS","type":"doubleSum","fieldName":"Target DOS"}],"postAggregations":[
    {
      "type": "javascript",
      "name": "Target DOS Average",
      "fieldNames": ["TargetDOS", "rows"],
      "function": "function(TargetDOS, rows) { return Math.abs(TargetDOS) / rows; }"
    }],   "intervals":[ "2006-01-01T00:00:00.000Z/2020-01-01T00:00:00.000Z"  ]}
    
  • 0

    您缺少的部分可能是快速入门从 conf-quickstart 而不是 conf 读取配置 . 所以尝试编辑 conf-quickstart/druid/_common/common.runtime.properties .

相关问题