00:00
好,再继续往下呢,还有一个刷写时机啊,它为了避免数据长时间处在内存当中啊,这个跟上面呢正好相反啊,上面那个呢,是你用的太多了,资源不够,对不对,你的内存不够,然后使用写入的数据量太多了,它会提前刷新,那这个呢,就是你的内存很充足,但是写入的数据量很少啊很少,那那个数据呢,会一直保存在内存当中啊,那这也不合适,我们呢又设计了一个刷写条件,这个是根据时间来的。啊,根据时间来的,它是由HVG里面的属性这么一个东西叫周期性刷写来进行控制进行的,它的重要程度呢比较低啊,因为正常使用h base呢,它应该很快就会刷写,不用等这么长的时间,所以呢,它是五分钟去执行自己一次,它的刷写时间间隔呢,由这个参数啊来进行调控,默认是一个小时,什么意思,五分钟监控一次,监控什么监控,看你这个数据是否已经保存在内存当中,超过一小时了,你都超过一小时了还不进行刷写。
01:04
说明你的数据量实在太少了对不对,那我呢,就强制执行刷写就可以了,这个属性也很好找对不对,H RA server里面的这个属性我们来去定义的,去看一下就可以了啊CTRLC。到这边呢,回到瑞骚这边啊,CTRLFCTRLV啊就可以找到它呢,是属于我们。对应的这个h region server里面的内部类啊,可以往上翻,你看这个类名叫h region server,对吧?往下来这是它的一个内部类啊,是一个内部类啊。点过来。对吧,是它的一个私有的一个静态内部类,这个静态内部类里面就有对应的一个刷写,这边有对吧,五分钟刷写一次,叫range of delay延迟时间嘛,啊五分钟刷写一次,那它刷写的时机呢,就是一小时监控一次,它的这个运行方法呢,就这个对吧?啊运行运行之后呢,就判断是否超过时间啊,如果超过时间呢,就进行刷写就可以了,它会有一个时间的判断啊。
02:03
之前呢,有记录一个时间,然后时间相减,看有没有超过对应的这个时间啊,然后呢去刷写就可以了,默认一小时啊,这个条件呢,比较随意啊,比较随意,重要程度不是很高,正常使用h base的话呢,不会触发这么一个条件,好最后呢,还有一个条件叫当预写日志文件的数量超过了最大的一个设置值啊,那它呢也会进行刷写,这个现在已经废弃了。废弃的原因是不太可能出现这个条件,出现这个条件就更离谱了,说明你的电脑呢,是拖拉机啊,实在是没有办法执行了,你想一下,什么时候预写文件呢?数量会堆积,然后这个东西它还不删,它会一直堆积在那里,什么情况呢?就是你执行了put命令的时候。他这个破命令啊,写到你的预写日志里面,很快我们看过那个写流程了,先写预写日志嘛,对吧,写预写日志呢,很快一直写一直写一直写,但是下游真的往里面进行操作了,就是运行不动,效率非常非常非常低啊,现在的电脑已经达不到这么奇葩的一个条件了,所以这个属性就已经废弃了,你只要电脑稍微正常一点啊,都不会有这么一个条件啊,它不太可能说预写日志达到这么大一个数量,然后呢,还不操作成功,预写日志在你的里面的命令就一个预写日志文件里面啊,所有的命令全部执行成功之后,全部落盘之后,预写日志文件是会删除掉的。
03:32
啊,因为一旦执行完它就没有意义了,对不对啊,如果整个文件里面一半执行完,一半没执行完,它还是有意义的,会保留,但全部执行完就没有意义了啊,会把它给删掉,你只要运行效率足够,这个运行日志的数量会不断的被删除,不断的被删除,所以它就不需要去进行刷写了,所以这个条件呢,已经废弃了啊,已经废弃了,好,这四条呢,就总计组成了我们的。刷写的一个条件叫memory store的刷写条件,这四个条件呢,从不同的方面来进行考虑的,要不怎么说大神写框架呢啊,大而全啊,考虑问题是真的全面啊。第一个条件是你的资源非常充足,在这种情况下,我们使用它效率最高的刷写方式就是块大小往HDIY上面刷写文件嘛,那本质不还是往HDIY上面写了,对吧?那写的时候按照块大小效率最高,第一个条件效率最高,第二个条件什么?
04:27
内存可能不充足,避免内存溢出,设置低水位线和高水位线来控制刷新啊,这是资源。啊,可能不那么充足了啊,正常使用其实都应该是第二种情况啊,你不可能说我给我的h base一个T的内存不可能的,对不对,我们都是多少G的内存,那它资源总会有用完的时候啊,它应该是同时会使用这个条件呢来进行刷写,第三个是你的资源太充足了啊,太充足了,你里面的文件呢,数据量太小了啊,写入的数据量太少了,也达不到128兆,对不对,内存也不会被用完,怎么办呢?我强制让你刷写,因为一直放在内存里面不合适,你放一天这合适吗?这不合适对不对?所以呢,我们一个小时如果超过一小时的话,就强制让它刷写就行,就是这个条件重要程度啊比较低啊,一般正常使用不会出现这种情况啊。第四个呢,是你的资源实在是。
05:27
计算这个不是内存资源了,这个是什么?这个是你的运行效率,是你的CPU太垃圾了啊,实在是执行不了这个操作,导致预写日志的文件堆积,现在已经不太会有这种情况了,所以他已经被废弃了啊,早期呢,这大神在设计的时候还是考虑到这种情况的啊,还是考虑到非常全面的好,那这个呢,就是我们的整个的一个漫道的一个刷写条件。
我来说两句