范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

MySQLBufferPoolLRU机制

  LRU机制的隐患
  LRU机制在实际运行过程中,是会存在巨大的隐患的:
  MySQL的预读机制带来的隐患:所谓的预读机制,就是当你从磁盘加载一个数据页的时候,可能会连带着把这个数据页相邻的其它数据页也加载到缓存里去。
  例如,现在有两个空闲的缓存页,然后在加载一个数据页的时候,连带着把他的一个相邻的数据页也加载到缓存里了,正好每个数据页放入一个空闲的缓存页。但是实际上只有一个缓存页被访问了,另外一个通过预读机制被加载进来的缓存页,其实并没有人访问,但是此时这两个缓存页都是放在LRU链表的前面。这个时候没有空闲的缓存页,如果要加载新的数据,就要把LRU链表队尾的缓存页刷入磁盘,而不是无人访问的那个缓存页。
  会触发预读机制的场景: innodb_read_ahead_threshold参数,默认值是56,意思是如果顺序地访问了一个区里的多个数据页,访问的数据页的数量超过了这个阈值,此时就会触发预读机制,把下一个相邻区中的所有数据页都加载到缓存里 innodb_random_read_ahead参数,默认是OFF,如果Buffer Pool里缓存了一个区里的13个连续的数据页,而且这些数据页都是比较频繁被访问的,此时就会触发预读机制,把这个区里的其它数据页也都加载到缓存里 全表扫描 MySQL是如何基于冷热数据分离的方案,来优化LRU算法的
  为了解决简单的LRU链表的问题,MySQL在设计LRU链表的时候,实际上采取的是冷热数据分离的思想;之前的问题都是因为所有缓存页都混在了一个LRU链表中导致的。
  真正的LRU链表,会被拆分成热数据和冷数据两个部分,冷热数据的比例是由innodb_old_blocks_pct参数控制的,默认是37,也就是说冷数据占比为37%。这个时候,LRU链表实际上看起来是下面这个样子的:
  数据页第一次被加载到缓存的时候,其实是被放在冷数据链表的头部,后面1秒之后,如果你再次访问这个缓存页,那这个缓存页会被移动到热数据链表的头部,这个时间是有innodb_old_blocks_time这个参数控制的,默认1000ms。
  也就是说,必须是一个数据页被加载到缓存页之后,在1s之后,你访问这个缓存页,他才会被挪动到热数据区域的链表头部去。
  因为假设你加载了一个数据页到缓存去,然后过了1s之后你还访问了这个缓存页,说明你后续很可能会经常访问它,这个时间限制就是1s,因此只有1s后你访问了这个缓存页,他才会给你把缓存页放到热数据区域链表的头部去。 基于冷热数据分离方案优化后的LRU链表,是如何解决之前的问题的1 对于预读以及全表扫描加载进来的一大堆缓存页
  预读机制以及全表扫描加载进来的一大堆缓存页,他们会放在哪里?肯定是放在LRU链表的冷数据区域的前面,假设这个时候热数据区域已经有很多被频繁访问的缓存页了,你会发现热数据区域还是存放被频繁访问的缓存页的,只要热数据区域有缓存页被访问,他还是会被移动到热数据区域的链表头部去。
  所以此时预读机制和全表扫描加载进来的一大堆缓存页,此时都在冷数据区域里,跟热数据区域里的频繁访问的缓存页,没有关系。 2 预读机制和全表扫描加载进来的缓存页,能进热数据区域吗?
  如果仅仅是全表扫描的查询,此时你肯定是在1s内就把一大堆缓存页加载进来,然后访问了这些缓存页一下,通常这些操作1s内就结束了,所以基于目前的一个机制,可以确定的是,那些缓存页是不会从冷数据区域转移到热数据区域的。
  除非在冷数据区域的缓存页,在1s之后还被访问了,那么此时他们就会判定为未来可能会被频繁访问的缓存页,然后移动到热数据区域的链表头部去。 3 如果此时缓存页不够了,需要淘汰一些缓存,会怎么样?
  假设此时缓存页不够用了,需要淘汰一些缓存页,此时会怎样?
  直接就是可以找到LRU链表中的冷数据区域的尾部的缓存页,他们肯定是之前被加载进来的,而且加载进来1s过后都没人访问过,说明这个缓存页压根儿就没人愿意去访问他,他就是冷数据。所以此时就直接淘汰冷数据区域的尾部的缓存页,刷入磁盘就可以了。 LRU链表热数据区域的优化
  之前提到如果一个缓存页被访问了,就会把他移动到LRU链表的热数据区域首位,这么频繁的移动会导致性能不是很好。所以MySQL对LRU链表热数据区域的访问规则做了优化,只有在热数据区域的后3/4部分的缓存页被访问了,才会被移动到链表头部;链表前面1/4的缓冲页被访问,是不会被移动的。 对于LRU链表中尾部的缓存页,是如何淘汰他们刷入磁盘的1 定时把LRU尾部的缓存页刷入磁盘:
  首先,并不是在缓存页满的时候,才会挑选LRU冷数据区域尾部的几个缓存页刷入磁盘,而是有一个后台线程,每隔一段时间就会把LRU链表的冷数据区域尾部的一些缓存页刷入磁盘,然后清空这几个缓存页,并把他们加入到free链表中。
  所以大家会发现,只要有这个后台线程定时运行,可能你的缓存页都还没有用完呢,就给你把一批冷数据的缓存页刷入磁盘,清空出来一批缓存页,那么你就多了一批可以使用的空闲缓存页了。 2 把flush链表中的一些缓存页定时刷入磁盘
  如果仅仅只是把LRU链表中的冷数据区域的缓存页刷入磁盘,明显是不够的;
  LRU链表中的热数据区域里的很多缓存页可能会被频繁的修改,这些数据不可能永远放在内存中,后台线程会在MySQL不繁忙的时候,把flush链表中的缓存页都刷入磁盘中,这样,被修改过的数据就被刷入到磁盘文件中了。
  只要flush链表中的一些缓存页被刷入磁盘,那这些缓存页也会从flush链表和lru链表中移除,然后加入到free链表中。
  所以,一边不停的加载数据到缓存页中,不停的查询和修改缓存数据,然后free链表中的缓存页不停的在减少,flush链表中的缓存页不停的在增加,lru链表中的缓存页不停的在增加和移动。
  另外一边,后台线程不停的把LRU链表的冷数据区域的缓存页及flush链表的缓存页刷入到磁盘,来清空缓存页,然后flush链表和LRU链表中的缓存页不停的在减少,free链表中的缓存页在不停的增加。
  如果实在没有空闲的缓存页,那就会把LRU链表冷数据区域尾部的缓存页刷入磁盘,然后清空。

