基于GaussDB(for MySQL)实现一个高性能、高扩展性的bufferpool(缓冲池)

命题企业:华为技术有限公司
命题内容及答题要求
企业介绍企业介绍:华为创立于1987年,是全球领先的ICT(信息与通信)基础设施和智能终端提供商。目前华为约有19.7万员工,业务遍及170多个国家和地区,服务全球30多亿人口。华为致力于把数字世界带入每个人、每个家庭、每个组织,构建万物互联的智能世界:让无处不在的联接,成为人人平等的权利,成为智能世界的前提和基础;为世界提供最强算力,让云无处不在,让智能无所不及;所有的行业和组织,因强大的数字平台而变得敏捷、高效、生机勃勃;通过AI重新定义体验,让消费者在家居、出行、办公、影音娱乐、运动健康等全场景获得极致的个性化智慧体验。

经营范围: 一般经营项目是:程控交换机、传输设备、数据通信设备、宽带多媒体设备、电源、无线通信设备、微电子产品、软件、系统集成工程、计算机及配套设备、终端设备及相关通信信息产品、数据中心机房基础设施及配套产品(含供配电、空调制冷设备、智能管理监控等)的开发、生产、销售、技术服务、工程安装、维修、咨询、代理、租赁;信息系统设计、集成、运行维护;集成电路设计、研发;统一通信及协作类产品,服务器及配套软硬件产品,存储设备及相关软件的研发、生产、销售;无线数据产品(不含限制项目)的研发、生产、销售;通信站点机房基础设施及通信配套设备(含通信站点、通信机房、通信电源、机柜、天线、通信线缆、配电、智能管理监控、锂电及储能系统等)的研发、生产、销售;能源科学技术研究及能源相关产品的研发、生产、销售;大数据产品、物联网及通信相关领域产品的研发、生产、销售;汽车零部件及智能系统的研发、生产、销售及服务;建筑工程;设计、制作、发布、代理各类广告;通信设备租赁(不含限制项目);培训服务;技术认证服务;信息咨询(不含限制项目);企业管理咨询(不含限制项目);进出口业务;国内商业、物资供销业业务(不含专营、专控、专卖商品);对外经济技术合作业务;房屋租赁业务(持许可经营证);以及其他法律法规不禁止的经营活动(依法须经批准的项目,经相关部门批准后方可开展经营活动)。许可经营项目是:增值电信业务经营。
命题内容及答题要求【命题内容】一般数据库系统都会有一个缓冲池,GaussDB数据库也不例外。GaussDB(for MySQL)数据库的bufferpool(缓冲池)主要用于将一些频繁访问的热点数据缓存在bufferpool中,避免对慢速磁盘设备的频繁访问,从而加快数据的访问速度,提升数据库的性能。
本赛题要求结合GaussDB(for MySQL)产品特性设计思路,设计合理的缓冲池方案,实现一个高性能、高扩展性的bufferpool(缓冲池)
【答题要求】
1. 实现一个基本功能的bufferpool,能够缓存固定大小(page size 16KB)一些热点数据
2. 使用LRU、LFU和LRU-K等淘汰算法及其变种,提高bufferpool的命中率,从而提升热点数据的访问速度。
3. 在云化场景下,为了提高资源利用率,会多种数据库共用同一存储资源池,每种数据库有不同的page size(页面大小), bufferpool需要有高扩展性,能够支持同时缓存各种page size(page size 固定为8KB、16KB、32KB和2MB)的数据。

注:同时缓存是指不同大小的page会同时存在于同一个bufferpool中


报名华为命题的参赛团队,在报名成功后可扫描下方二维码,领取2000元代金券,用于团队作品的开发和部署(限队长领取)。


2.jpg