元信息诊断用于检测当前集群中表元数据的一致性,并每周更新一次诊断结果,您可根据 ByteHouse 提供的元数据问题的解决方案进行修复,以提高集群的可用性和稳定性。该功能适用于排查表不可用原因、修复元数据异常、定期检查实例健康等场景。本文介绍了元信息诊断支持诊断的问题、影响、修复方案,以及如何使用元信息诊断。
ByteHouse 当前支持诊断的元数据问题如下,支持筛选指定集群、数据表的元问题。
问题 | 影响 | 修复方案 | 注意事项 |
|---|---|---|---|
本地表与分布式表结构不一致 | 若不修复,可能会影响数据的正常查询。 | 需要重新建表。 | 建议在业务低峰期执行。 |
分布式表未设置 Shard key | 若不修复,影响写入和查询性能。 | 需要重新建表。 | 建议在业务低峰期执行。 |
UNIQUE KEY 包含很多字段,未使用 Hash 函数 | 若不修复,影响写入和查询性能。 | 需要重新建表。 | 建议在业务低峰期执行。 |
表设置的 Index 数量与元数据不一致 | 若不修复,查询时会报错。 | 需要重新建表。 | 建议在业务低峰期执行。 |
表设置的 Index 属性与元数据不一致 | 若不修复,查询时会报错。 | 需要重新建表。 | 建议在业务低峰期执行。 |
表的字段数量与元数据不一致 | 若不修复,查询时会报错。 | 需要重新建表。 | 建议在业务低峰期执行。 |
表名与元数据不一致 | 若不修复,查询时会报错。 | 需要重新建表。 | 建议在业务低峰期执行。 |
表字段的 Nullable 属性与元数据不一致 | 若不修复,查询时会报错。 | 需要重新建表。 | 建议在业务低峰期执行。 |