数据库管理方法及装置、服务器及计算机可读介质制造方法及图纸

技术编号:21298657 阅读:37 留言:0更新日期:2019-06-12 07:42
本公开提供了一种数据库管理方法,包括:以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;周期性获取数据库中的数据访问记录;根据所述数据访问记录在各数据存储分区间迁移数据。本公开还提供了一种数据库管理装置、服务器及计算机可读介质。

Database Management Method and Device, Server and Computer Readable Media

This disclosure provides a database management method, which includes: partitioning the database with partitioning keys as granularity and forming multiple data storage partitions. The routing information of the data in the database is stored in key-value pair storage mode; periodically obtaining data access records in the database; and migrating data among data storage partitions according to the data access records. The present disclosure also provides a database management device, a server and a computer readable medium.

【技术实现步骤摘要】
数据库管理方法及装置、服务器及计算机可读介质
本公开涉及数据处理
,具体地,涉及数据库管理方法及装置、服务器及计算机可读介质。
技术介绍
现有的网盘数据库采用分布式集群通用架构,其多按照用户ID对数据库进行分区,但由于每个用户保存的文件数不固定,会导致活跃用户和非活跃用户的数据被混乱地分布在各个分区间,各分区间的数据存储容量差异较大,使得存储资源利用率较低。另一方面,当用户集中访问数据库时,会出现MySQL(关系型数据库管理系统)实例负载的连接数瞬间暴涨的现象或出现MySQL实例负载夯住的现象,这大大影响了用户的使用体验。应该注意,上面对技术背景的介绍只是为了方便对本专利技术的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本专利技术的
技术介绍
部分进行了阐述而认为上述技术方案为本领域技术人员所公知。
技术实现思路
本公开实施例提出了数据库管理方法及装置、服务器及计算机可读介质。第一方面,本公开实施例提供了一种数据库管理方法,包括:以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;周期性获取数据库中的数据访问记录;根据所述数据访问记录在各数据存储分区间迁移数据。在一些实施例中,根据数据访问记录在各数据存储分区间迁移数据的步骤包括:根据所述数据访问记录中各数据的访问频次将数据分类为热数据和冷数据;迁移所述热数据至第一类分区及迁移所述冷数据至第二类分区,数据存储分区包括第一类分区和第二类分区,所述第一类分区位于第一存储介质上,第二类分区位于第二存储介质上,第一存储介质的访问性能高于第二存储介质的访问性能。在一些实施例中,所述第一存储介质为固态硬盘,所述第二存储介质为接口硬盘。在一些实施例中,根据数据访问记录在各数据存储分区间迁移数据的步骤还包括:根据第一类分区的数据访问记录在多个所述第一类分区间迁移数据,以使得各第一类分区的数据访问均衡。在一些实施例中,所述路由信息包括动态信息和静态信息,迁移数据的步骤具体包括:判断基准是否同步,若是,锁定与所述数据迁移指令对应的待迁移数据的源数据;迁移所述待迁移数据;判断增量是否同步,若是,根据迁移后的数据存储分区的分区键修改所述待迁移数据路由信息中的动态信息。在一些实施例中,在根据数据访问记录在各数据存储分区间迁移数据的步骤之后还包括:接收数据访问请求并获取与所述数据访问请求要访问数据对应的当前路由信息;根据所述当前路由信息改写所述数据访问请求;根据改写后的数据访问请求在数据库中访问与所述当前路由信息对应的数据存储分区;从所述数据存储分区中获取与所述数据访问请求对应的数据结果;返回所述数据结果。第二方面,本公开实施例提供了一种数据库管理装置,包括:分区形成模块,用于以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;第一获取模块,用于周期性获取数据库中的数据访问记录;迁移模块,用于根据所述数据访问记录在各数据存储分区间迁移数据。在一些实施例中,迁移模块包括:分类子模块,用于根据所述数据访问记录中各数据的访问频次将数据分类为热数据和冷数据;迁移子模块,用于迁移所述热数据至第一类分区及迁移所述冷数据至第二类分区,数据存储分区包括第一类分区和第二类分区,所述第一类分区位于第一存储介质上,第二类分区位于第二存储介质上,第一存储介质的访问性能高于第二存储介质的访问性能。在一些实施例中,所述第一存储介质为固态硬盘,所述第二存储介质为接口硬盘。在一些实施例中,所述迁移子模块还用于根据第一类分区的数据访问记录在多个所述第一类分区间迁移数据,以使得各第一类分区的数据访问均衡。在一些实施例中,所述迁移模块包括:判断子模块,用于判断基准是否同步,判断增量是否同步;锁定子模块,用于当判断出基准同步时,锁定与所述数据迁移指令对应的待迁移数据的源数据;迁移子模块,用于迁移所述待迁移数据;修改子模块,用于当判断出增量同步时,根据迁移后的数据存储分区的分区键修改所述待迁移数据路由信息中的动态信息。在一些实施例中,还包括:接收获取模块,用于接收数据访问请求并获取与所述数据访问请求要访问数据对应的当前路由信息;改写模块,用于根据所述当前路由信息改写所述数据访问请求;访问模块,用于根据改写后的数据访问请求在数据库中访问与所述当前路由信息对应的数据存储分区;第二获取模块,用于从所述数据存储分区中获取与所述数据访问请求对应的数据结果;返回模块,用于返回所述数据结果。第三方面,本公开实施例提供了一种服务器,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的数据库管理方法。第四方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被执行时实现如上所述的数据库管理方法。本公开实施例提供的数据库管理方法,以分区键为粒度对数据库进行自定义分区,根据数据库的数据访问记录动态迁移数据,实现冷热数据分离存储和按需分配,在保证热数据访问质量的前提下,能够提升数据库存储资源的利用率,降低数据库阻塞风险和存储成本。附图说明附图用来提供对本公开的实施例作进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其他特征和优点对本领域技术人员将变得更加显而易见,在附图中:图1为本公开实施例提供的一种数据库管理方法的流程示意图;图2为步骤S3的一种可选实现方式的流程示意图;图3为步骤S3的另一种可选实现方式的流程示意图;图4为迁移数据步骤的流程示意图;图5为本公开实施例提供的另一种数据库管理方法的流程示意图;图6a-图6c为本公开实施例提供的数据库管理方法的技术效果示意图;图7为本公开实施例提供的一种数据库管理装置的结构示意图;图8为迁移模块的一种可选结构示意图;图9为迁移模块的另一种可选结构示意图;图10为本公开实施例提供的另一种数据库管理装置的结构示意图。具体实施方式为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的数据库管理方法及装置、服务器及计算机可读介质进行详细描述。在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的本文档来自技高网...

