00:00
那接下来呢,我们看一下它里边还有一个切片啊,还有一个切片进去啊,那副本呢,确实提高了高可用,但是两个数据呢完全一样,它并没有达到这个扩容的效果,所谓扩容指的是什么意思啊?为什么说我们副本没有达到扩容的效果呀?何为扩容?对副本的数据冗余的,那这句话什么意思啊,是这样啊,那你看现在我用102103拉了一个集群没问题吧。102103搭了一个集群,但是现在呢,我整个。
01:02
集群存储的数据总量啊,能存储的数据总量是不是取决于他两个人磁盘的最小值啊。假如说你能存一个G,你能存500兆。啊,那么呢,只能存多少啊,最多只能存500兆的数据吧。没问题吧,啊,那所谓扩容是什么意思呢?那你既然1021个G空间,你有500兆,那我想存什么呢?1.5个G。对吧,我想存1.5个G,当然1.5个G的话,这是512兆,大家知道一下啊,那我就只能存,我想要存1.5个G,那这个时候呢,我们要切片,也就是说我们要,哎,假如说105在102,对吧,然后呢,107在102 105 107在102,我想把这个1234放在103。对吧,我要买。1234放到103,那这样的话就可以了。
02:00
对吧,啊是这个意思,所以呢,接下来我们要做的是这样的一套集群啊,是这样的一套集群,对吧?啊,那我们看一下,首先副本的一个写入策略,首先啊,在这个里边比较复杂啊,这个分辨的集群比较复杂,首先它有一张原数据表。注意,它是存储原数据的原数据表,这张表不存实际的数据。啊,不存原来原始的数据啊,不存这个原数据啊,它只是关联这几张表,然后呢,把下面的表关联起来,假如说我有六台机器,六台机器对吧,是现在呢,我要做什么事,我要做三个切片。我要做三个切片,每一个切片都有自己的一个副本。啊,每一个界面,所以呢,需要六台机器。对吧,我需要六台机器啊好,那这个里边呢,怎么做呢?主要我们看一下这个读写的一个流程啊,那这个是写流程,写流程怎么做的呢?是这样子的,这边有一个参数叫internal relic,叫内部副本策略啊,False黄线处绿线对吧,我们看一下,假如说我们先看false,那如果没开启这个内部同步的方式。
03:11
对吧,那怎么做呢?假如说客户端写一个数据对吧,我操作都是操作这个主表,就相当于我们在读取数据的时候找name node hdfs对吧,然后name node呢,去根据数据信息。给你返回data not的节点,你去data not上去拉取数据,是这样的一个处理啊,那这边呢,有这样子,假如说我们不启用内部副本啊,那客户端的往。第一个切片写完之后,还有客户端往第二个切片去同步。主动去发,那如果我采用了内部副本,就绿线这个处呢,我给。切片的某一个副本去写,那另外一个副本呢,自己去同步数据。啊,他自己去同步这个数据就好了。啊,他自己去拉取这个数据对吧?这是写入的一个流程,就这样的一个内容对吧?好,那我们看一下读取,因为读取的时候啊,我们只需要在这两台机器,这两台机器以及这两台机器任意挑选一个节点,对吧?这里面我选135可以啊,145可以对吧?146也可以啊,它235245246都可以。
04:22
对吧,啊,任意组合就行了,你就可以拿到完整的数据了,对吧?关于读过程我们看一下啊来,首先我们发起一个读请求。发起一个读请求,对吧,那我们刚才说了,你要找135145145146 235245246都可以,对吧,它有多种组合,那到底要找谁呢?那肯定不能说他俩同时读,他俩同时读那就数据重复了,对吧?每一个副本我只要读一个就行了,所以在这个里边。在这个里边啊,它是怎么读的呢?首先呃,这里边它会记录一个error counts。记录一下我们读取数据失败的次数,优先读取什么呢?
05:04
失败次数小的。优先读取这个失败次数小的啊,是这样的一套东西对吧,好呃,那假如说。你失败了十次,你一次对吧,你三次两次三次三次好,那这里面一定有这样情况,如果说这两个,那肯定读它对吧,这两个呢,读第二个那一样呢。一样,或者说我第一次读,大家失败的次数肯定都是零。对吧,所有的都是零,那怎么办呢?它其实如果l count呢,随机。随便挑一个,因为随便嘛,对吧,啊,如果失败了我就换一个节点啊,失败换一个节点,那下一次我就优先读,他说count等于零的,然后再去读一的啊就这样的方式对吧,这是它这个读的过程,注意啊,这是主表。这个主表,其他的都是总表啊,其他都是总表啊,那假如说我们要做三个分店,两个副本,六个节点,注意它最少要六个节点,有的人说那不对呀,我能不能这样做呀?诶我这个不是切片吗?我只有三台机器对吧,我把他的副本,他的副本放102,他的副本呢放103,他的副本呢放幺零。
06:16
二对吧,那这样不行啊,它所有的副本或者切片都要单独的一台机器。啊,都要单独的一点机器,也就是说你要想做三个分片两个副本,必须六个节点啊,必须六个节点才可以啊,这个要注意一下,行,那这边是参考参考啊,等会儿呢,我们去配,因为我们没有六个节点,所以我们要改一下策略,那这里面怎么配呢?首先还是搞一个这个配置文件。对吧,然后配置文件,然后配置文件里面写的东西,诶,Clickhouse remote service远程地址集群,那这是集群名称,之前我们就看到建表的时候,它是不是要指定一个集群名称啊,大家还记不记得。在这里边我们给他看一下啊,在这个。呃,Window方式。
07:02
引擎对吧,表引擎这个我们通过这个表引擎能看到摸税点开啊这地方呢,有建表语句,就有指定一个集群信息。对吧,我们可以指定这个集群信息,好呃,那也就是说这里面呢,我们要指定具体信息,等会就指定它随便取名字对吧,然后切片啊好,第一个切片。这样上。然后呢,开启这个内部副本机制,对吧,就是说他自己去第一个切片去拉取,然后呢副本。放在101102对吧,然后这个地方103104啊,这个地方105106,诶三个切片对吧,三个切片这样的一个情况啊,这个配置好之后呢,去启动建表启动就好了,好这是我们所看到它的一个副本的读写的一个介绍啊,大家知道一下啊,就切片集群的一个介绍,但是我们搭不起来这个机群,因为我们没有六台机顶对吧,只有三台,所以接下来我们搭。
我来说两句