00:00
呃,之前呢,咱们给大家呢,封装了两个方法,一个呢是用来啊做分区键的,就是来设定分区的,那么这样的话,我的表格呢,可以把那个分区啊事先给它准备好,咱们称之为叫预分区啊,然后呢,我们最后呢,我们还做了一个操作呢,咱们叫做什么呢?分区号,这个分区号呢,是用来判断我的r key它在哪一个分区当中的,所以它跟那个分区键是有关系的,恰恰是因为你的分区键它有一些键值在里面,那只要能够保证我的分区号也在里面的话,那么我的数据呢就可以增加进去啊,所以在这种情况下,我们就设定了一个方法,那么封装了,那这个封装的方法呢,其实就是算出来我们的分区号,那怎么算出来的呢?它应该有条件,我希望某一个主教用户在某一年某一个月的所有数据都能放在一个分区当中,因为我统计起来方便,所以在这种情况下,那么我的分区号就应该跟这。
01:00
两个条件有关系,一个是电话号码,一个是我的时间,那么这个电话号码呢,我就希望最好呢,不要全用它,我希望呢,拿它其中的一部分,那些没有规律的数据的我拿出来,那我们说了没有规律的就是我们最后四位是没有规律的了,所以把这最后四位给他拿过来,拿过来以后再把我的时间给他拿到,但这个时间你不能保证它是什么格式,但是我们能保证的是呢,我们取前六位就可以了啊,否则你说年月日十分秒,那有没有十分秒我也不知道,但是没关系,我们只要得到前面的六位就可以了,那这样的话呢,我们来得到它的值,得到它的值之后,然后呢,把每一个值的哈希扣的给我取过来啊,我们为什么这么做呢?其实很简单,就是为了散略啊,就为了散略,所以在这种情况下把它的哈希值拿到之后,接下来呢,我们做了一个未运算,咱们叫闭货运算啊,那么我们其实也可以用什么移位呀,或者说怎么操作呀,也可以,那咱们这里为了简单做了一个叫CRC的一个校验的一种算法啊。
02:00
我们的抑或运算,那但是抑或运算我们讲过了,它不相等的情况下是什么,它不等的情况下是我们的什么?诶我们的一和零,那么结果是我们的一,那么如果相等的情况下是零,那所以这样的话有可能会得到负数,所以在这种情况下,我们不能有负数,我们还是给他一个正数,给他一个绝对值啊,然后接下来呢,给它取个模啊,咱们取模运算,那么取模运算的话,这个把那个分区的那个数量给我放过来就完事了啊,这么做就没有任何的问题啊,那我们说过了,这里除了取模以外,还还可以什么,还可以写一个叫。未运算吧,但记住未运算是有要求的,未运算是有要求的,什么要求?首先你应该是减一吧,第二个你这个值是不是应该是二的N次方对吧?是四八十六减一对不对,你我现在是六,它减一有意义吗?它减一是就会导致有些位置会取不到啊,所以这个你要考虑清楚啊,就是我们这里为什么用取模是有原因的,不是说我们说啊老师这个运未运算也可以,那么微运算的话,可能在某些当中还不能够用,它一定要保证是二的N次方才能那么去用啊,所以我们这里呢,取模咱们给它返回,返回以后它就是我们的那个分区号,有了分区号,有了我的分区键,那么我的数据呢,就可以往里面加了,所以啊,我在当前的场合下,我就去把它给它设定好,这个呢,我们写上啊来我们写上,呃,把这个拿过来点一下,点一下这个静态我不要了啊,静态咱不要了,不要了以后那我这里呢,把那个我们的电话号码,咱们叫扣一,然后还有一个叫。
03:36
Quate啊,咱们叫quate加过来,加过来以后我加一个横线,表示的是分区号的一个连接,那我写上一个叫一啊,咱们叫CALL1,再加上一个下划线啊,咱们再来,呃,写上一个叫做call time,那咱们的一个通话的一个时间,再加上一个我们的下划线,咱们加上一个扣二啊,我这里呢,为了方便我就全加了啊这个其实可加可不加,嗯,然后呢,我们再写个它再加上一个我们的duration,嗯,把这个加上好了,那我现在这么写完以后,我们分区号有了,我们的这些都有了,那么最终形成的效果呢,就是应该是以什么一个很长的一个字符串,应该是这么样的啊行,那这个肉key有了,那我们这边都没有任何的问题了,我就试一试,咱们测试一下,看看我们之前的那些东西啊,能不能保存到我们的数据库当中去,诶咱们试一试,那我试的时候呢,我这里呢,就把这个数据呢,给它生产一下,咱们看看效果啊,诶生产。
04:33
我生产之后,那我这边呢,就该去采集了,所以我在这边采集啊,采集之后,那我接下来我这边呢,就准备要去消费了,那么消费的时候我们来看一看我们的效果啊,所以打开,打开之后把这个呢,我们给它运行。啊,看一看啊,只要我们的数据不出任何的错误,他能够正常的消费,那就OK啊。观察一下这个地方呢,我们现在数据呢,会越来越多啊,咱们这边的数据会生产的越来越多,没关系啊,咱们看看嗯。
05:08
这边还有一个初始化的一个过程啊。嗯,这是disable,然后呢,我们的这边的delete,嗯,然后呢,会创建啊,好了,大家可想到是不是现在已经出来了,他也出来了,出来以后咱们一会再看数据啊,咱们先看什么呢?先看我们这边,呃,我们这边以后呢,我后退啊,后退以后我刷新,刷新之后咱们来看看啊,咱们这边叫colo,命名空间是CT,看这个地方。是不是我在线的是几个六个吧,这不是我们的要求嘛,咱们就要求分六个分区吗?然后呢,我点一下点点完之后往这看,是不是跟我们刚才是完全一样的01234,而且又是用竖线吧,这个竖线是个分割符的概念啊,所以这个呢是我们对的啊好了,表是对的,我要看我的数据了,所以呢,我们回回来我们写上叫做B啊,然后呢,我们的space,我们的cell,嗯。
06:03
然后呢,我要看看我的数据到底有没有什么问题啊,最起码呢,你不能放在一个分区里面呢啊,所以呢,我们这里呢,来我们写上叫做CT啊,咱们叫做call lock,然后来回车,回车以后是不是很多呀,205条数据这个不重要,重要的是前面这个五啊。刚刚全是五吗?哎,有四是吧,哦,他按照顺序来讲的话,是不是四后面应该有三了,这个太多了,来有三了吧,啊有三了,还有应该有二了吧二。六有二是吧,然后呢,看看哎哟看不着了啊,也就是说前面这个号是不是就是什么呢?我们算出来的,那你算出来的情况下,那不就可以了吗?所以说明我们当前的程序呢,应该是OK的啊行了,OK就赶快停吧,嗯,好了给他停啊,这个停了以后呢,我们这个呢,就给它停了啊,都给它停了,嗯,这个呢,都给它停掉。
07:00
说明啊,我们现在的程序呢,应该是没有任何问题的啊好。
我来说两句