地藏Kelvin
(地藏kelvin)
1
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
-
增加TIKV节点后,会把原有数据的部分数据迁移到新节点。但在这个时候,执行sql,update正在被迁移的那部分数据。
请问这个时候,数据是否会被更新?是否会等迁移完成后执行sql,还是说,update正在迁移的数据时会失败。
-
如果因增加节点而正在迁移数据时,这个时候执行insert是否会插入到根据原有路由规则,插入到原位置。还是说会按照新路由规则,匹配插入到新节点的数据将会被插入到新kv节点?
-
路由时会根据tb表名_主键_索引 得出出key,那么key将会落在哪个tikv中,是根据什么来定?是不是3个节点时,key%3=n,则用n来决定节点位置?因为我需要知道,增加tikv时,发生部分数据迁移,这个时候会影响哪些数据。
-
我以前的mysql数据库的表的主键是用雪花算法生成出来的,导入到tidb时,主键rowid会沿用之前的雪花生成的主键吗?如果用了,那么能让tidb平均分配的3个tikv上吗?
地藏Kelvin
(地藏kelvin)
3
我以前的mysql数据库的表的主键是用雪花算法生成出来的,导入到tidb时,主键rowid会时之前的雪花生成的主键吗?生成出来的数字都很大,如7978321312132 。如果导入后,那么能让tidb平均分配的3个tikv上吗?
地藏Kelvin
(地藏kelvin)
5
但是我以前的主键的数据生成出来的都是70000000000~80000000000这个范围内,且在这个范围内均匀。不存在小于70000000000和大于80000000000数字。所以我不知道会不会平均落在3个节点,还是说我这种情况都在在一个节点上。
所以我想知道key拼接为“tb表名_主键_索引”后,tidb是按key的什么规则来算出落在哪个tikv?
yilong
(yi888long)
6
system
(system)
关闭
9
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。