【TiDB 社区调研 】快来吐槽反馈问题,领走100积分

【调研背景】

TiDB 社区是 TiDB 社区用户、开发者、Contributor、合作伙伴共同构建的学习、分享、互助平台。这里不仅是 Ti 星人的聚集地,也是大家与 TiDB 社区相互连接、沟通交流的平台。

从最初的 1.0 版本到现在的 5.1 版本,TiDB 迭代更新之迅速,功能实现之全面,相信大家都有目共睹。但这一次,社区想站在大家的角度,用大家的眼睛来观察,看看我们还有哪些未尽完善之处~

  • 如果你有困惑但不知道该问谁
  • 想了解某一功能模块但是找不到学习资料
  • 苦恼于某一用法但不知道有没有更优解
  • 或是其他想要反馈的问题或建议

欢迎本帖下方留言!

【反馈奖励】

认真反馈意见,即可获得 100 经验值,100积分

【反馈留言格式参考】

1、您的需求描述:(请告诉我们,您希望我们帮助您实现什么样的目标)
2、您需要的文档 / 学习资料分类:(请描述您对哪一类的文档或学习资料有需求,比如 TiDB 运维、部署、故障排查、原理解析等,或具体 TiDB 某一模块的文档需求)

我们的目标是提供更强大的 TiDB,同时,也为大家提供详尽、丰富、全面的 TiDB 使用指南。无论您有什么样的问题,请不要犹豫,果断留言告诉我们~社区将根据大家的需求进行排期,竭力改善您的使用体验!

Tips: 如您想反馈使用过程中的故障或报错,请移步「互助交流」专区,认证还可获取加急权限~

2赞

问题类型: 文档学习资料类别 表,分区,页表的存储布局
您好,我最近在写一个玩具关系型数据库轮子

现在遇到的问题是表,分区,页表的问题.

我现在的解决方案是:

  1. 页作为基本的IO存储单元,用于存储Row类型数据.
  2. 分区: 这里我是将分区作为一个逻辑段
  3. 表: 表作为多个具有相同格式类型schema的分区集合

现在遇到的问题:

  1. 数据存储难以响应schema的变化
    一条Row是按照schema的格式连续存储在堆内存中,多条Row按照存入顺序连续存储
    如果使用alter 添加一列, 则新增列会占用下一列的存储空间.
    现在的解决方法是设置一个溢出区放置这些数据,但是新的溢出区现在难以与LruCache配合

我是想问一下TiDB这块是怎么做的,算是做了伸手党了吧 ( ^ _^ )

2赞

1、部分 监控指标 说明不清晰,无法判断指标过高是哪里引起的。

2、部分 配置参数 没有详细解释。不是很明确具体作用。

版本更新迭代很快,文档跟不上节奏。希望能够再完善一下当前文档。

2赞

好的,反馈已收到!

是时候让你举个 栗子了。
比如,你觉得监控指标里面,哪些说明需要更清晰或者补充说明一下?
配置参数哪一部分没有详细解释?
如果可以把你觉得有问题的地方列举出来,这边可以提给相关小伙伴先在目前的内容上做优化~

1赞

问题:使用 TiUP 部署集群,初始时,集群的配置由 TiUP 统一管理。在使用过程中,集群的配置难免会被其他工具修改(例如 tikv-ctl),这时候 TiUP 并不知情,为了避免下次 升级/重启 集群时,集群的配置被 TiUP 冲掉,必须手动的编辑 TiUP 所管理的配置文件。

这并不是 Bug, 而且官方文档里也有重点指出。

希望 TiUP 可以在变更集群配置的时候,做一下集群当前配置本地配置的差异,自动更新本地配置。或者,有危险操作时,展示 diff 并提示修改方法,并从流程上保证不让用户误覆盖。

2赞

各种离线包资源的下载入口希望汇总一下,统一能在官网下载页面找到,包括主程序包、周边工具包、DM包,还有ARM架构下对应的包。

2赞

等我晚点再举栗子。

配置参数:

废弃配置文件中 enable-streaming 配置项
既然废弃了,为什么设置为false、true仍然会对当前集群有效果? 文档也没明确说明

wal-recovery-mode
WAL 恢复模式,取值:0(TolerateCorruptedTailRecords),1(AbsoluteConsistency),2(PointInTimeRecovery),3(SkipAnyCorruptedRecords)。

看不懂

use-direct-io-for-flush-and-compaction
flush 或者 compaction 开启 DirectIO 的开关。

这个应该是比较重要的一个配置参数,没有详细的说明文档,比如设置为false\true分别对性能与安全性有什么影响。

监控指标:

Lock Resolve OPS

比如这个监控面板各指标没有详细的文档。

2赞

目前使用遇到的最大两个问题,
一、内存回收问题,因为总内存控制参数还在实验阶段,所以用做bi的集群就会频繁出现oom
二、部分查询的结果不太准确,会对业务有一些影响,这个在之前的帖子中举过一些例子
三、备份恢复这一块使用有些不太顺手,不过暂时对我业务影响不大(不重要)

2赞

优秀!

反馈已收到!

1赞

最近遇到的问题:

  1. drainer启动问题,按照官方给的内存不足无法启动。也不提供任何信息。据现在有观察 至少需要20G以上内存
  2. v4.0.13 dumping bug,在导出时会因为无主键导致异常中断。
2赞
  1. 运行阶段出现内存占用较高的时候,没有较好的办法或者操作,来快速的减少内存占用,快速释放掉占用部分的内存

  2. 缺少可以按照会话来配置最大执行时长的配置,对于影响整体性能的慢SQL,在会话配置的周期内可以直接kill 掉,可以减少资源的占用,释放运维的压力(目前只有全局级的配置)

  3. CDC 是否可以启用 debezium 支持,类似于Mysql GTID 的方式,接入到消息队列中,例如kafka,pulsar等,在由自定义的处理端,完成格式转换写入到最终的存储中

2赞

%E5%9B%BE%E7%89%87
tidb v5.1 安装启动

2赞

一、文档问题

  1. 博客上的文章能否标识写当时的版本,针对版本变化能够定期更新相关文章。
  2. 感觉官方文档的逻辑有些混乱,比如有些功能描述在前面的相应的章节没有反而在参考指南中有,能否和in action的文章内容进行整合,很多官档没有的内容在action系列里有
  3. 完善监控指标的文档说明
    二、功能建议
    1、 统计信息收集能否指定一个百分比或数量,可以按region数量或随机采样行数来收集,fast_analyze精度不够,全部收集时间又太长。
    2、SPM绑定的执行计划能否在explain后有标识显示spm起作用,可以查看SPM绑定的执行计
    3、 DDL操作,index操作和非index操作可以同时进行
  4. 执行计划黑名单可通过HINT实现
    5、 分区表增加交换分区功能(参考Oracle )方便历史数据归档
    6、 增加执行计划解析过程查看类似mysql profile或oracle的 10053事件
    7、官网一键安装离线包下载增加ARM版选择,很多都是离线环境用虚拟机tiup clone有些麻烦
    8、 br增量备份功能完善
  5. binlog功能进行简化集成不需要单独部署,仅在数据库内通过几个参数就能开启产生binlog日志
    三、遇到问题
    1、 set 修改变量后,当前会话无法看到修改后值需要重新登录
    2、 表顺序影响执行计划,已提帖,目前很久没更新了https://asktug.com/t/topic/94054/20,还望大佬们继续跟踪
3赞

我提一个小建议吧 希望官方上线一个完整的 tidb 基础架构 到 简单的测试的 分集的视频 网上的不靠谱感觉

嘻嘻 一百积分到手:grin:

1赞