Superset查询会丢数据问题排查

Superset版本 1.3.0

查询结果会比正确结果少两条数据

首先我先讲述我是如何发现这个问题的,准确的说是运营如何发现这个问题的。

数据有四列,分别是’Time’ ‘pid’ ‘eid’ ‘cnt’ ,首先我们在clickhouse客户端进行操作,其中我限定pid=’609’,然后eid进行group by 操作,然后sum(cnt),可以看到数据有三条

数据

我从superset进行同样的操作,需要注意的是我上面在clickhouse客户端操作的SQL就是在superset上操作view sql生成的SQL语句,所以他们肯定是相同的操作。

在这里插入图片描述

可以看到superset只有一条结果返回,经过我监控query_log日志中的SQL语句发现superset请求的SQL语句确实没有什么问题,但是他在接收到结果之后进行了一些操作会导致数据少两条。

经过多方排查以及询问,发现最后是superset连接clickhouse使用的协议导致的,首先superset连接clickhouse使用的是开源的第三方的库叫做 clickhouse-sqlalchemy ,它支持两种连接clickhouse的协议,分别是http以及native(TCP)协议其中我们默认使用的是http协议,反映出来的url就是这么写 :

clickhouse://bigdata:XXXXXXXXXX@127.0.0

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值