ITPub博客

首页 > 数据库 > MySQL > 令人奔溃的数据和业务逻辑

令人奔溃的数据和业务逻辑

原创 MySQL 作者:xuexiaogang 时间:2023-07-19 22:45:39 0 删除 编辑

前段时间不经意间看到一个数据库的日志,我将这个日志进行简化和脱敏。


可能有人会说这个没有索引,是全表扫描。其实这个和索引没关系。

不知道大家有没有觉得奇怪?为什么时间不一样,但是每次的行数都是一样的?关键是扫描行数和返回行数一模一样。(真实的数据是好几万行的扫描和好几万行的返回)

我不相信每天产生的数据一条不差。 这个和是不是有索引没有关系。

这个时候我第一感觉就是,看看表里面的数据是什么样的吧?

查看我脱敏的样例数据。


怎么样是不是很吃惊?

再看看表结构,这下明白了吧?这个数据类型就根本不对。


我见过用字符串表示时间的,这个是我极力反对的。这个无论在什么数据库上一般都不是好的选择。

当然用UNIX时间戳也不是不可以,最起码比字符串好。可惜这个ETL并不知道源数据是什么。还是按照date类型处理。结果就是这样了。

另外一个好奇点是,每次这样拿过去的数据有意义吗?因为完全不是实际的数据,根本对不上。或许这个业务重要程度低,无所谓数据对错了。

所以ETL处理数据要考虑很多事情,而避免这些问题最好的方式就是使用OGG等技术方案做日志级别同步,或者采用HTAP的解决方案。



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/637517/viewspace-2965220/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 古老的数据迁移
请登录后发表评论 登录
全部评论
OracleACE/PostgreSQLACE/阿里云MVP/腾讯云TVP/墨天轮 MVP/TiDBMVA/数盟会华东区长老/OpenTenBase社区委和技术委委员/架构师技术同盟名人堂成员上海地区理事会成员/if社区联合发起人/《DBA实战手记》作者/公众号:四海内皆兄弟

注册时间:2013-07-01

  • 博文量
    422
  • 访问量
    953269