我正在尝试使用 Firehose 将数据从 PostgreSQL 提取到 Druid。我已经添加了druid.extensions.loadList=["postgresql-metadata-storage"]conf 文件,但是任务失败了java.lang.ClassCastException: java.util.LinkedHashMap 无法转换为 java.nio.ByteBuffer摄取规范文件{ "type": "index", "spec": { "dataSchema": { "dataSource": "dataset_1007", "parser": { "type": "string", "parseSpec": { "format": "tsv", "columns": [ "id", "name", "datetimecol" ], "timestampSpec": { "column": "datetimecol", "format": "auto" }, "dimensionsSpec": { "dimensions": [ "id", "name", "datetimecol" ] } } }, "granularitySpec": { "type": "uniform", "segmentGranularity": "DAY", "queryGranularity": "NONE", "rollup": false } }, "ioConfig": { "type": "index", "firehose": { "type": "sql", "database": { "type": "postgresql", "connectorConfig": { "connectURI": "jdbc:postgresql://ISVDRDBILXP1/testdb", "user": "druid", "password": "druid" } }, "sqls": [ "SELECT id,name,datetimecol FROM public.testtable" ] }, "appendToExisting": false }, "tuningConfig": { "forceExtendableShardSpecs": true, "type": "index" } }}很难排除是哪个表列造成了这个问题,我已将所有列类型更改为 varchar()。请指出我是否在任何地方出错。
1 回答
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
如果有人在寻找答案。从 SQL 获取数据时,我们必须使用map解析器。这是我正在使用的更新规范。
"parser": {
"type" : "map",
"parseSpec": {
"format": "timeAndDims",
"dimensionsSpec": {
"dimensions": [
"dim1",
"dim2",
"dim3"
]
},
"timestampSpec": {
"format": "auto",
"column": "ts"
}
}
}
添加回答
举报
0/150
提交
取消