Druid的数据源列在Superset中显示为STRING

时间:2019-03-19 01:23:34

标签: druid superset

我已经使用宁静向Druid注入了数据。 数据源通过霸主的控制台可见,我可以查询所有这些信息。

  • 宁静 0.1.0
  • 德鲁伊 12.3
  • 超级集 0.1.0

当我将Druid的数据源附加到Superset时,我看到所有已定义的列都是String类型的。这很奇怪,因为我在宁静模式中定义了以下类型:

"dimensionsSpec": {
  "dimensions": [
   "some_id",    
   {
     "type": "double",
     "name": "total_positions"
   }]
}

我试图使用计算列和度量,但是当我保存这些新元素时,它们没有出现在Druid中。 Druid chart -> datasource editor

有人有类似的问题吗?有什么方法可以更改Superset中的列类型,或者应该以其他不同方式定义架构。 非常感谢。

2 个答案:

答案 0 :(得分:0)

我们的环境存在相同的问题。我们计划在Apache Branch Report中使用它。

作为一种解决方法,我们在Hive上为Druid创建了外部表,并在Superset中使用Hive连接器,以便在SQL Lab中转换为整数:https://cwiki.apache.org/confluence/display/Hive/Druid+Integration

但是,如果Superset图表可以开箱即用地解释数字尺寸,从而使体系结构更精简,那就更好了。

答案 1 :(得分:0)

我们遇到了类似的问题。默认情况下,所有尺寸均视为字符串。在“宁静”中,我们使用metrixSpec并将列定义为longSum。这些列将在Superset中反映为数字。记住要刷新Superset中的Druid元数据。

"metricsSpec": [
        {
          "name": "trafficUp",
          "type": "longSum",
          "fieldName": "trafficUp"
        }
]