尼康Z9实在太火了!下一次上货已经排到明年10月份尼康全画幅微单相机机皇Z9受到全球摄影爱好者和专业摄影用户的欢迎已经是公开的秘密,不过在现在各家芯片都短缺的情况下,类似尼康Z9这类热卖产品要增加产能和准时交付是一个很大的难题。即国家电网公司7项电力区块链系列企业标准发布12月27日,由国网互联网部国网科技部组织指导,国网电商公司(国网金融科技集团)作为主要起草单位编制的电力区块链第1部分技术导则等7项电力区块链领域国家电网公司企业标准正式发布。这柬埔寨电子商务平台高管期待通过RCEP获得长远发展新华社金边12月30日电(记者吴长伟)柬埔寨主要电子商务平台微笑商城高管日前表示,在新冠疫情持续世界经济复苏放缓之际,即将生效的区域全面经济伙伴关系协定(RCEP)将促进自由贸易,新能源赛道之充电桩2020年五月两新一重首次被各大媒体报道,两新一重包括新型基础设施建设,新型城镇化建设,交通水利等重大工程建设。具体点讲就是新基建(新一代信息网络5G充电桩新能源汽车)新城镇化(新云计算2022年展望关注元宇宙发展机会智通财经APP获悉,华泰证券发布研报称,预计2022年国内海外IaaS板块总营收分别同比增长4933(2021E5542)预计Meta(FB。US)苹果(AAPL。US)谷歌(GOiPhoneXR是神机还是智商检测机刚出的时候之所以被称为智商检测及是因为有苹果x做对比,而现在看来,当初买了xr的人才是真的有大智慧的人。xr实质上也不能算是低配,但也称不上高配,原因很简单,价格说明了一切。目前而从4199跌至2099元,12GB256GB5000mAh,优质旗舰加速退场声明原创不易,禁止搬运,违者必究!这个月很多人都将关注点放在了新机上,2021年最后一个月,各大手机厂商齐绽放,都各自发布了新旗舰手机。小米12也在12月28日正式发布,可能也是今相互宝等大型网络互助平台相继关停专家未来仍有机会重获发展中国网财经12月30日讯(记者郭伟莹)近日,相互宝宣布将于2022年1月28日24时停止运行。而这也是继美团互助水滴互助轻松互助等10家互助平台陆续关停之后,最后一家宣布关停的大型平高国际与华为数字能源签署全面合作协议张兴旺中国证券报中证网中证网讯(记者张兴旺)华为发布消息称,近日,平高集团国际工程有限公司(简称平高国际)与华为数字能源技术有限公司(简称华为数字能源)在深圳签署全面合作协议。根据今日投融资亮点两起上亿融资聚焦医疗赛道短视频领域再现密集融资每经记者肖芮冬每经编辑叶峰今日,两起上亿元的大额融资都聚焦在了医疗这一赛道与此同时,短视频领域也有企业在今年内密集融资而频繁陷入破产闹剧的SpaceX,再次宣布拿下新一轮3。374拒绝选到踩雷电视机,提前做好功课很重要不难发现,我们对生活质量的要求越来越高了,居家常用的家电也在不断更新换置。一些小家电在购买时还算比较省心,考虑的地方比较少,很容易就能挑到满意的。但是对于一些使用频率较高的大家电来
发布至今下跌2511元,512GB鸿蒙OS,华为12GB运存旗舰已跌至新低华为公司虽然在下半年发布了华为P50系列旗舰,但是却反响平平,销量也并不好,因为华为P50系列旗舰确实存在着很多的弱点,不支持5G网络屏幕素质不够顶尖处理器有骁龙888版本售价过高下周见!小米神秘新机现身天生好看近日,有网友在天猫商城看到了小米官方旗舰店的新机海报,意外的爆料出小米新产品包装盒以及发布会相关信息。图中显示,这次小米新机的命名为小米CIVI,结合近期小米的各种爆料来看,这很可realme真我V11s曝光大内存大电池还很好看近日,数码博主搞机阿森在微博爆料称,realme新机真我V11s将携128GB大内存5000毫安大电池和较高的颜值登场。此前该博主已经暗示这款机器的出现,它是首款采用s后缀命名的型Sugar糖果新品形似美图手机,低至499元的售价仅美图手机零头曾经以法国奢侈手机品牌身份登陆国内手机市场,以机身镶嵌宝石闻名,也曾邀请不少明星网红站台,后续因为国内手机市场竞争加剧等诸多原因淡出人们视线,没错,说的就是Sugar糖果手机。国产16G512G不例外,努比亚再降700元,骁龙888也退场了如果说今年的vivoX70是凭借硬件提升影像实力的,那么努比亚nubiaZ30Pro就是靠着硬件软件的打磨,其实努比亚这个手机品牌算风格比较独特的一个手机品牌,以无边框Fit交互全字节跳动公开虚拟角色捏脸专利,网易腾讯也有相关布局智慧芽全球专利数据库显示,9月17日,北京字节跳动网络技术有限公司公开了一件发明专利一种虚拟角色捏脸的方法装置电子设备及存储介质专利,公开号为CN113409437A,于2021年阿里菜鸟网络强势删除自媒体文章,将快递价格战归咎于极兔快递这一届阿里菜鸟的公关也是醉了,指名道姓说极兔造成快递价格战作为一个快递平台,菜鸟并无理由针对极兔快递,自有更深入的原因2021年9月,本自媒体的文章多次被阿里巴巴菜鸟网络删除,这也贵吗苹果?由于iPhone手机通常比较贵,所以网友们在使用的时候也非常的爱惜,生怕出问题损坏手机。所以很多iPhone手机用户在充电的时候坚持使用原装充电器,拒绝使用第三方充电器。苹果13其两款7000元左右的微单套机佳能M6二代和索尼A6400谁更值得买?大家都知道,现在你看数码相机的销售网页以及测评,基本上都只说好处,不提缺陷,而我这里不同,优点和缺陷全都说。废话不多说,直接进入主题两款7000元左右的微单套机佳能M6二代和索尼A6999元起的OLED屏笔记本!华硕灵耀Pro系列发售近日,华硕举行新品发布会,正式推出了多款OLED屏幕的新品笔记本。从电商平台了解到,其中的两款产品灵耀Pro16Pro14笔记本于9月22日零点正式开售,定价6999元起。据了解,豪配300Hz高素质电竞屏ROG魔霸5R带给你极佳电竞体验在硬件市场里面,AMDYES!是一句非常有魔力的话语,AMD的硬件都是业界知名的优质产品,而今年年中,著名游戏硬件厂商ROG携手AMD公布了一套令玩家眼前一亮的产品ROG魔霸5R,