一种基于订单数据的数据切分系统转让专利

申请号 : CN202111452579.1

文献号 : CN115700707A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许陈圣刘晨光叶孙明

申请人 : 苏州市伽顿服饰有限公司

摘要 :

本发明涉及订单数据管理领域,特别是关于一种基于订单数据的数据切分系统。本发明所述方法具体包括读取单元,用于获取初始订单输入流并确定订单信息数据;数据添加单元,将所述订单信息数据转换为设定的字符串,所述字符串包含切分标识,依据切分标识对字符串进行数据切分;数据存储单元,用于存储切分后的数据。本发明通过建立数据切分标识对初始订单输入流进行两次数据切分,并通过水平切分避免高并发情况下的性能瓶颈,同时提高了系统的稳定,在此基础上进行垂直拆分用以明确各表单的规则与类型,在用以后期的订单数据匹配整合与维护。

权利要求 :

1.一种基于订单数据的数据切分系统,其特征在于,具体包括读取单元,用于获取初始订单输入流并确定订单信息数据;数据添加单元,将所述订单信息数据转换为设定的字符串,所述字符串包含切分标识,依据切分标识对字符串进行数据切分;数据存储单元,用于存储切分后的数据。

2.根据权利要求1所述的一种基于订单数据的数据切分系统,其特征在于,所述的数据切分根据订单信息确定特征值,并以此建立基于特征值的切分标识,根据基于特征值的切分标识建立分隔函数。

3.根据权利要求2所述的一种基于订单数据的数据切分系统,其特征在于,所述的分隔函数,通过读取切分标识前的字符串,并建立动态数组列表,将查到找到的数据添加至动态数组列表中,待分隔完成将动态数组列表转换至第一字符串列表。

4.根据权利要求3所述的一种基于订单数据的数据切分系统,其特征在于,在所述的第一字符串列表的基础上,建立第二切分标识,进行动态数组列表的二次切分,并将二次分隔数据传送至第二字符串列表,得到多个数据片段。

5.根据权利要求4所述的一种基于订单数据的数据切分系统,其特征在于,通过调用第二字符串列表创建基于订单信息节点信息,根据节点信息建立hash表。

6.根据权利要求5所述的一种基于订单数据的数据切分系统,其特征在于,所述的节点信息为第二字符串列表中切分标识所代表的订单信息的类,根据订单信息的类创建链表,并在链表的基础上建立hash表。

7.根据权利要求6所述的一种基于订单数据的数据切分系统,其特征在于,通过建立的hash表对订单数据中的ID取模。

8.根据权利要求7所述的一种基于订单数据的数据切分系统,其特征在于,根据ID取模的结果,对建立的hash表进行水平切分,所述的水平切分按照特定的字段将hash表切分后定位到对应的库上。

9.根据权利要求8所述的一种基于订单数据的数据切分系统,其特征在于,在水平切分的基础上对对应的库进行垂直切分,所述的垂直切分分为静态切分与动态调整。

10.根据权利要求2所述的一种基于订单数据的数据切分系统,其特征在于,所述的动态调整通过建立中间处理单元,对对应的库中存储不均匀的数据进行重新分配。

说明书 :

一种基于订单数据的数据切分系统

技术领域

[0001] 本发明涉及订单数据管理领域,IPC分类号为:G06Q10/00,特别是关于一种基于订单数据的数据切分系统。

背景技术

[0002] 现阶段随着智能制造的发展,制造业也逐步向智能生产转型,传统的生产加工型企业存在生产流程多,各生产流程设计大量的订单与生产数据,这些数据需要指定的人员每日统计管理,并以此进行协调生产,由此需要花费大量的人力资源,同时人工统计会出现一定的错误,如果一个环节出错将会导致其他生产流程,数据追溯等一系列环节出现问题,影响生产的进度和工作的效率。
[0003] 专利CN200610002722提供了一种订单数据管理系统及方法,通过建立一种特殊软件处理数据库,通过将孤立分离的特殊软件整合,用以实现订单软件自动化观念里,提高了订单软软件的处理效率,但是该专利并未涉及订单中数据表单的优化问题,当大量订单需要处理时,未经数据切分的表单易存在业务流程不清晰,不易整合和扩展数据后期维护困难的问题。
[0004] 专利CN201610390527提供了一种高并发业务的订单数据处理方法及装置,通过在订单数据处理中,引入了切流策略,保证在数据库架构升级的过程中数据不进行迁移,同时将用户订单与企业订单分开不同的库存储,通过并行的方式进行订单的数据处理。但是此种方法虽然使用了垂直切分的原理,单并在此基础上对用户与企业各自具体数据进行分类,易存在单库但是大数据中所涉及的高并发的瓶颈问题。
[0005] 因此,为更好的对采集到的订单数据进行清晰合理的拆分,从而保证系统之间的数据整合与维护,便于后期的数据扩展与高并发瓶颈问题,急需推出一种将垂直切分与水平切分的数据切分系统。

发明内容

