TIDB总结

刘超 17天前 ⋅ 793 阅读   编辑

使用

  分布式事务要做两阶段提交,并且底层还需要做 Raft 复制,如果一个事务非常大,会使得提交过程非常慢,并且会卡住下面的 Raft 复制流程。为了避免系统出现被卡住的情况,我们对事务的大小做了限制

1、单条 KV entry 不超过 6MB
2、KV entry 的总条数不超过 30w
3、KV entry 的总大小不超过 100MB

  所以在执行delete、insert时,可能报ERROR 9500 (HY000): transaction too large, len:300001

ERROR 9500 (HY000): transaction is too large,参数如下:

set @@tidb_batch_insert=1;
set @@tidb_batch_delete = ON;

  在操作tidb时,经常遇到ERROR 2013 (HY000): Lost connection to MySQL server during queryInterfaceError: (-1, 'error totally whack')问题,这时可以采用批量操作

  tidbv3.1.1 不支持字段类型修改

  tidbv3.1.1联合索引字段个数不能超过16个

  spark访问tidb,需要在spark-defaults.conf指定spark.sql.extensions、spark.tispark.pd.addresses两参数

  tidbv3.1.1如果不为null指定数据类型,将会报错

  tidbv3.1.1connect-timeout不能超过43200


注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: