[发明专利]一种订单存储方法及相关装置在审
申请号: | 202110960929.9 | 申请日: | 2021-08-20 |
公开(公告)号: | CN113656410A | 公开(公告)日: | 2021-11-16 |
发明(设计)人: | 朱晓捷 | 申请(专利权)人: | 上海微盟企业发展有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23;G06F16/2455 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 丁曼曼 |
地址: | 200441 上海市宝山*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 订单 存储 方法 相关 装置 | ||
本申请公开了一种订单存储方法,包括:将订单存储数据库中每个库对应的所有表进行编号,得到每个表的表编号;根据自增规则对待存储订单进行处理生成订单ID;根据散列均衡算法确定所述订单ID对应的表编号;根据所述表编号将所述待存储订单进行存储。通过所述表编号将待存储订单存储至对应表中,实现将订单进行存储,并且由于根据散列均衡算法对该订单分配该订单ID对应的表,最后进行存储,而不是将订单全部存储至个别的数据表中,避免出现数据倾斜的问题。本申请还公开了一种订单存储装置、服务器以及计算机可读存储介质,具有以上有益效果。
技术领域
本申请涉及计算机技术领域,特别涉及一种订单存储方法、订单存储装置、服务器以及计算机可读存储介质。
背景技术
随着互联网的发展,在电子商务领域中不论是面向个人还是企业,都逐渐变得广泛和活跃。随之而来的是产生海量交易订单数据,以便保持海量数据的高效存储与管理。
相关技术中,订单数据存储系统会对数据进行分库分表。主要是按照用户的id(例如,按照商家id进行分库分表)分配对应的数据库以及数据库中的数据表。但是,当个别商家数据量较大时,会存在数据倾斜,导致个别库表数据量巨大,从而减少了分库分表带来的收益,降低了性能利用率。
因此,如何避免存储订单时出现存储倾斜的问题是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种订单存储方法、订单存储装置、服务器以及计算机可读存储介质,以避免数据倾斜的问题,提供数据存储的效率。
为解决上述技术问题,本申请提供一种订单存储方法,包括:
将订单存储数据库中每个库对应的所有表进行编号,得到每个表的表编号;
根据自增规则对待存储订单进行处理生成订单ID;
根据散列均衡算法确定所述订单ID对应的表编号;
根据所述表编号将所述待存储订单进行存储。
可选的,根据散列均衡算法确定所述订单ID对应的表编号,包括:
对所述订单ID进行取模得到对应的所述表编号。
可选的,根据散列均衡算法确定所述订单ID对应的表编号,包括:
根据压力均衡算法对所述订单ID进行计算,得到对应的所述表编号。
可选的,根据所述表编号将所述待存储订单进行存储,包括:
根据所述表编号确定对应的目标库;
根据所述表编号确定所述对应的目标库中的目标表;
将所述待存储订单存储至所述目标表中。
可选的,还包括:
对订单存储事件和订单更新事件进行监控;
当监控到订单存储事件时,将所述订单存储事件的订单查询信息更新到索引数据中;
当监控到订单更新事件时,将所述订单更新事件更新到所述索引数据。
可选的,还包括:
当接收到订单查询请求时,根据所述订单查询请求在所述索引数据中进行查询,得到订单ID;
根据所述订单ID从所述订单存储数据库获取订单数据。
本申请还提供一种订单存储装置,包括:
数据库编号模块,用于将订单存储数据库中每个库对应的所有表进行编号,得到每个表的表编号;
订单ID生成模块,用于根据自增规则对待存储订单进行处理生成订单ID;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海微盟企业发展有限公司,未经上海微盟企业发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110960929.9/2.html,转载请声明来源钻瓜专利网。