CN113516536A - 一种分布式处理订单大数据的方法及系统 - Google Patents
一种分布式处理订单大数据的方法及系统 Download PDFInfo
- Publication number
- CN113516536A CN113516536A CN202110822992.6A CN202110822992A CN113516536A CN 113516536 A CN113516536 A CN 113516536A CN 202110822992 A CN202110822992 A CN 202110822992A CN 113516536 A CN113516536 A CN 113516536A
- Authority
- CN
- China
- Prior art keywords
- order
- data
- module
- paid
- task
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title description 2
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 23
- 238000004140 cleaning Methods 0.000 claims abstract description 22
- 238000004364 calculation method Methods 0.000 claims abstract description 15
- 238000001914 filtration Methods 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
-
- 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/2471—Distributed queries
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种分布式处理订单大数据的方法,所述方法包括以下步骤:步骤S1、订单数据清理;步骤S2、待处理数据量统计;步骤S3、对订单数据进行分组模块分发任务;步骤S4、在分组模块的任务节点进行业务处理;步骤S5、汇总任务节点,接收任务节点的结果;本发明能够实现数据的收集和存储,到数据的分析和计算。
Description
技术领域
本发明涉及计算机技术领域,特别是一种分布式处理订单大数据的方法及系统。
背景技术
在商城支付系统下会产生大量的用户订单数据,这些订单数据除了是自身支付行为的凭证意外,还富含其他的大量有价值的信息。例如用户IP可得到用户的所在区域,订单的支付来源可得到用户所持的设备类型,订单的付款类型可得到用户的付款方式。如果采用原始的循环所有订单数据进行逐一采集处理,效率可想而知会很低下。
发明内容
为克服上述问题,本发明的目的是提供一种能够实现数据的收集和存储,到数据的分析和计算的分布式处理订单大数据的方法及系统。
本发明采用以下方案实现:一种分布式处理订单大数据的方法,所述方法包括以下步骤:
步骤S1、订单数据清理;
步骤S2、待处理数据量统计;
步骤S3、对订单数据进行分组模块分发任务;
步骤S4、在分组模块的任务节点进行业务处理;
步骤S5、汇总任务节点,接收任务节点的结果。
进一步的,所述步骤S1进一步具体为:收集下单并付款的用户订单数据,过滤用户下单未付款的订单数据,分析支付状态为已付款的订单数据。
进一步的,所述步骤S2进一步具体包括以下步骤:
步骤S21、经过订单数据清理,读取待处理的数据量,执行sql语句,得到总数据量;
步骤S22、读取asc字符集正排序第一条已付款的订单ID,为第一条已经付款的订单ID;
步骤S23、读取desc数据表倒序第一条已付款的订单ID,为最后一条已经付款的订单ID。
进一步的,所述步骤S3进一步具体为:得到总数据量、第一条已付款订单ID和最后一条已付款订单ID后,系统对这些订单数据进行分组,结合可分配任务的任务节点数量,进行任务分发。
进一步的,所述步骤S4进一步具体为:每个任务节点收到分组模块执行区间的起始计算编号和终止计算编号,读取本节点需要负责的数据,循环执行,完成所有需处理的业务,将得到的结果向汇总节点上报。
进一步的,所述步骤S5进一步具体为:汇总节点接收各任务节点统计的数据,然后根据步骤S4进行处理,将处理后的结果重新进行整合,得到需要的结果。
本发明还提供了一种分布式处理订单大数据的系统,包括清理模块、统计模块、分发模块、处理模块和汇总模块,所述清理模块,即订单数据清理;所述统计模块,即待处理数据量统计;所述分发模块,即对订单数据进行分组模块分发任务;所述处理模块,即在分组模块的任务节点进行业务处理;所述汇总模块,即汇总任务节点,接收任务节点的结果。
进一步的,所述清理模块进一步具体为:收集下单并付款的用户订单数据,过滤用户下单未付款的订单数据,分析支付状态为已付款的订单数据。
进一步的,所述统计模块进一步包括:执行单元、第一读取单元和第二读取单元,所述执行单元,即经过订单数据清理,读取待处理的数据量,执行sql语句,得到总数据量;所述第一读取单元,即读取asc字符集正排序第一条已付款的订单ID,为第一条已经付款的订单ID;所述第二读取单元,即读取desc数据表倒序第一条已付款的订单ID,为最后一条已经付款的订单ID。
进一步的,所述分发模块进一步具体为:得到总数据量、第一条已付款订单ID和最后一条已付款订单ID后,系统对这些订单数据进行分组,结合可分配任务的任务节点数量,进行任务分发。
进一步的,所述处理模块进一步具体为:每个任务节点收到分组模块执行区间的起始计算编号和终止计算编号,读取本节点需要负责的数据,循环执行,完成所有需处理的业务,将得到的结果向汇总节点上报。
进一步的,所述汇总模块进一步具体为:汇总节点接收各任务节点统计的数据,然后根据处理模块进行处理,将处理后的结果重新进行整合,得到需要的结果。
本发明的有益效果在于:本发明可以把大规模数据分布到普通性能的服务器中进行处理,然后将处理后的结果重新进行整合,从而得到需要的结果。只要增加机器节点就能够加快处理速度,方便扩展。
附图说明
图1是本发明的方法流程示意图。
图2是本发明的系统原理框图。
具体实施方式
下面结合附图对本发明做进一步说明。
请参阅图1所示,本发明的一种分布式处理订单大数据的方法,所述方法包括以下步骤:
步骤S1、订单数据清理;
步骤S2、待处理数据量统计;
步骤S3、对订单数据进行分组模块分发任务;
步骤S4、在分组模块的任务节点进行业务处理;
步骤S5、汇总任务节点,接收任务节点的结果。
下面通过一具体实施例对本发明作进一步说明:
步骤1、订单数据清理
我们需要收集的是下单并付款的用户订单数据,这些真正付款的用户数据才有价值,所以我们过滤未付款的订单,仅分析支付状态为已付款的订单数据。读取订单表付款字段pay_status=1的数据,排除未付款数据,读取已付款数据。
步骤2、待处理数据量统计
经过数据清理,系统接着要计算出待分析的总数据量和第一条的ID和最后一条的ID。订单表名是order_tb,付款状态字段是pay_status,订单表自增字段是id。
步骤2.1、首先读取待处理的数据量,执行sql语句select count(0)from order_tb where pay_status=1,得到总数据量,起名dataTotal。
步骤2.2、其次读取第一条已付款的订单ID,asc正排序第一条数据就是,执行sql语句select id from order_tb where pay_status=1order by id asc limit 1,得到第一条已经付款的订单ID,起名firstID
步骤2.3、最后读取最后一条已经付款的订单ID,desc倒排序第一条就是,执行sql语句select id from order_tb where pay_status=1order by id desc limit 1,得到最后一条已经付款的订单ID,起名lastID。
步骤3、分组模块分发任务
得到dataTotal、firstID、lastID后,系统需要对这些数据进行分组,结合可分配任务的任务节点数量,进行任务分发。分组过程如下,假设dataTotal=1000000,firstID=1,lastID=2000000。总共100W条已支付数据,自增ID最大值是200W,那就是大概2笔订单中有1笔已完成支付,大概占一半。用最后一条已付款的订单ID除以总数据量lastID%dataTotal得到一个系数ratio=2。假设现在有10个任务节点可执行任务nodeCount=10,那么每个节点负责10W条数据,执行ID范围区间range=lastID%nodeCount=20W,根据公式起始计算编号beginID=(i-1)*range+1,终止计算编号endID=(i)*range,得到每个节点的任务分配如下:
节点1:1-200000;节点2:200001-400000;节点3:400001-600000;节点4:600001-800000;节点5:800001-1000000;节点6:1000001-1200000;节点7:1200001-1400000;节点8:1400001-1600000;节点9:1600001-1800000;节点10:1800001-2000000;
步骤4、任务节点进行业务处理
每个任务节点收到分组模块的执行区间beginID和endID,开始读取本节点需要负责的数据,然后循环执行,完成所有处理的业务,例如订单校验、区域汇总等等,把得到的结果向汇总节点上报。例如这次要做的是区域统计,那么就把订单的IP进行解析,向第三方的IP区域解析接口获得数据,例如节点1得到福建8W,江西4W,浙江2W,广东6W。
步骤5、汇总节点接收任务节点的结果
汇总节点接收各任务节点统计的数据,这样做最大的好处就是可以把大规模数据分布到普通性能的服务器中,根据步骤4的方法进行处理,然后将处理后的结果重新进行整合,从而得到需要的结果。例如节点1得到福建8W,江西4W,浙江2W,广东6W;节点2得到福建6W,江西5W,辽宁2W,广东5W;那么整合累加的汇总数据就是福建14W,江西9W,浙江2W,江西5W,广东11W,辽宁2W。其余节点以此类推进行累加得到最后的汇总数据,整合就是把所有节点的结果进行累加。
请参阅图2所示,本发明还提供了一种分布式处理订单大数据的系统,包括清理模块、统计模块、分发模块、处理模块和汇总模块,所述清理模块,即订单数据清理;所述统计模块,即待处理数据量统计;所述分发模块,即对订单数据进行分组模块分发任务;所述处理模块,即在分组模块的任务节点进行业务处理;所述汇总模块,即汇总任务节点,接收任务节点的结果。
所述清理模块进一步具体为:收集下单并付款的用户订单数据,过滤用户下单未付款的订单数据,分析支付状态为已付款的订单数据。
所述统计模块进一步包括:执行单元、第一读取单元和第二读取单元,所述执行单元,即经过订单数据清理,读取待处理的数据量,执行sql语句,得到总数据量;所述第一读取单元,即读取asc字符集正排序第一条已付款的订单ID,为第一条已经付款的订单ID;所述第二读取单元,即读取desc数据表倒序第一条已付款的订单ID,为最后一条已经付款的订单ID。
所述分发模块进一步具体为:得到总数据量、第一条已付款订单ID和最后一条已付款订单ID后,系统对这些订单数据进行分组,结合可分配任务的任务节点数量,进行任务分发。
所述处理模块进一步具体为:每个任务节点收到分组模块执行区间的起始计算编号和终止计算编号,读取本节点需要负责的数据,循环执行,完成所有需处理的业务,将得到的结果向汇总节点上报。
所述汇总模块进一步具体为:汇总节点接收各任务节点统计的数据,然后根据处理模块进行处理,将处理后的结果重新进行整合,得到需要的结果。
总之,本发明从数据的收集、存储,到数据的分析、计算,最后在推荐系统上进行应用,发挥大数据的价值。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (12)
1.一种分布式处理订单大数据的方法,其特征在于,所述方法包括以下步骤:
步骤S1、订单数据清理;
步骤S2、待处理数据量统计;
步骤S3、对订单数据进行分组模块分发任务;
步骤S4、在分组模块的任务节点进行业务处理;
步骤S5、汇总任务节点,接收任务节点的结果。
2.根据权利要求1所述的一种分布式处理订单大数据的方法,其特征在于:所述步骤S1进一步具体为:收集下单并付款的用户订单数据,过滤用户下单未付款的订单数据,分析支付状态为已付款的订单数据。
3.根据权利要求1所述的一种分布式处理订单大数据的方法,其特征在于:所述步骤S2进一步具体包括以下步骤:
步骤S21、经过订单数据清理,读取待处理的数据量,执行sql语句,得到总数据量;
步骤S22、读取asc字符集正排序第一条已付款的订单ID,为第一条已经付款的订单ID;
步骤S23、读取desc数据表倒序第一条已付款的订单ID,为最后一条已经付款的订单ID。
4.根据权利要求1所述的一种分布式处理订单大数据的方法,其特征在于:所述步骤S3进一步具体为:得到总数据量、第一条已付款订单ID和最后一条已付款订单ID后,系统对这些订单数据进行分组,结合可分配任务的任务节点数量,进行任务分发。
5.根据权利要求1所述的一种分布式处理订单大数据的方法,其特征在于:所述步骤S4进一步具体为:每个任务节点收到分组模块执行区间的起始计算编号和终止计算编号,读取本节点需要负责的数据,循环执行,完成所有需处理的业务,将得到的结果向汇总节点上报。
6.根据权利要求1所述的一种分布式处理订单大数据的方法,其特征在于:所述步骤S5进一步具体为:汇总节点接收各任务节点统计的数据,然后根据步骤S4进行处理,将处理后的结果重新进行整合,得到需要的结果。
7.一种分布式处理订单大数据的系统,其特征在于:包括清理模块、统计模块、分发模块、处理模块和汇总模块,所述清理模块,即订单数据清理;所述统计模块,即待处理数据量统计;所述分发模块,即对订单数据进行分组模块分发任务;所述处理模块,即在分组模块的任务节点进行业务处理;所述汇总模块,即汇总任务节点,接收任务节点的结果。
8.根据权利要求7所述的一种分布式处理订单大数据的系统,其特征在于:所述清理模块进一步具体为:收集下单并付款的用户订单数据,过滤用户下单未付款的订单数据,分析支付状态为已付款的订单数据。
9.根据权利要求7所述的一种分布式处理订单大数据的系统,其特征在于:所述统计模块进一步包括:执行单元、第一读取单元和第二读取单元,所述执行单元,即经过订单数据清理,读取待处理的数据量,执行sql语句,得到总数据量;所述第一读取单元,即读取asc字符集正排序第一条已付款的订单ID,为第一条已经付款的订单ID;所述第二读取单元,即读取desc数据表倒序第一条已付款的订单ID,为最后一条已经付款的订单ID。
10.根据权利要求7所述的一种分布式处理订单大数据的系统,其特征在于:所述分发模块进一步具体为:得到总数据量、第一条已付款订单ID和最后一条已付款订单ID后,系统对这些订单数据进行分组,结合可分配任务的任务节点数量,进行任务分发。
11.根据权利要求7所述的一种分布式处理订单大数据的系统,其特征在于:所述处理模块进一步具体为:每个任务节点收到分组模块执行区间的起始计算编号和终止计算编号,读取本节点需要负责的数据,循环执行,完成所有需处理的业务,将得到的结果向汇总节点上报。
12.根据权利要求7所述的一种分布式处理订单大数据的系统,其特征在于:所述汇总模块进一步具体为:汇总节点接收各任务节点统计的数据,然后根据处理模块进行处理,将处理后的结果重新进行整合,得到需要的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110822992.6A CN113516536A (zh) | 2021-07-21 | 2021-07-21 | 一种分布式处理订单大数据的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110822992.6A CN113516536A (zh) | 2021-07-21 | 2021-07-21 | 一种分布式处理订单大数据的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113516536A true CN113516536A (zh) | 2021-10-19 |
Family
ID=78068565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110822992.6A Pending CN113516536A (zh) | 2021-07-21 | 2021-07-21 | 一种分布式处理订单大数据的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113516536A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069113A (zh) * | 2015-08-11 | 2015-11-18 | 北京京东尚科信息技术有限公司 | 一种数据流量实时可视化的方法及系统 |
CN105824868A (zh) * | 2015-12-24 | 2016-08-03 | 广东亿迅科技有限公司 | 一种分布式数据库数据处理方法和分布式数据库系统 |
CN106202280A (zh) * | 2016-06-29 | 2016-12-07 | 联想(北京)有限公司 | 一种信息处理方法及服务器 |
CN109032766A (zh) * | 2018-06-14 | 2018-12-18 | 阿里巴巴集团控股有限公司 | 一种事务处理方法、装置及电子设备 |
CN112181972A (zh) * | 2020-11-02 | 2021-01-05 | 北京通付盾人工智能技术有限公司 | 基于大数据的数据治理方法、装置和计算机设备 |
US11048766B1 (en) * | 2018-06-26 | 2021-06-29 | Facebook, Inc. | Audience-centric event analysis |
CN113139835A (zh) * | 2021-04-29 | 2021-07-20 | 北京深演智能科技股份有限公司 | 数据处理方法、装置、非易失性存储介质及处理器 |
-
2021
- 2021-07-21 CN CN202110822992.6A patent/CN113516536A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069113A (zh) * | 2015-08-11 | 2015-11-18 | 北京京东尚科信息技术有限公司 | 一种数据流量实时可视化的方法及系统 |
CN105824868A (zh) * | 2015-12-24 | 2016-08-03 | 广东亿迅科技有限公司 | 一种分布式数据库数据处理方法和分布式数据库系统 |
CN106202280A (zh) * | 2016-06-29 | 2016-12-07 | 联想(北京)有限公司 | 一种信息处理方法及服务器 |
CN109032766A (zh) * | 2018-06-14 | 2018-12-18 | 阿里巴巴集团控股有限公司 | 一种事务处理方法、装置及电子设备 |
US11048766B1 (en) * | 2018-06-26 | 2021-06-29 | Facebook, Inc. | Audience-centric event analysis |
CN112181972A (zh) * | 2020-11-02 | 2021-01-05 | 北京通付盾人工智能技术有限公司 | 基于大数据的数据治理方法、装置和计算机设备 |
CN113139835A (zh) * | 2021-04-29 | 2021-07-20 | 北京深演智能科技股份有限公司 | 数据处理方法、装置、非易失性存储介质及处理器 |
Non-Patent Citations (1)
Title |
---|
奥克拉•马尔: "《Oracle 8.1.6核心管理技术大全》", 北京希望电子出版社, pages: 149 - 157 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107800591B (zh) | 一种统一日志数据的分析方法 | |
CN105357054B (zh) | 网站流量分析方法、装置和电子设备 | |
CN101572629B (zh) | 一种ip数据的处理方法及装置 | |
CN101477542B (zh) | 一种抽样分析方法、系统和设备 | |
CN103838867A (zh) | 日志处理方法和装置 | |
CN108512720B (zh) | 一种网站流量的统计方法及装置 | |
CN103246735A (zh) | 一种异常数据处理方法及系统 | |
CN103051637A (zh) | 用户识别方法与装置 | |
CN111523072A (zh) | 页面访问数据统计方法、装置、电子设备及存储介质 | |
CN107832333B (zh) | 基于分布式处理和dpi数据构建用户网络数据指纹的方法和系统 | |
CN111367951A (zh) | 一种流数据处理的方法及装置 | |
CN103605714A (zh) | 网站异常数据的识别方法及装置 | |
CN113360554A (zh) | 一种数据抽取、转换和加载etl的方法和设备 | |
CN111897790A (zh) | 风控日志采集方法、装置、电子设备及存储介质 | |
CN110019271A (zh) | 数据一致性检测方法、装置、设备及计算机存储介质 | |
CN114881508A (zh) | 一种电网指标报表的数据处理方法、装置及设备 | |
CN116737482A (zh) | 一种芯片测试数据的实时收集方法、装置及电子设备 | |
CN106557483B (zh) | 一种数据处理、数据查询方法及设备 | |
CN114595129A (zh) | 一种可配置的多维度数据监控方法、装置及存储介质 | |
CN113516536A (zh) | 一种分布式处理订单大数据的方法及系统 | |
CN109145109A (zh) | 基于社交网络的用户群体消息传播异常分析方法及装置 | |
CN112152818A (zh) | 话单处理方法、装置、系统、存储介质和网络设备 | |
CN101499068A (zh) | 一种基于日志的数据库调用覆盖率统计和分析的方法 | |
CN114218173B (zh) | 传帐类交易文件的批处理系统、处理方法、介质和设备 | |
CN107797768A (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 |