CN113448966B - 一种订单类数据多维度分表系统 - Google Patents
一种订单类数据多维度分表系统 Download PDFInfo
- Publication number
- CN113448966B CN113448966B CN202110809684.XA CN202110809684A CN113448966B CN 113448966 B CN113448966 B CN 113448966B CN 202110809684 A CN202110809684 A CN 202110809684A CN 113448966 B CN113448966 B CN 113448966B
- Authority
- CN
- China
- Prior art keywords
- data
- database
- dimensional
- cold
- hot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Automation & Control Theory (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种订单类数据多维度分表系统,录入接口录入业务数据,热表数据库存放活跃数据,数据同步单元将热表数据库中满足条件的数据同步至多维度冷表数据库并将数据分列至不同维度的冷表分表,数据在同一时刻分配至不同维度的冷表分表,冷表数据库中对应数据间设有指针,便于数据同时出库,通过数据路由的查询接口,以模糊匹配单元配合自热表数据库或多维度冷表数据库查询数据。本发明的操作间相不干扰,大幅缩减热表的业务数据量,减轻数据库尤其是写库压力,常用业务操作更轻松,耗时短;针对特殊场景可进行全量历史数据查询,大幅降低各种数据导出、全量查询耗时;即时备份数据且并不产生过大的运算量。
Description
技术领域
本发明涉及专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法的技术领域,特别涉及一种订单类数据多维度分表系统。
背景技术
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,读写速度快,灵活性高。
MySQL所使用SQL语言是用于访问数据库的最常用标准化语言,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择其作为网站数据库。
然而,随着用户量的提升和业务的逐步完善,往往系统的业务订单数据也会成倍的增长,当数量超过500万条后,MySQL的数据查询性能就会逐步下降,影响系统的稳定性,甚至最后成为系统的瓶颈。
现有技术中常见的处理手段包括分库分表和使用nosql。
对于分库分表来说,其只是将MySQL的数据进行简单的物理拆分,根据特定的字段与分表逻辑将数据拆分成N张表;这导致了当数据存在多维度的查询时,某些查询条件字段无法与分表逻辑字段匹配,致使实际的查询还是需要横跨多个分表,性能甚至比之前更差;
对于使用nosql,如ElasticSearch来说,其性能确实有所提升,但开发与运维的成本也大大增加,同时,nosql中的数据不便于使用客户端工具实时查询且无法与其他MySQL业务表数据进行联合查询,这导致了对于问题的排查相当不便。
发明内容
本发明解决了现有技术中存在的问题,提供了一种优化的订单类数据多维度分表系统。
本发明所采用的技术方案是,一种订单类数据多维度分表系统,所述系统包括:
一录入服务端,包括录入接口,用于录入业务数据;
一热表数据库,用于存放预设时间内经常变动的活跃数据;
一数据同步单元,用于将热表数据库中满足条件的数据同步至多维度冷表数据库;
一多维度冷表数据库,用于以多维度将热表数据库中的数据分列至不同维度的冷表分表;
一数据路由,包括查询接口,用于自热表数据库或多维度冷表数据库查询数据;
一模糊匹配单元,配合数据路由设置,用于对查询内容进行模糊匹配后为数据路由指引热表数据库或多维度冷表数据库;
所述多维度冷表数据库包括若干维度的冷表数据库,任一数据在分配至不同维度的冷表分表中时为同一时刻录入,任意2个维度的冷表数据库中的任一对应数据间设有指针。
优选地,所述热表数据库将录入的业务数据在录入时刻同步备份至全量库;所述全量库按时间分表备份所有数据。
优选地,通过数据库触发器实现被查询的业务数据自全量库复制至热表数据库。
优选地,所述业务数据被提取特征项,在热表数据库中进行数据标注。
优选地,所述热表数据库在预设的时间阶段将预设条件的业务数据转移至多维度冷表数据库,删除热表数据库中的所述业务数据,所述热表数据库与多维度冷表数据库中的数据互斥。
优选地,所述热表数据库中的对应业务数据的特征项与多维度冷表数据库的维度对应。
优选地,若所述业务数据缺失任一特征项,则在热表数据库中赋值为0。
优选地,所述模糊匹配单元的模糊匹配包括以下步骤:
步骤1:满足预设条件时,启动模糊匹配单元;
步骤2:对数据路由处输入的查询信息进行分解,以预设的标识内容替换查询的结构语言,得到结构语言限定顺序的查询关键词;
步骤3:对查询关键词进行拆词,得到一个或多个有顺序的待匹配项;
步骤4:按序取未处理的待匹配项与热表的特征项进行模糊匹配,若匹配成功则进行下一步,否则,为数据路由指引多维度冷表数据库;
步骤5:若所有的待匹配项都处理完毕,则为数据路由指引热表数据库,否则返回步骤4。
优选地,任意的2个冷表数据库的数据总量相等。
优选地,任一维度的冷表数据库的分表数量小于等于500万。
本发明涉及一种优化的订单类数据多维度分表系统,以录入服务端的录入接口录入业务数据,以热表数据库存放预设时间内经常变动的活跃数据,以数据同步单元将热表数据库中满足条件的数据同步至多维度冷表数据库,以多维度冷表数据库将热表数据库中的数据分列至不同维度的冷表分表,即若干维度的冷表数据库,任一数据在分配至不同维度的冷表分表中时为同一时刻录入,任意2个维度的冷表数据库中的任一对应数据间设有指针,便于同类数据的同时出库,进一步还提供数据路由,可以通过其的查询接口自热表数据库或多维度冷表数据库查询数据,以模糊匹配单元配合数据路由,对查询内容进行模糊匹配后为数据路由指引热表数据库或多维度冷表数据库。
本发明具有以下有益效果:
1.各种表具独立分库存储,各种操作间相互不干扰;
2.通过冷表和热表的区分,大幅缩减了热表的业务数据量,减轻了数据库尤其是写库的压力,使得常用的业务操作变得更加轻松,耗时更短;
3.针对特殊场景可以进行全量历史数据查询,除热表数据以外,数据路由会根据查询条件适配最优维度的冷表,如按用户、按年份、按园区等,大幅降低各种数据导出、全量查询的耗时;
4.即时备份数据,不用担心会丢失,备份数据的写入也并不产生过大的运算量。
附图说明
图1为本发明的系统结构示意图,其中,实线箭头表示数据存储的方向,虚线箭头表示数据读出的方向。
具体实施方式
下面结合实施例对本发明做进一步的详细描述,但本发明的保护范围并不限于此。
本发明涉及一种订单类数据多维度分表系统,所述系统包括:
一录入服务端,包括录入接口,用于录入业务数据;
一热表数据库,用于存放预设时间内经常变动的活跃数据;
一数据同步单元,用于将热表数据库中满足条件的数据同步至多维度冷表数据库;
一多维度冷表数据库,用于以多维度将热表数据库中的数据分列至不同维度的冷表分表;冷表数据库与热表数据互斥,适用于不同查询条件的历史数据查询;
一数据路由,包括查询接口,用于自热表数据库或多维度冷表数据库查询数据;根据不同的查询条件匹配不同的查询结果表;
一模糊匹配单元,配合数据路由设置,用于对查询内容进行模糊匹配后为数据路由指引热表数据库或多维度冷表数据库。
所述热表数据库将录入的业务数据在录入时刻同步备份至全量库。
所述全量库按时间分表备份所有数据。
通过数据库触发器实现被查询的业务数据自全量库复制至热表数据库。
本发明中,一般在全量库备份全量数据为按时间分表,包括年、月、日,需要读取时,可通过数据库触发器实现。
本发明中,当新增或者修改数据之后,除了热表数据之外需要同步修改数据全量库的数据,可通过数据库触发器来实现,也可以通过代码内事务控制来实现。
本发明中,根据业务场景用实际需要运用到的历史数据查询条件,设定冷表分表维度,一个策略可由多个字段组成,如“年份”“+”“园区”,若场景较多可配置多套分表策略,冷表数据结构除分表路由字段外与热表基本一致。
所述业务数据被提取特征项,在热表数据库中进行数据标注。
所述热表数据库在预设的时间阶段将预设条件的业务数据转移至多维度冷表数据库,删除热表数据库中的所述业务数据,所述热表数据库与多维度冷表数据库中的数据互斥。
本发明中,根据业务配置,定期通过job将数据从热表迁移到冷表,期间需要通过分布式事务控制实现,确保一方减少一方增加。
所述热表数据库中的对应业务数据的特征项与多维度冷表数据库的维度对应。
若所述业务数据缺失任一特征项,则在热表数据库中赋值为0;以“0”作为缺省项。
所述模糊匹配单元的模糊匹配包括以下步骤:
步骤1:满足预设条件时,启动模糊匹配单元;
步骤2:对数据路由处输入的查询信息进行分解,以预设的标识内容替换查询的结构语言,得到结构语言限定顺序的查询关键词;
步骤3:对查询关键词进行拆词,得到一个或多个有顺序的待匹配项;
步骤4:按序取未处理的待匹配项与热表的特征项进行模糊匹配,若匹配成功则进行下一步,否则,为数据路由指引多维度冷表数据库;
步骤5:若所有的待匹配项都处理完毕,则为数据路由指引热表数据库,否则返回步骤4。
本发明中,随着用户量的提升和业务的逐步完善,往往系统的业务订单数据也会成倍的增长,为了避免数据查询性能的下降影响系统的稳定性或成为系统的瓶颈,故在业务订单数据上升达到预设的阈值时,启动模糊匹配单元进行辅助分配;由于查询的语句为结构化语句,故对结构化的部分进行处理、隐去,但保持实际查询内容的顺序,此一方面可以固定查询内容的顺序,同时也可以对查询内容指向的特征项进行定位,不易发生对位错误。
本发明中,对查询关键词进行拆词是指基于热表中的不同列,将其拆得到一个或多个有顺序的待匹配项,并将这些待匹配项进行逐个(列)匹配,每次匹配到一项后,可以过滤大量的无关数据,而当任何一项无法匹配时,就可以直接跳出、指向冷表数据库,大幅降低了查询时间。
所述多维度冷表数据库包括若干维度的冷表数据库,任意的2个冷表数据库的数据总量相等,任一维度的冷表数据库的分表数量小于等于500万。
任一数据在分配至不同维度的冷表分表中时为同一时刻录入,任意2个维度的冷表数据库中的任一对应数据间设有指针。
本发明中,为了便于查询,在不同维度的冷表数据库中的对应数据间设置指针,当通过一种形式查找出的数据完整度不够或不明确时,可以通过另一种方式进行复核或补充,保证了查找的准确性和稳定度。
本发明以录入服务端的录入接口录入业务数据,以热表数据库存放预设时间内经常变动的活跃数据,以数据同步单元将热表数据库中满足条件的数据同步至多维度冷表数据库,以多维度冷表数据库将热表数据库中的数据分列至不同维度的冷表分表,同时提供数据路由,可以通过其的查询接口自热表数据库或多维度冷表数据库查询数据。
本发明的各种表具独立分库存储,各种操作间相互不干扰,通过冷表和热表的区分,大幅缩减了热表的业务数据量,减轻了数据库尤其是写库的压力,使得常用的业务操作变得更加轻松,耗时更短;针对特殊场景可以进行全量历史数据查询,除热表数据以外,数据路由会根据查询条件适配最优维度的冷表,如按用户、按年份、按园区等,大幅降低各种数据导出、全量查询的耗时;可以即时备份数据,不用担心会丢失,备份数据的写入也并不产生过大的运算量。
Claims (8)
1.一种订单类数据多维度分表系统,其特征在于:所述系统包括:
一录入服务端,包括录入接口,用于录入业务数据;
一热表数据库,用于存放预设时间内经常变动的活跃数据;
一数据同步单元,用于将热表数据库中满足条件的数据同步至多维度冷表数据库;
一多维度冷表数据库,用于以多维度将热表数据库中的数据分列至不同维度的冷表分表;
所述热表数据库在预设的时间阶段将预设条件的业务数据转移至多维度冷表数据库,删除热表数据库中的所述业务数据,所述热表数据库与多维度冷表数据库中的数据互斥;
所述多维度冷表数据库包括若干维度的冷表数据库,任一数据在分配至不同维度的冷表分表中时为同一时刻录入,任意2个维度的冷表数据库中的任一对应数据间设有指针;
一数据路由,包括查询接口,用于自热表数据库或多维度冷表数据库查询数据;
一模糊匹配单元,配合数据路由设置,用于对查询内容进行模糊匹配后为数据路由指引热表数据库或多维度冷表数据库;所述模糊匹配单元的模糊匹配包括以下步骤:
步骤1:满足预设条件时,启动模糊匹配单元;
步骤2:对数据路由处输入的查询信息进行分解,以预设的标识内容替换查询的结构语言,得到结构语言限定顺序的查询关键词;
步骤3:对查询关键词进行拆词,得到一个或多个有顺序的待匹配项;
步骤4:按序取未处理的待匹配项与热表的特征项进行模糊匹配,若匹配成功则进行下一步,否则,为数据路由指引多维度冷表数据库;
步骤5:若所有的待匹配项都处理完毕,则为数据路由指引热表数据库,否则返回步骤4。
2.根据权利要求1所述的一种订单类数据多维度分表系统,其特征在于:所述热表数据库将录入的业务数据在录入时刻同步备份至全量库;所述全量库按时间分表备份所有数据。
3.根据权利要求2所述的一种订单类数据多维度分表系统,其特征在于:通过数据库触发器实现被查询的业务数据自全量库复制至热表数据库。
4.根据权利要求1所述的一种订单类数据多维度分表系统,其特征在于:所述业务数据被提取特征项,在热表数据库中进行数据标注。
5.根据权利要求1所述的一种订单类数据多维度分表系统,其特征在于:所述热表数据库中的对应业务数据的特征项与多维度冷表数据库的维度对应。
6.根据权利要求4所述的一种订单类数据多维度分表系统,其特征在于:若所述业务数据缺失任一特征项,则在热表数据库中赋值为0。
7.根据权利要求1所述的一种订单类数据多维度分表系统,其特征在于:任意的2个冷表数据库的数据总量相等。
8.根据权利要求1或7所述的一种订单类数据多维度分表系统,其特征在于:任一维度的冷表数据库的分表数量小于等于500万。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110809684.XA CN113448966B (zh) | 2021-07-17 | 2021-07-17 | 一种订单类数据多维度分表系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110809684.XA CN113448966B (zh) | 2021-07-17 | 2021-07-17 | 一种订单类数据多维度分表系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113448966A CN113448966A (zh) | 2021-09-28 |
CN113448966B true CN113448966B (zh) | 2022-06-21 |
Family
ID=77816685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110809684.XA Active CN113448966B (zh) | 2021-07-17 | 2021-07-17 | 一种订单类数据多维度分表系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113448966B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095863A (zh) * | 2016-06-03 | 2016-11-09 | 众安在线财产保险股份有限公司 | 一种多维度数据查询和存储系统和方法 |
CN106557578A (zh) * | 2016-11-23 | 2017-04-05 | 中国工商银行股份有限公司 | 历史数据查询方法及系统 |
CN108319654A (zh) * | 2017-12-29 | 2018-07-24 | 中国银联股份有限公司 | 计算系统、冷热数据分离方法及装置、计算机可读存储介质 |
CN108932316A (zh) * | 2018-06-21 | 2018-12-04 | 吉旗(成都)科技有限公司 | 一种包含冷热数据分离和分布式数据字的中间服务方案 |
CN111881323A (zh) * | 2020-06-19 | 2020-11-03 | 四川新网银行股份有限公司 | 基于排序字段与时间路由的表分离方法 |
CN113010558A (zh) * | 2021-03-19 | 2021-06-22 | 福建天晴在线互动科技有限公司 | 一种支付系统根据订单时间进行数据冷热分离方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324447A1 (en) * | 2014-05-08 | 2015-11-12 | Altibase Corp. | Hybrid database management system and method of managing tables therein |
-
2021
- 2021-07-17 CN CN202110809684.XA patent/CN113448966B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095863A (zh) * | 2016-06-03 | 2016-11-09 | 众安在线财产保险股份有限公司 | 一种多维度数据查询和存储系统和方法 |
CN106557578A (zh) * | 2016-11-23 | 2017-04-05 | 中国工商银行股份有限公司 | 历史数据查询方法及系统 |
CN108319654A (zh) * | 2017-12-29 | 2018-07-24 | 中国银联股份有限公司 | 计算系统、冷热数据分离方法及装置、计算机可读存储介质 |
CN108932316A (zh) * | 2018-06-21 | 2018-12-04 | 吉旗(成都)科技有限公司 | 一种包含冷热数据分离和分布式数据字的中间服务方案 |
CN111881323A (zh) * | 2020-06-19 | 2020-11-03 | 四川新网银行股份有限公司 | 基于排序字段与时间路由的表分离方法 |
CN113010558A (zh) * | 2021-03-19 | 2021-06-22 | 福建天晴在线互动科技有限公司 | 一种支付系统根据订单时间进行数据冷热分离方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113448966A (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7464084B2 (en) | Method for performing an inexact query transformation in a heterogeneous environment | |
US20170161375A1 (en) | Clustering documents based on textual content | |
US8315997B1 (en) | Automatic identification of document versions | |
US5394487A (en) | Forms recognition management system and method | |
CN104199816B (zh) | 单独可访问数据单元的管理存储 | |
US9639542B2 (en) | Dynamic mapping of extensible datasets to relational database schemas | |
US8924373B2 (en) | Query plans with parameter markers in place of object identifiers | |
US9747349B2 (en) | System and method for distributing queries to a group of databases and expediting data access | |
US20030037037A1 (en) | Method of storing, maintaining and distributing computer intelligible electronic data | |
US6122644A (en) | System for halloween protection in a database system | |
US20100198881A1 (en) | Method of data storage and management | |
CN111767303A (zh) | 一种数据查询方法、装置、服务器及可读存储介质 | |
US20050223032A1 (en) | Loading data from a vertical database table into a horizontal database table | |
CN102419755A (zh) | 一种搜索结果的排序方法和装置 | |
Yang et al. | F1 Lightning: HTAP as a Service | |
CN105159971B (zh) | 一种云平台数据检索方法 | |
CN106066895A (zh) | 一种智能查询系统 | |
CN111125116B (zh) | 定位业务表中代码字段及对应代码表的方法及系统 | |
US20090327339A1 (en) | Partition templates for multidimensional databases | |
US20060190452A1 (en) | Sort digits as number collation in server | |
US8386541B2 (en) | Dynamic change data capture process | |
US10990573B2 (en) | Fast index creation system for cloud big data database | |
US7529760B2 (en) | Use of positive and negative filtering with flexible comparison operations | |
CN107291938A (zh) | 订单查询系统及方法 | |
CN113448966B (zh) | 一种订单类数据多维度分表系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |