tidb内存

请问tidb在内存中是不会缓存数据的嘛,我看tibd机器的内存没啥变化啊,即便我多次查询一个key的数据,或者不同key的数据

数据是存储在tikv中的。像你说的这种情况,是缓存到tikv中的。
如果是DML,会把数据临时缓存到tidb中。查询的时候,如果涉及到多表关联,发生join的时候也会使用到tidb的内存,还有一种是小表缓存会存到tidb中。

tikv内存有热数据存储,我知道,但tidb这个DML需要再哪里进行设置呢?

设置什么?限制一个DML语句所使用的内存?

缓存在tikv里面了,tidb本身不缓存数据

热数据时缓存在tikv节点内存中。dml事务数据会在tidb节点分配内存。

要看的是tikv内存,少量数据应该看不出来

tidb是无状态的,应该不会缓存数据。

tidb只缓存少量的数据,一般看不出内存较大的变化,数据主要存储在tikv里。

1 个赞

db是无状态服务,并不会缓存数据

1 个赞

db无状态不会缓存的


同 这个大佬的观点
从执行计划看,tikv查询出来的数据 最终会汇总到tidb server中,它是有少量数据的

1 个赞

建议看看课程视频,里面都有讲解的

这个变化不是通过内存变化得来的吧,记得典型缓存包括,copro的cache,以及pd上过来的元数据信息。

TiDB server不持久化数据,持久化TiKV 负责
如果集群前面有负载均衡,那么 3个TiDB时,那个都可以从TiKV 读取数据处理操作

1 个赞