TiDB 插入性能测试和优化

2020-09-29
阅读 1 分钟
6k
环境一共 4 个 TiKV 实例,CPU 数量每个实例 30-40 核不等。需要特别说明的是 TiKV 都是机械硬盘,不是 SSD!插入数据插入数据量 80000 条左右,只有两个字段。单线程批量插入可以看到单线程批量 insert 效率非常低,OPS 只有 100 左右,80000 条记录插入花了差不多 13 分钟。这个过程中 TiKV 实例的 I/O 比较紧张。按照...

MyBatis 如何实现流式查询

2020-04-26
阅读 3 分钟
15.6k
如果没有流式查询,我们想要从数据库取 1000 万条记录而又没有足够的内存时,就不得不分页查询,而分页查询效率取决于表设计,如果设计的不好,就无法执行高效的分页查询。因此流式查询是一个数据库访问框架必须具备的功能。
封面图

MySQL 的时间进位问题

2019-11-30
阅读 2 分钟
9.3k
MySQL 当中默认的时间类型(datetime 和 timestamp)的精度是秒,如果设置进去的时间值精度小于秒的话,就会被四舍五入,可能导致数据库中的值比原始值多了一秒。也就是说,本来属于今天的记录可能会被记到明天。
封面图

缓存的三个问题

2019-04-02
阅读 2 分钟
1.9k
缓存的作用是在内存中临时存储来自外部系统(如数据库)的数据,以便让请求更快的得到响应。如果请求数据在缓存中不存在,或者已经超时失效,那么也要从外部系统查询,然后放入缓存中,这个过程叫刷新缓存。
封面图

消息队列表设计原则

2017-05-27
阅读 1 分钟
3.3k
取记录的方式是定时轮询。不要一次把所有记录取出来,而是按流水号排序,取前若干条记录。轮询取记录的速度一定要超过生成记录的平均速度,否则消息永远都处理不完了。