本发明专利技术公开了一种基于节点访问热度的数据存储方法及装置。方法包括:接收客户端发送的数据存储请求;针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;基于节点访问热度将待存储数据存储至对应的数据库节点。本发明专利技术提供的方案,将采集到操作系统负载信息及数据库节点负载信息作为计算数据库节点的节点访问热度的关键因子,能够准确地评估数据库节点的节点访问热度,从而为数据存储提供了存储依据,实现了分布式数据库集群中数据库节点负载均衡的效果,提升了资源利用率。
【技术实现步骤摘要】
基于节点访问热度的数据存储方法及装置
本专利技术涉及数据处理
,具体涉及一种基于节点访问热度的数据存储方法及装置。
技术介绍
随着运营商IT技术的不断演进和用户规模的日趋扩大,传统的集中式数据库存储已难以适应用户对系统响应速度的需求。为适应业务发展,分布式数据存储方案的应用越来越广泛。为充分利用分布式数据库集群所有数据库节点的处理能力,避免因少量数据库节点计算资源过度消耗导致的集群负载不均,现有技术提出了一些在数据存储时实现负载均衡方案,然而,现有技术方案没有很好的解决如何根据分布式数据库集群节点实时运行状态实现负载均衡的问题。原因如下:数据库节点的实时处理能力不仅受操作系统级性能指标的影响,还直接受制于数据库节点的性能状态,并且两级指标并不一定具备直接的相关性,现有技术方案中评估节点处理能力时仅选用其中一项指标,难以准确反映节点实时负载状态;或判断节点负载时选取的判断因子具有不确定性,导致评估准确度低。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于节点访问热度的数据存储方法及装置。根据本专利技术的一个方面,提供了一种基于节点访问热度的数据存储方法,包括:接收客户端发送的数据存储请求;针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;基于节点访问热度将待存储数据存储至对应的数据库节点。根据本专利技术的另一方面,提供了一种基于节点访问热度的数据存储装置,包括:接收模块,适于接收客户端发送的数据存储请求;采集模块,适于针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;计算模块,适于针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;存储模块,适于基于节点访问热度将待存储数据存储至对应的数据库节点。根据本专利技术的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行上述基于节点访问热度的数据存储方法对应的操作。根据本专利技术的再一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行如上述基于节点访问热度的数据存储方法对应的操作。根据本专利技术提供的方案,接收客户端发送的数据存储请求;针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;基于节点访问热度将待存储数据存储至对应的数据库节点。本专利技术提供的方案,将采集到的数据库节点所在的操作系统负载信息及数据库节点负载信息作为计算数据库节点的节点访问热度的关键因子,能够准确地评估数据库节点的节点访问热度,从而为数据存储提供了存储依据,实现了分布式数据库集群中数据库节点负载均衡的效果,提升了资源利用率。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的基于节点访问热度的数据存储方法的流程示意图;图2A示出了根据本专利技术另一个实施例的基于节点访问热度的数据存储方法的流程示意图;图2B为预先构建的位置圆环的示意图;图3示出了根据本专利技术一个实施例的基于节点访问热度的数据存储装置的结构示意图;图4示出了根据本专利技术一个实施例的计算设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本专利技术一个实施例的基于节点访问热度的数据存储方法的流程示意图。如图1所示,该方法包括以下步骤:步骤S101,接收客户端发送的数据存储请求。具体地,客户端存在数据存储需求时发送数据存储请求,其中,数据存储请求中携带有待存储数据,接收客户端发送的数据存储请求。步骤S102,针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息。分布式数据库集群中存在多个数据库节点,针对分布式数据库集群中的任一数据库节点,需要监控数据库节点的当前运行状态,例如,以预设频率采集数据库节点所在的操作系统负载信息及数据库节点负载信息,其中,数据库节点所在的操作系统负载信息包含:CPU使用率(cpu_usage)、内存使用率(mem_usage)、磁盘使用率(disk_usage)等;数据库节点负载信息包含:连接数使用率(DBlink_usage,当前连接数/节点配置的最大连接数)等,这里仅是举例说明,不具有任何限定作用。本步骤通过实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息,能够保证在存在数据存储需求时,能够及时的将待存储数据存储至数据库节点,避免了在接收到数据存储请求后,再采集数据库节点所在的操作系统负载信息及数据库节点负载信息而导致数据不能及时存储的问题。步骤S103,针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度。针对任一数据库节点,在采集到数据库节点所在的操作系统负载信息及数据库节点负载信息之后,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度,例如,可以按照如下公式1计算节点访问热度:其中,c1,c2,c3,c4为权重,可根据分布式数据库集群实际情况设定,例如,可以设定c1=0.5,c2=1.0,c3=0.5,c4=1.0,这里仅是举例说明,不具有任何限定作用。在计算得到各数据库节点的节点访问热度后,将计算结果存储在表1所示的节点访问热度表中。其中,节点访问热度将作为后续存储数据的依据。表1:node_idaccess_freq数据库节点ID节点访问热度步骤S104,基于本文档来自技高网...
【技术保护点】
1.一种基于节点访问热度的数据存储方法,包括:/n接收客户端发送的数据存储请求;/n针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;/n针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;/n基于节点访问热度将待存储数据存储至对应的数据库节点。/n
【技术特征摘要】
1.一种基于节点访问热度的数据存储方法,包括:
接收客户端发送的数据存储请求;
针对分布式数据库集群中的任一数据库节点,实时采集数据库节点所在的操作系统负载信息及数据库节点负载信息;
针对任一数据库节点,根据数据库节点所在的操作系统负载信息及数据库节点负载信息计算数据库节点的节点访问热度;
基于节点访问热度将待存储数据存储至对应的数据库节点。
2.根据权利要求1所述的方法,其中,所述基于节点访问热度将待存储数据存储至对应的数据库节点进一步包括:
根据数据库节点信息计算数据库节点位置并将所述数据库节点位置映射到预先构建的位置圆环上;
根据所述待存储数据的数据主键计算待存储数据在所述位置圆环的初始位置;
根据所述初始位置,以预设查找方向在所述位置圆环中查找与所述初始位置相邻的数据库节点位置,并将查找到的数据库节点位置作为所述待存储数据的预占节点位置;
判断所述预占节点位置对应的数据库节点的节点访问热度是否小于预设访问热度阈值;
若是,则将待存储数据存储至所述预占节点位置对应的数据库节点。
3.根据权利要求2所述的方法,其中,所述方法还包括:若预占节点位置对应的数据库节点的节点访问热度大于或等于预设访问热度阈值,则根据所述预占节点位置,以预设查找方向在所述位置圆环中查找首个节点访问热度小于预设访问热度阈值的数据库节点对应的数据库节点位置,并将查找到的数据库节点位置作为所述待存储数据的实际节点位置;
将待存储数据存储至所述实际节点位置对应的数据库节点,并更新错位表。
4.根据权利要求3所述的方法,其中,所述方法还包括:若所有数据库节点的节点访问热度均大于或等于预设访问热度阈值,则将待存储数据存储至所述预占节点位置对应的数据库节点,并发送扩容提醒信息。
5.根据权利要求1-4任一项所述的方法,其中,所述方法还包括:
对节点访问热度大于或等于预设访问热度阈值的数据库节点进行监测;
若至少一个数据库节点的节点访问热度下降,且节点访问热度小于预设访问热度阈值,则将错位表中记录的错位数据由实际节点位置对应的数据库节点回迁至节点访问热度小于预设访问热度阈值的预占节点位置对应的数据库节点,并更新错位表。
6.根据权利要求1-4任一项所述的方法,其中,所述方法还包括:接收客户端发送的携带有数据主键的数据查询请求,根据所述数据主键查询错位表;
若在错位表中...
【专利技术属性】
技术研发人员:金锷,邢雨彤,
申请(专利权)人:中国移动通信集团安徽有限公司,中国移动通信集团有限公司,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。