00:01
好,再给各位上一道甜品啊,就是什么呢?哎,这个买cat尔的全局序列啊,如果各位同学有用过咱们买cat1.6那个版本的应该知道,呃,这个买cat全局序列给咱们提供了三种方式啊,一种是本地文件,还有咱们的这个呃时间戳,还有呃数据库方式这三种啊,那买CAT2有变化吗?当然有啊,它给咱们简化了全局序列啊自动,哎,这个默认使用雪花算法生成的全局序列号啊,咱们不需要额外的去给去进行相关的配置啊,相关的一些更改啊,直接默认使用雪花算法啊,如果不需要这个,哎,这个买cat默认的全序列呢,咱们可以通过配置啊,关闭这个自动全序列啊,一般就用它的全局序列就可以。啊这块呢啊咱们去看一下啊,咱们什么呢?首先啊,我可以在这个建这个建咱们数据库表的时候啊,通建通过建表语句哎方式可以关闭全局序列啊这块呢,哎咱们可以什么呢?哎不需要这么开了,自动序列咱们就可以什么呢?哎在你建表时候进行设置啊,就是一个关键字auto to increment呃把这个关键字不设置就可以了,就是哎买CA就默认啊这个什么呢?哎,我不使用这个默认的雪花算法生成全局序列啊就认为啊咱们的什么呢?呃这个呃咱们的这个表有它自己的一个处理啊这块呢,当然这块呢一个我可以什么呢?通过咱们的呃这个Java程序啊,或者各种语言的程序啊,你可以什么呢?根据实际的业务需求,自己去生成全局序列啊,当然也可以使用,呃,这个买cat的全局序列,既然提到了雪花算法,咱们简单说说啊,那雪花算法到底是什么呢?很简单,就是引入了时间戳,还有什么呢?ID啊,保持咱们自增的这么一个分布式的。
01:50
ID生成算法啊,这块各位知道,首先它里面包含时间戳,还包含一些什么呢?来自增的这个ID,这样什么呢?可以保证整个这个ID啊,这个从趋势上它是什么呢?从小到大一直在自增的,然后呢,但是也可以保证你进行分布式的环境下,我我多个数据节点,它的ID不可能重复,哎,这是啊,咱们的雪花算法的一个什么呢?简单了解这是它的定义,那具体怎么做的,其实很很简单啊,咱们看一下底下举个例子,就是咱们64位的雪花算法,可以看到,哎,第一位,哎,我不用啊,就是一个保留字段不使用,然后呢,40,呃,咱们这个41位呢,后面往后推,41位是咱们时间戳,然后再往后,哎,这个十位是咱们的什么呢?工作,哎,咱们的工作的机器ID啊,通过咱们的分布式哎,机器ID进行了区分,最后啊12位是咱们的序列号啊,这是什么呢?哎,通过这三个什么参数,哎,可以保证我这个序列全局序列号不会出。
02:51
键重复,所以这块呢,呃,一般情况下啊,咱们都会什么呢?直接默认使用,呃这个买cat的雪花算法,呃,还是比较好用的啊呃自动默认啊就可以,那怎么默认使用呢?那往下看啊,很简单,只需要在咱们建表的时候加这么一个关键字就好。
03:08
啊,不需要做额外的操作了,哎,不不不像咱们一点多那个版本啊,你还得去进行配置,你还得选择相应的什么的,哎,这个对应的什么的,选择对应的类型不需要了啊,咱们默认就是加这个凹小线increment就可以啊至少啊,咱们选择使用默认的全局序列,那再往后呢,啊,那还有没有别的这个这个全局序列方式给咱们使用呢?当然有啊,往下。对,咱们可以设置数据库方式啊,就说买KD2简化了咱们的全局序列,一个是咱们的雪花算法生成的全局序列,再一个我可以使用,诶跟1.6相类似,使用这个,呃,数据库方式获取,因为咱们的别忘了数据库中间键啊,咱们这个一个呃往上啊,咱们可以看到那个原理图啊,咱们可以看到哎,我一个买开的后面可以针对什么呢?是不是有多个数据节点啊。哎,我这个,哎,咱们搭好这个买开的作为数据库中间建的环境里面别的不缺啊,咱们什么呢?哎,这个数据库是不是多的是对吧?啊这块呢,在这儿诶展现出来有一堆数据节点,好,那这块呢,既然有这么多数据库啊,咱们就可以在一个数据库上,哎一个数据节点去搭建咱们的这个全局序列啊,设置相应的全局序列规则,那怎么去做呢?呃,简单的给各位介绍一下啊,相信啊,如果咱们呃用过买CA1.6的同学应该什么呢?啊,包括看过这个我的买KD1.6视频的同学应该都有所了解啊,就是按照步骤一步一步去做一成啊很简单,那这块呢,买买CAT2也一样啊,也很简单啊,我就不给各位演示了,咱们带着各位去看看相应的步骤啊,首先啊,咱们要在什么呢?哎,咱们的这个原型库的这个服务器上啊,咱们的比如说举一个例子啊,比如d be,咱们创建了一个什么呢?哎,DB库里面导入咱们的相关的啊这个哎,咱们的数据库索引号的思口啊,直接把这个思库导入就成。
04:59
啊,这有什么呢?建咱们的数据库全局序列的一个脚本,你老师这个脚本到哪去找,带着各位去翻翻啊,直接进到咱们的什么呢?哎,这个哎买cat安装包啊,就是给各位咱们什么提供那个买cat安装包,诶咱们去什么呢?呃,把这个安装包准备好,诶直接挪到咱们的虚拟基金里边,诶直接启动就可以使用的,来进去看一眼,在这里面有一个cof这个目录,所以下面各位就在这儿。
05:26
都给咱们提供好了,你只要原封不动的,诶,在你想要作为什么呢?哎,这个全局序列的那个库里面,你直接运行就好啊,直接运行一下这个脚本,呃,就能创建好打好这个环境啊这块呢很简单啊,我就不带各位去看这个脚本的详细内容了啊,这块呢,呃,只需要各位注意一点,他就是创立一张表,设定咱们全序列的规则啊,但是提醒各位就是这里面的呃,脚本一句一定要注意啊,一点都不能改啊,这是什么呢?呃,人家官方给咱们提供的已经写好的语句啊,咱们直接运行就好啊,不要自己去更改它,好,那运行完这个语句之后啊,再往后看。
06:05
诶,咱们还得加一个配置啊,这个在咱们的呃,这个maca啊,这个配置目录下,诶,添加全局序列的配置文件啊,它命名咱们也是按照规则命名就成啊,这个可以什么呢?这个在前面第一位写咱们数据库的名字,然后第二位写你的表的名字,然后呢?啊,再往后呃,点呃se.jason按照这种方式去命名就成,里面内容呢,也并不复杂啊,在这设置下啊,这个相关的字段啊,主要的字段就是在这儿啊,哎,这块这个咱们对应的target name啊,你对应的什么的,呃,你对应的这个数据源的信息啊,咱们的这个呃,数据源相关配置,还有你对应的什么的,指定的咱们的物理库名是谁啊,把这个配置好就可以,还有就是咱们的全局序列的,哎,它的名称啊,把这个规定一下就可以了啊,这个很简单啊,把它搭建好,然后之后呢,诶咱们重启这个买CA之后啊,就能看到哎这个相关的什么的,诶到这个诶导入之后,咱们就可以查看库里面,哎这个对应的表里。
07:06
面哎这个my cat SE这张表里面有没有这条记录,如果有那就是搭建完成了啊这块呢,哎对应的字段啊,就是有什么cment是咱们自增的,这个什么呢?哎这个递增的这个不长是多少啊这块呢,哎这个像咱们的表里这个设置啊,就是以一为不长去往上增,然后呢,还有就是在这儿,哎咱们对应什么呢?从啊多少号开始啊各位这些咱们可以随意自己去什么呢设置啊这个咱们来看下啊每次什么呢?哎当啊这个不长啊每次什么呢?哎这个哎当这个什么呢,咱们设置成1000的时候,哎每次会什么递增1000啊去取这个序列号,对这块呢,咱们简单了解就可以啊,去了解一下它怎么去使用就可以了。好,那这块呢,诶,这是咱们对应的什么呢?哎,把这个环境打好就可以去使用它,那当然咱们也可以什么呢?呃,这个可以切换咱们数据库的这个什么创建全局序列的方式啊,这一种是雪花方式啊,雪花的这个什么的算法方式。
08:06
一种是啊,咱们就是数据库方式怎么去切换的,很简单啊,咱们首先啊,咱们要使用注释啊,我需要先导入咱们的这个使用这个注释啊,这种方式啊,之前先导入咱们的数据库脚本,而且提醒各位这个数据库脚本一定切记啊,不要咱买cat客户端执行,什么意思呢?比如说咱们举个例子啊,呃,比如说我这块呢,哎,这是咱们买cat的客户端啊,这块呢,哎,这是买catd客户端,咱们有两个节点,一个是100,一个是99,我选择100作为我的这个全局序列啊,所存在的数据库,咱们在这里面去执行那个脚本啊,不要在买看里面执行,可这块一定要切记,切记好了继续等后,那咱们把这个什么呢?环境准备好,然后呢,之后呢,呃,设置好咱们的这个,呃,刚刚的这个什么呢?买cat的全局系列这个表的信息之后,哎,我直接通过在这哎注释的方式,哎,我可以去进行个切换啊,这块呢,哎把这个去咱们全局序列切换成数据库方式,当然你也可以说啊,我不用数据库方式。
09:06
想要再切回这个雪花算法怎么办?底下就是切回雪花算法的,呃,相关的命令啊各位这块呢,还是简单了解成一般情况下啊,咱们用这个要么是哎,我完全不用买CAD提供的这个全局序列,要么啊我就什么呢,直接用它默认的这种就够用啊这是啊,带着各位啊,咱们去什么呢?呃,简单了解一下啊,这个my cat全局序列。
我来说两句