之前记得在论坛帖子有对pd store size, information_schema.tables.(index_length+data_length)的解释,单副本与多副本的计算,找不到了,
哪位大神还记得否?
看看有没有帮助
4 个赞
这个么?
1 个赞
很有帮助
应该不是,这个也有用,我研究研究
解释:
- pd store size:在 TiDB 中,PD(Placement Driver)负责全局元数据的存储以及 TiKV 组件的负载均衡调度。PD 中的
store size相关指标主要用于反映 TiKV 存储实例的空间使用情况。其中,Store capacity指每个 TiKV 实例的总的空间大小;Store available是每个 TiKV 实例的可用空间大小;Store used表示每个 TiKV 实例的已使用空间大小。此外,Store Region size可理解为压缩前的体积,Size amplification是压缩比平均值,且存在关系Store used ≈ Store Region size / Size amplification。 - information_schema.tables.(index_length + data_length) docs.oracle.com:在 TiDB 中,
information_schema.tables表提供了有关表的元数据信息。其中,data_length对于不同存储引擎含义有所不同,对于 InnoDB 类似存储引擎,它是聚簇索引所占用的近似空间大小,具体是聚簇索引的页数乘以页大小;对于 MyISAM 引擎,就是数据文件的长度(以字节为单位)。index_length是指非聚簇索引占用的近似空间大小,是所有非聚簇索引的页数乘以页大小之和(对于 InnoDB 等),对于 MyISAM 也是索引文件的长度(以字节为单位)。index_length + data_length大致反映了表数据和索引数据占用的总空间大小。 - 单副本与多副本计算:TiKV 中的数据默认会维护三副本,以保证高可用和自动故障转移。在计算存储空间时,若已知单副本数据大小,多副本情况下,理论上集群所需总存储空间 = 单副本数据大小 × 副本数量。但由于 TiDB 底层存储存在压缩机制,实际占用空间会小于该理论值。例如,若有 2PB 数据,按默认三副本且不考虑压缩,需 6PB 空间,但实际因压缩可能只需 3 - 4PB。若设置为单副本存储,虽然技术上可行,但会影响数据高可用性,一旦有节点故障,可能导致数据丢失。在估算备份等场景下的数据大小时,若备份是在每个 Region 的 Leader 处生成,备份大小约等于单副本数据大小,恢复时若每个 TiKV 都要访问所有备份文件,最终恢复的数据大小会有等同于恢复时 TiKV 节点数量的副本。
我也保存了。谢谢
是说名词和概念解释吗
不是问的配置文件,是表大小和索引大小的计算。
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。