基于Redis的云数据库的研究与实现

来源 :电子科技大学 | 被引量 : 0次 | 上传用户:liongliong493
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络的发展,各行各业的业务系统体量越来越庞大,业务内容也越来越复杂。传统数据库已经无法满足人们对于响应时延的要求,因此,Memcached等缓存系统被广泛的应用。实验室现有云平台也使用Memcached作为缓存数据库来提高云应用的打开速度和响应速度,但是在日常开发维护中发现存在高可用、效率、持久化等问题。为此,本文以Redis为基础,研究并实现了一套高可用的云数据库系统CRDB(CAC Redis DataBase)作为云平台的缓存数据库。主要工作如下:首先本文分析了现有实验室Memcached缓存数据库存在的问题并提出解决方案。当前实验室使用的Memcached是单点的,不支持高可用,另外只能处理键值对数据,对于其他复杂的数据类型需要客户端做大量的数据转换工作,影响开发效率。并且Memcached不支持持久化功能,对于一些关键数据很容易丢失。针对以上问题,本文以Redis数据库引擎为基础,基于proxy-based架构,提出了 CRDB云数据库系统,该系统主要由访问模块,代理模块,数据处理模块和管理模块四部分组成。然后本文从系统的四个模块出发,进行了详细的分析设计并给出了具体的实现。(1)访问模块作为系统的入口主要处理来自客户端的大量请求,使用了 LVS和Keepalived的组合架构进行负载均衡,使系统具备处理海量并发数据的能力,同时加入了用户验证以面对多租户访问的场景。(2)代理模块通过对Twemproxy二次开发,添加了多进程功能,以应对云平台的高性能要求。使用代理层对底层节点实现分片,在将海量客户端请求均匀分配转发的同时,也确保了底层能对上层进行透明的扩容操作。(3)数据处理模块实现了数据持久化操作,并对Redis的内存替换策略用LRU-K算法进行改进,提高系统对于云平台热点数据的处理性能,提升应用响应速度。(4)管理模块使用Prometheus开源组件对系统进行监控,开发了各种Exporter业务插件,帮助管理人员对于系统的掌握更全面。另外使用Sentinel架构完成了故障检测和故障处理功能,解决了单点问题,并基于log4cxx二次开发了一套日志系统,为运维和开发人员解决问题提供良好的参考。最后本文在云平台中部署了一台CRDB云数据库,并对CRDB系统进行了全面的功能和性能测试。将结果和原来的Memcached缓存进行对比,该系统符合最初的设计要求,满足云平台的需求,且具备较好的高可用和高并发性。
其他文献
高速铁路网络是铁路旅客运输的重要载体,优化高速铁路网络的性能具有重要意义,本文以全局站点交通可达性最优为目标研究了高速铁路网络的优化问题。在分析2030年中国高速铁路网络拓扑特性的基础上,运用LeaderRank算法识别了网络中的关键站点;最后,以网络全局站点交通可达性最优为目标,建立2030年中国高速铁路网络优化模型,结合相关算法对模型进行求解。结果表明,长沙、贵阳、成都、武汉及西安是2030年
国有土地储备管理信息化融合是政府各级土地储备机构在国有土地(收)回购、储备土地前期整理开发、储备土地供应等业务管理环节中,运用"大数据"、"互联网+"等信息技术,使新时代国有土地储备管理与互联网新技术高质量融合发展,形成与时俱进的国有土地储备管理信息系统,为调控房地产市场提供强有力的信息技术支撑,可实现国有土地储备信息的高效共享利用,保障房地产等土地市场健康、平稳、有序地发展。
学位
目的分析徐州市云龙区高氟地区学龄儿童氟斑牙发生情况及其影响因素,为氟斑牙的预防和治疗提供理论依据。方法选取徐州市云龙区2017年5月至2020年5月氟斑牙患病率较高的4个村庄作为调查地点,从中选择904例8~12岁学龄儿童的一般资料进行回顾性分析,根据Dean法对学龄儿童的氟斑牙情况进行诊断,根据结果分为氟斑牙组(548例)与非氟斑牙组(356例)。比较不同时间高氟地区学龄儿童氟斑牙发生情况与氟斑