[0006] 针对上述问题,本发明提供了一种基于订单数据的数据切分系统,具体包括读取单元,用于获取初始订单输入流并确定订单信息数据;数据添加单元,将所述订单信息数据转换为设定的字符串,所述字符串包含切分标识,依据切分标识对字符串进行数据切分;数据存储单元,用于存储切分后的数据。
[0007] 优选的,所述的数据切分根据订单信息确定特征值,并以此建立基于特征值的切分标识,根据基于特征值的切分标识建立分隔函数。
[0008] 优选的,所述的分隔函数,通过读取切分标识前的字符串,并建立动态数组列表,将查到找到的数据添加至动态数组列表中,待分隔完成将动态数组列表转换至第一字符串列表。
[0009] 优选的,在所述的第一字符串列表的基础上,建立第二切分标识,进行动态数组列表的二次切分,并将二次分隔数据传送至第二字符串列表,得到多个数据片段。
[0010] 优选的,通过调用第二字符串列表创建基于订单信息节点信息,根据节点信息建立hash表。
[0011] 优选的,所述的节点信息为第二字符串列表中切分标识所代表的订单信息的类,根据订单信息的类创建链表,并在链表的基础上建立hash表。
[0012] 优选的,通过建立的hash表对订单数据中的ID取模。
[0013] 优选的,根据ID取模的结果,对建立的hash表进行水平切分,所述的水平切分按照特定的字段将hash表切分后定位到对应的库上。
[0014] 优选的,在水平切分的基础上对对应的库进行垂直切分,所述的垂直切分分为静态切分与动态调整。
[0015] 优选的,所述的动态调整通过建立中间处理单元,对对应的库中存储不均匀的数据进行重新分配。
[0016] 与现有技术相比,本发明具有以下优点:
[0017] (1)本发明在获取初始订单输入流后,通过建立数据切分标识对初始订单输入流进行两次数据切分,通过模糊切分与精准切分相配合的方式,用以通过设定好的切分标识对数据字段进行特定的分割,并将其返回至动态数组列表中。
[0018] (2)本发明采用水平切分与垂直切分相结合的方式,通过水平切分按照特定的字段将hash表切分后定位到对应的库上,用以将大量的单库数据拆分为小的类,避免高并发情况下的性能瓶颈,同时提高了系统的稳定,在此基础上进行垂直拆分用以明确各表单的规则与类型,在用以后期的订单数据匹配整合与维护。
[0019] (3)本发明先进行水平切分后再次进行垂直切分,避免先进行垂直切分所带来的单库大数据高并发的性能瓶颈问题。

附图说明

[0020] 图1为一种基于订单数据的数据切分的系统模块图。

具体实施方式

[0021] 一种基于订单数据的数据切分系统,具体包括以下步骤:
[0022] <读取单元>
[0023] 在一种实施方式中,通过设置数据接收指令,获取初始订单输入流并确定订单信息,并将初始订单输入流传送至数据添加单元。
[0024] <数据添加单元>
[0025] 在一种实施方式中,通过获取初始订单输入流,将数据设置为特定的字符串形式,并通过建立数据切分标识对初始订单输入流进行数据切分。
[0026] 在一种优选的实施方式中,所述的订单初始输入流包括订单编号、款号、类别、客户、品牌、颜色、尺码、适量、港口信息、联系人。
[0027] <数据存储单元>
[0028] 在一种实施方式中,在数据切分完成后,通过分类存储的方式存储至数据存储单元。
[0029] 其中,所述的数据切分根据订单信息确定特征值,并以此建立基于特征值的切分标识,根据基于特征值的切分标识建立分隔函数,所述的分隔函数,通过读取切分标识前的字符串,并建立动态数组列表,将查到找到的数据添加至动态数组列表中,待分隔完成将动态数组列表转换至第一字符串列表,在所述的第一字符串列表的基础上,建立第二切分标识,进行动态数组列表的二次切分,并将二次分隔数据传送至第二字符串列表,得到多个数据片段,通过调用第二字符串列表创建基于订单信息节点信息,根据节点信息建立hash表。
[0030] 在一种优选的实施方式中,将所述的数据片段按照相应的顺序进行编号,用以后期进行规则匹配与分类。
[0031] 在一种实施方式中,所述的节点信息为第二字符串列表中切分标识所代表的订单信息的类,根据订单信息的类创建链表,并在链表的基础上建立hash表,通过建立的hash表对订单数据中的ID取模。根据ID取模的结果,对建立的hash表进行水平切分,所述的水平切分按照特定的字段将hash表切分后定位到对应的库上。
[0032] 在一种优选的实施方式中,在所述的hash表中,建立基于特定字段的自定义返回函数,由于hash表在分区过程中只能返回一个整数,因此要进行基于分区个数的ID取模运算,其中可根据用户实际情况进行分库的个数设定,以及每个库中的分表的设定,并通过取模的结果确定库,取余数的结果确定表。
[0033] 具体的,本专利采用先进行水平切分之后进行垂直切分的进行数据的处理方式;其中所述的水平切分根据hash表中数据的逻辑关系,建立基于特定的字段的切分规则,在拆分后得到过个对应的数据库。本专利通过采用水平切分的方式,用以处理订单数据中数据量突然增长时处理器无法负载的问题,提高了订单数据处理系统整体处理效率。
[0034] 在一实施方式中,在所述的水平切分的基础上对对应的库进行垂直切分,所述的垂直切分分为静态切分与动态调整。所述的动态调整通过建立中间处理单元,对对应的库中存储不均匀的数据进行重新分配。
[0035] 具体的,在水平切分的基础上,本发明再次进行垂直切分的处理,由于在水平切分的处理基础上,各个库之间的耦合度降低,用以更好的对订单数据进行分片,解决存储问题,并提高订单数据的并发性的读写功能。