美文网首页
clickhouse UUID不存在的解决方法

clickhouse UUID不存在的解决方法

作者: 瞬即逝转 | 来源:发表于2021-03-26 09:50 被阅读0次

    1.前情提要

    又是一天正常加班到凌晨的工作日,心血来潮改了一下clickhouse的配置文件(改了什么不重要),然后重启(这就很致命了),发现一切如昨,瞬间不慌,简单清理一下散落在座位周边零星的头发,骑上心爱的小电动想着早点回家峡谷逛逛,顺便早睡,毕竟明天依然要8.30上班。

    一划两三天过去了。。。。。。。

    有些事情虽迟但到,下面直奔主题

    2.问题现象

    某张表(这里称其为小T)最近突然没有数据写入
    小T简介:
    1.一张存储轨迹数据的表
    2.数据是通过物化视图实时消费kafka引擎表同步的
    3.被很多统计类的物化视图引用

    3.解决思路

    1.kafka问题检查

    1.通过查看消费组情况,发现有最新的kafka数据

    kafka-consumer-groups.sh --bootstrap-server ip:port --group groupname --describe --command-config consumer.properties
    

    2.手动消费topic,发现可以正常消费
    暂时认为kafka没有问题

    2.clickhouse检查

    历史问题关联分析:以前遇到过新建的kafka引擎表,因为 kafka_max_block_size太大导致无法消费,修改小一点才可以同步

    1.修改kafka_max_block_size=5000,重建kafka引擎表
    发现还是不行,尝试修改了几个不同数量

    2.手动消费kafka引擎表
    发现可以消费到最新数据,此时怀疑是物化视图同步出现的问题

    3.重建物化视图
    发现还是不行,一筹莫展,后来想要不直接往小T里面插一条数据试试

    4.直接往小T插入一条测试数据
    问题他来了,居然报错了,报物化视图不存在
    mv_szi_zm_car_year物化视图:一个基于小T实现年统计,语句会查询小T

    SQL 错误 [60]: ClickHouse exception, code: 60, host: xx.xx.xx.xx, port: xxxx; Code: 60, e.displayText() = DB::Exception: Table idap_zl.mv_szi_zm_car_year(287c82ce-b7f7-4950-8297-d25947f6ee06) doesn't exist. (version 20.10.3.30 (official build))
    

    然后检查一下数据库,发现有这个视图,但是他们的UUID居然不一样

    select uuid from system.tables t where name = 'mv_szi_zm_car_year';
    
    mv_szi_zm_car_year当前的UUID
    0873252a-9891-4dc2-8fba-016bd80cee10
    
    mv_szi_zm_car_year报错的UUID
    287c82ce-b7f7-4950-8297-d25947f6ee06
    

    5.怀疑是重启clickhouse的时候导致元数据没有同步

    /home/clickhouse/data/metadata/idap_zl/
    /home/clickhouse/data/store/d11/d11a2226-3977-4362-b1b1-997a01fe3417/
    /home/clickhouse/data/metadata_dropped

    检查了这个几个路径,发现都有没有报不存在的UUID

    后来在zk的日志文件中找了蛛丝马迹,发现有个这个物化视图的创建日志,且语句里指定了UUID(这里第一次知道,clickhouse建表,视图的时候可以手动指定UUID)

    6.重建mv_szi_zm_car_year,并指定UUID

    CREATE MATERIALIZED VIEW mv_szi_zm_car_year UUID '287c82ce-b7f7-4950-8297-d25947f6ee06'
    。。。。。。。。。。。。。
    

    大概有十几个物化视图引用了小T,根据报错信息,全部重建后,小T终于注入了新鲜数据,重获新生

    后记

    应该还是重启clickhouse导致元数据出了问题,重建修改UUID依然治标不治本,后面会继续研究如何根治,解决后会及时同步更新到文档中

    2021.3.30

    问题又一次出现,好烦。。。。。。。。。。

    相关文章

      网友评论

          本文标题:clickhouse UUID不存在的解决方法

          本文链接:https://www.haomeiwen.com/subject/veohhltx.html