目前,在第七届中国国际“互联网”大学生创新创业大赛火热报名中,为帮助参赛选手更好地理解大赛试题的设计思路和命题方向,华为云产业命题赛道举办了线上直播朗读会。华为云数据库高级架构师苏斌在直播间详细讲解了GaussDB命题赛道攻略,通过分析数据库的关键技术和竞赛试题的考点,帮助参与者轻松获得高分。
#什么是数据库?
说到数据库,可能有很多小伙伴不太了解。简单来说,数据库就是访问和管理数据的软件(如“大仓库”、“电子文件柜”等)。当今世界是一个信息爆炸的时代,充斥着大量的数据,而我们日常生活的方方面面都与数据有着千丝万缕的联系。
为了满足各种类型数据的特点以及爆炸式的数据增长和存储管理压力,社会催生了各种类型数据库的蓬勃发展,分布式、云原生等许多关键的新型数据库技术也应运而生。与传统数据库相比,这种数据库具有更强的性能、更强的可靠性、更强的可扩展性和更大的容量。有了这种数据库,数据读/存速度更快,时延更低,更容易处理故障场景,不再害怕大流量的洪峰.
说起云原生分布式数据库的典型代表,华为云GaussDB(针对MySQL)肯定榜上有名。作为华为云高斯数据库的主人,华丹、高斯数据库(针对
MySQL)
100%兼容MySQL语法,是华为最新一代的高性能企业级分布式关系数据库。基于华为最新一代DFV分布式存储,采用计算与存储分离的架构,支持高达128TB的海量存储,可实现百万级以上的QPS吞吐量,支持跨AZ部署,数据丢失0。它不仅具有商业数据库的性能和可靠性,还具有开源数据库的灵活性。
为了让开发者深入了解数据库技术,利用相关技术解决企业实际业务问题,本次“互联网”大赛的产业命题赛道华为云GaussDB命题推出了相关话题:基于GaussDB(针对
MySQL)来实现高性能和高扩展性的缓冲池。
#标题解读:先掌握bufferpool的原理和技术,在战斗中更加冷静。
数据库通常有一个缓冲区。
Pool(缓冲池)用于将一些经常访问的热数据从磁盘读取到缓存中,避免我们在数据库中读写数据时频繁访问速度较慢的磁盘设备,从而加快数据访问速度,提高数据库的性能。
这个赛道问题是希望玩家能够借鉴和参考GaussDB(针对MySQL)的设计理念和思路,实现一个高性能、高可扩展性的Buffer。
游泳池.比赛分为三个阶段,1)具有基本功能的缓冲池,
为了能够缓存一些固定大小(16K)的热数据,需要保证从缓存中读写数据的正确性。2)在保证正确性的前提下,使用LRU、LFU、LRU-
k消除算法及其变体,改进缓冲池
命中率,从而提高热数据访问速度。3)在云场景下,为了提高资源利用率,多个数据库会共享同一个存储资源池,每个数据库的页面大小都不一样。
缓冲池需要高度可扩展,并且可以支持各种页面大小的数据同时缓存(页面大小固定为8KB、16KB、32KB和2MB)。
下面是下次科普大赛的相关概念:
* Page:Page是数据库中磁盘和内存交换的基本单位,也是数据库中磁盘空间管理的基本单位。例如,MySQL中的默认页面大小是16K,PostgreSQL页面是8K。
*数据管理器:数据管理器,用于管理数据读写。
*元管理器:元数据管理器,用于管理内存中页面的信息。
#答案指南
8月31日注册(官网和华为云平台均须注册)后,提交作品入口将正式对外开放。请参考竞赛团队提供的DEMO,包括评估程序和简单Buffer。
池实现,请完成
池,并在平台上上传参赛作品,以获得评估分数和结果。竞赛组为C语言提供log4cxx日志组件。详情请参考竞赛组DEMO、Java/Python等语言。请使用通用日志组件。运行作品的反馈界面,也提供日志下载,请避免打印太多日志。
为充分保证比赛的公平性,参赛选手不得使用第三方存储引擎库(如RocksDB、LevelDB、LMDB等。)并在其上封装接口以供竞争;不要依赖第三方动态库,以免导致程序在评测环境下无法运行;入口程序的初始化应在3分钟内完成,关闭应在10分钟内完成,测试应在30分钟内完成。
#什么样的作品容易得高分?
如果你想在“一”的比赛中完成高质量的作品
骑绝尘”,那么你可能还需要了解比赛的评分逻辑,每个作品的测评分为两个阶段,包括正确性评测和性能评测。正确性评测阶段,评测程序会进行纯读和读写混合测试。测试系统会随机对所有数据页面进行访问,访问包括读和写。
a. 对读取的页面,会对该页面进行正确性验证,页面验证不通过测试将结束,且测试不得分。
b.
对写入的页面,该页面可能在后续被再次访问,并进行正确性验证;同时当评测程序完成运行测试后,将发送信号关闭参赛程序,参赛程序需持久化尚未持久化的页面数据,评测程序将进行页面正确性验证。如果验证不通过,测试将结束,且测试不得分。
只有通过正确性评测阶段,才会进入性能评测阶段。性能评测的评测模型会有多种,评测参数参考如下:
在正确性验证通过的情况下,对每个不同评测模型的测试阶段整体计时,如果该阶段的正确检测全部通过,则成绩有效,根据总用时从低到高进行排名(用时越短排名越靠前)。评测程序将根据评测模型对参赛程序进行测试,计时从发送第一个请求开始,最后一个请求完成结束,最终计时为各项测试模型的测试阶段耗时之和。
最后再次提醒大家,本次“互联网+”大赛GaussDB赛道的时间安排:报名和时间截止到8月31日,初/复赛截止9月30日,预计10月中下旬举行全国总决赛。
点击链接进入大赛页面报名:华为云大赛平台
想要了解更多赛题详解,欢迎观看GaussDB命题解读直播回顾:“互联网+”大赛华为云大咖带你玩转华为云命题_云视界Live_直播_云社区_华为云
关注@华为云,了解更多资讯