【技术保护点】
1.一种数据库管理方法,包括:以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;周期性获取数据库中的数据访问记录;根据所述数据访问记录在各数据存储分区间迁移数据。

【技术特征摘要】
1.一种数据库管理方法,包括:以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;周期性获取数据库中的数据访问记录;根据所述数据访问记录在各数据存储分区间迁移数据。2.根据权利要求1所述的数据库管理方法,其中,根据数据访问记录在各数据存储分区间迁移数据的步骤包括:根据所述数据访问记录中各数据的访问频次将数据分类为热数据和冷数据;迁移所述热数据至第一类分区及迁移所述冷数据至第二类分区,数据存储分区包括第一类分区和第二类分区,所述第一类分区位于第一存储介质上,第二类分区位于第二存储介质上,第一存储介质的访问性能高于第二存储介质的访问性能。3.根据权利要求2所述的数据库管理方法,其中,所述第一存储介质为固态硬盘,所述第二存储介质为接口硬盘。4.根据权利要求2所述的数据库管理方法,其中,根据数据访问记录在各数据存储分区间迁移数据的步骤还包括:根据第一类分区的数据访问记录在多个所述第一类分区间迁移数据,以使得各第一类分区的数据访问均衡。5.根据权利要求1-4任一所述的数据库管理方法,其中,所述路由信息包括动态信息和静态信息,迁移数据的步骤具体包括:判断基准是否同步,若是,锁定与所述数据迁移指令对应的待迁移数据的源数据;迁移所述待迁移数据;判断增量是否同步,若是,根据迁移后的数据存储分区的分区键修改所述待迁移数据路由信息中的动态信息。6.根据权利要求1所述的数据库管理方法,其中,在根据数据访问记录在各数据存储分区间迁移数据的步骤之后还包括:接收数据访问请求并获取与所述数据访问请求要访问数据对应的当前路由信息;根据所述当前路由信息改写所述数据访问请求;根据改写后的数据访问请求在数据库中访问与所述当前路由信息对应的数据存储分区;从所述数据存储分区中获取与所述数据访问请求对应的数据结果;返回所述数据结果。7.一种数据库管理装置,包括:分区形成模块,用于以分区键为粒度对数据库进行分区并形成多个数据存储分区,所述数据库中的数据的路由信息以键值对存储方式存储;第一获取模块,用于周期性获取数据库中的数据访问...

【专利技术属性】
技术研发人员:胡林森高佳汪国辉
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1