2016 - 2024

感恩一路有你

雪花算法生成id是几位 MySQL分库分表之后,id主键如何处理?

浏览量:1529 时间:2021-03-15 08:10:49 作者:admin

MySQL分库分表之后,id主键如何处理?

我将从存在的问题和如何做中回答这个问题。。

没有办法避免这个问题,通常拆分SQL,使用多个查询,然后使用结果分别检查结果

!我们可以使用TCC编程模型来确保两个事务可以正确提交,但这种代码入侵方式相对较重!您还可以使用基于消息的数据一致性保证

!1. 使用多线程分别查询多个节点,然后汇总

在分布式系统中,如何生成分布式ID?

两种常用的分布式ID方法是UUID和snowflake算法。

UUID是一种本地ID生成方法,不需要远程调用,具有高性能、低延迟和良好的可扩展性,但UUID不支持增量。

该算法的核心思想是一个长ID:1位标识符(始终为0)、41位时间戳毫秒、10位机器识别码和12位序列号(毫秒)。从理论上讲,该算法可以在一台机器上每秒生成1000*(2^12)个ID,具有高性能、增长趋势和高灵活性。然而,算法依赖于机器的操作时钟。如果服务器倒计时,将生成重复的ID。

请问对于数据库的主键究竟要不要用自增id呢?

感谢您的邀请!此问题与特定的业务场景和技术实现有关:

1。业务场景:如订单、付款单等敏感字段不能自动添加。它们是具有高安全级别的字段,需要一个唯一的ID作为主键。

2. 技术实现:在实际开发过程中,批量导入或处理数据时,需要考虑技术实现的性能,因此需要从多方面验证是使用自增主键还是非自增主键。

雪花算法生成id是几位 雪花算法缺点 uuid和雪花算法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。