CN104391932B - 处理业务数据的方法和系统 - Google Patents
处理业务数据的方法和系统 Download PDFInfo
- Publication number
- CN104391932B CN104391932B CN201410674310.1A CN201410674310A CN104391932B CN 104391932 B CN104391932 B CN 104391932B CN 201410674310 A CN201410674310 A CN 201410674310A CN 104391932 B CN104391932 B CN 104391932B
- Authority
- CN
- China
- Prior art keywords
- data
- business datum
- business
- service node
- processing module
- 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
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种处理业务数据的方法和系统,一方面能够高效、可靠地处理业务数据;第二方面可以使得数据库资源利用更加合理;第三方面使处理业务数据的系统具有良好的可扩展性。本发明的处理业务数据的方法包括:将多条业务数据保存到数据库中;数据处理模块按照配置信息,从所述数据库中获取对应于自身的多条业务数据,所述配置信息记录了数据处理模块所对应的业务数据状态以及业务数据条数;所述数据处理模块从获取的业务数据所处的状态起,按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理。
Description
技术领域
本发明涉及计算机技术领域,特别地涉及一种处理业务数据的方法和系统。
背景技术
在互联网基于流程的多业务节点系统设计中,业务的处理能力和响应时间往往是考验系统能力的关键所在,尤其是对于那些要求实时的且数据量大的系统。例如在电子商务订单生产流程,订单从用户下单到库房进行生产这整个过程中往往会有很多流程相互协作,以服务于订单能快速,准确的送达到用户手中。用户下订单后,订单会经过多个业务环节,例如判断恶意订单流程、订单拆分流程、订单转移流程、订单下传、订单预分解、特殊订单处理等,在经过这些业务环节后,订单才能达到库房并进行生产。随着电子商务的规模不断扩大,订单量不断增加,竞争越来越激烈,对于系统的海量数据的时效性要求也越来越高,随之而来的对系统的响应时间,处理能力的提出了更高的要求,给系统的设计带来更大挑战。
在典型的电子商务订单流程中,从用户下单到终端库房订单生产的过程中,这其中订单会流经多个流程进行处理,比如下单后会经过判断恶意订单环节,订单拆分环节,订单转移环节等等流程,而且流程之间有逻辑上的先后顺序,直到最后到达终端库房生产。一般地,一条业务数据要经过多个业务节点的依次处理。图1是根据现有技术中的一种订单数据处理流程的示意图。如图1所示,原始订单数据依次经过业务节点1至4的处理,成为最终订单数据。不同的业务节点代表不同的业务处理流程,这些流程可能是一些内存操作,也可能去调用一些外部提供的服务。
图2是根据现有技术中的流程调度方式的示意图。如图2所示,在现有技术中,来自数据源系统的订单数据首先到达指定的订单数据库,然后为每一个业务节点系统设定业务状态值。相应地,每条订单数据也具有状态,业务数据的状态是表示该业务数据接下来应当进行哪个业务节点的处理。例如,来自数据源系统的订单数据当前需要进行判断恶意订单环节,则可以设置该数据状态为1,即状态1对应判断恶意订单环节;在完成该环节之后需要进行订单拆分,则状态2对应订单拆分环节。相应地,为每一个业务节点系统设定业务状态值时,要与上述的数据状态对应,即判断恶意订单环节的系统的业务状态值为1,订单拆分系统的业务状态值为2……等等。然后每个业务节点系统会独立地定时去数据库中获取符合自己业务状态值的数据进行处理,处理完成后会将数据库中该状态值更新为另一个业务节点执行的状态值,按上例,即判断恶意订单环节的系统获取数据状态为1的数据,处理之后将该数据状态修改为2;订单拆分系统获取数据状态为2的数据,处理之后将该数据状态修改为3。同一个订单数据经历过每个业务节点系统处理后,那么这个订单才会满足下游的生产系统的生产,例如按图1的流程,在状态为4的数据被处理之后,订单数据满足下游的生产系统的生产。
发明人在实现本发明的过程中发现,现有技术中对于上述多业务节点流程处理的方式,在数据量比较小的情况下一般能够正常处理,但是当数据量比较大例如当日订单量达到百万甚至千万时候,或者业务节点比较多的时候,会导致数据库压力增大,读写缓慢,使业务节点系统处理数据相应变缓,数据库本身也有可能发生故障;如果某个业务节点处理发生延迟或者处理失败,则整个流程被延缓或者一直卡在这个业务节点,而这种情况对于其他的业务节点系统而言是完全未知的。以处理订单数据为例,这样的延迟或中断将影响订单的生产,导致送货延迟,最终影响了用户体验。
发明内容
有鉴于此,本发明提供一种处理业务数据的方法和系统,一方面能够高效、可靠地处理业务数据;第二方面可以使得数据库资源利用更加合理;第三方面使处理业务数据的系统具有良好的可扩展性。
为实现上述目的,根据本发明的一个方面,提供了一种处理业务数据的方法。
本发明的处理业务数据的方法包括:将多条业务数据保存到数据库中;数据处理模块按照配置信息,从所述数据库中获取对应于自身的多条业务数据,所述配置信息记录了数据处理模块所对应的业务数据状态以及业务数据条数;所述数据处理模块从获取的业务数据所处的状态起,按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理。
可选地,所述多条业务数据是电子商务系统中的订单数据。
可选地,还包括:所述数据处理模将所述业务节点系统处理之后得到的业务数据保存到所述数据库中。
可选地,在按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理的步骤中,所述数据处理模块在所述业务数据未被成功处理的情况下,输出提示信息。
根据本发明的另一方面,提供了一种处理业务数据的系统。
本发明的处理业务数据的系统包括一个或多个接收模块,以及一个或多个数据处理模块,其中:所述接收模块,用于接收多条业务数据然后保存到数据库中;所述数据处理模块,用于按照配置信息,从所述数据库中获取对应于自身的多条业务数据,所述配置信息记录了数据处理模块所对应的业务数据状态以及业务数据条数;以及从获取的业务数据所处的状态起,按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理。
可选地,所述多条业务数据是电子商务系统中的订单数据。
可选地,所述数据处理模块还用于将所述业务节点系统处理之后得到的业务数据保存到所述数据库中。
可选地,所述数据处理模块还用于在所述业务数据未被成功处理的情况下,输出提示信息。
根据本发明的技术方案,由数据处理模块从数据库中获取待处理的业务数据,然后调用相应的业务节点系统对业务数据进行处理,避免了数据库被频繁读写带来的读写缓慢甚至故障,以及对数据库资源的不合理使用,从而能够高效可靠地处理业务数据,在数据处理发生异常时能够输出提示使得异常可以被及时发现和处理。另外本实施例中的处理业务数据的系统中,数据处理模块可以灵活扩充,使系统有良好的可扩展性。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的示意图;
图2是根据本发明实施例的示意图。
图3是根据本发明实施例的处理业务数据的方法的基本步骤的示意图;
图4是根据本发明实施例的处理业务数据的系统的示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本发明实施例中,由数据处理模块从数据库中获取数据,然后调用相应的业务节点系统对获取的数据进行处理,处理完成之后按照业务节点的执行顺序再调用下一个业务节点系统,直至所有节点处理完毕,再交由下游系统。以下结合图3作详细说明。图3是根据本发明实施例的处理业务数据的方法的基本步骤的示意图。
步骤S31:将多条业务数据保存到数据库中。本步骤可以是由一个单独的模块来完成,设置在数据处理模块所在的计算机中或者单独的一台计算机中。
步骤S32:数据处理模块获取业务数据。本实施例中,采用多个数据处理模块,本步骤及后续步骤是对其中一个数据处理模块的动作的说明。在本实施例的方案中,预先对数据处理模块进行配置,配置信息包括各数据处理模块各自对应的业务数据状态,例如数据处理模块A对应业务数据状态1、数据处理模块F对应业务数据状态2……等。配置信息还包括各数据处理模块应该从数据库中获取多少条数据进行处理,例如数据处理模块A获取3万条,数据处理模块B获取5万条等。
步骤S33:数据处理模块调用业务节点系统对获取的业务数据进行处理。对业务数据作具体处理的是被调用的业务节点系统,处理之后将数据返回给数据处理模块。数据处理模块是按照业务节点的执行顺序来调用各个业务节点系统,例如业务节点的执行顺序依次是:判断恶意订单环节、订单拆分环节、订单转移环节等,则依次调用这些环节的业务节点系统。在所有的业务节点系统被调用完成之后,业务数据也处理完成,可交由下游系统。
每当一个被调用的业务节点系统返回处理之后的数据,一个优选方式是数据处理模块将该数据保存到数据库,这样,在下一个业务节点系统未能处理数据时,仍保留有该被调用的业务节点系统的处理成果。另外,如果数据处理模块发现调用的业务节点系统未能成功处理数据时,可以输出提示信息,以通知人员。这里的未能成功处理的判断方式可以预先设定,例如被调用的业务节点系统在从被调用起指定时长之后还未向数据处理模块返回数据,即认为未成功处理;又如被调用的业务节点系统返回一些表示处理异常的信息,则认为未成功处理,等等。
如果系统发生异常,在恢复之后可从步骤S32重新开始上述流程,此时数据库中存在各种状态的数据,例如有些已经处理到订单拆分环节、有些已经处理到订单转移环节等。这样在步骤S32中,数据处理模块根据配置文件,确定自身对应的业务数据状态,再获取该状态的数据进图4是根据本发明实施例的处理业务数据的系统的示意图。行处理。
图4是根据本发明实施例的处理业务数据的系统的示意图。该处理业务数据的系统首先将数据保存到数据库中,然后进行数据调度,即调用各个业务节点系统对数据进行处理。如图4所示,本发明实施例的处理业务数据的系统可以是多个,并且分布式部署,每个系统的结构类似,包含至少一个接收模块和一个或多个数据处理模块,例如图中的处理业务数据的系统40主要包括一个接收模块41,以及多个数据处理模块42、43、……、4N。图中还示出了可供各数据处理模块调用的业务节点系统一、二……等。接收模块41用于接收多条业务数据然后保存到数据库中。数据处理模块用于按照配置信息,从数据库中获取对应于自身的一条或多条业务数据。数据处理模块还可用于将业务节点系统处理之后得到的业务数据保存到数据库中,以及在业务数据未被成功处理的情况下,输出提示信息。
根据本发明实施例的技术方案,由数据处理模块从数据库中获取待处理的业务数据,然后调用相应的业务节点系统对业务数据进行处理,避免了数据库被频繁读写带来的读写缓慢甚至故障,以及对数据库资源的不合理使用,从而能够高效可靠地处理业务数据,在数据处理发生异常时能够输出提示使得异常可以被及时发现和处理。另外本实施例中的处理业务数据的系统中,数据处理模块可以灵活扩充,使系统有良好的可扩展性。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (8)
1.一种处理业务数据的方法,其特征在于,包括:
将多条业务数据保存到数据库中;
数据处理模块按照配置信息,从所述数据库中获取对应于自身的多条业务数据,所述配置信息记录了数据处理模块所对应的业务数据状态以及业务数据条数;
所述数据处理模块从获取的业务数据所处的状态起,按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理。
2.根据权利要求1所述的方法,其特征在于,所述多条业务数据是电子商务系统中的订单数据。
3.根据权利要求1所述的方法,其特征在于,还包括:所述数据处理模将所述业务节点系统处理之后得到的业务数据保存到所述数据库中。
4.根据权利要求1,2或3所述的方法,其特征在于,在按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理的步骤中,所述数据处理模块在所述业务数据未被成功处理的情况下,输出提示信息。
5.一种处理业务数据的系统,其特征在于,包括一个或多个接收模块,以及一个或多个数据处理模块,其中:
所述接收模块,用于接收多条业务数据然后保存到数据库中;
所述数据处理模块,用于按照配置信息,从所述数据库中获取对应于自身的多条业务数据,所述配置信息记录了数据处理模块所对应的业务数据状态以及业务数据条数;以及从获取的业务数据所处的状态起,按照业务节点的执行顺序依次调用各个业务节点系统对获取的业务数据进行处理。
6.根据权利要求5所述的系统,其特征在于,所述多条业务数据是电子商务系统中的订单数据。
7.根据权利要求5所述的系统,其特征在于,所述数据处理模块还用于将所述业务节点系统处理之后得到的业务数据保存到所述数据库中。
8.根据权利要求5,6或7所述的系统,其特征在于,所述数据处理模块还用于在所述业务数据未被成功处理的情况下,输出提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410674310.1A CN104391932B (zh) | 2014-11-21 | 2014-11-21 | 处理业务数据的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410674310.1A CN104391932B (zh) | 2014-11-21 | 2014-11-21 | 处理业务数据的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104391932A CN104391932A (zh) | 2015-03-04 |
CN104391932B true CN104391932B (zh) | 2018-03-02 |
Family
ID=52609836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410674310.1A Active CN104391932B (zh) | 2014-11-21 | 2014-11-21 | 处理业务数据的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104391932B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106169123A (zh) * | 2016-07-08 | 2016-11-30 | 上海瀚银信息技术有限公司 | 一种业务流程调度系统、方法及电子商务系统 |
CN111932235B (zh) * | 2019-05-13 | 2024-04-19 | 中国移动通信集团湖北有限公司 | 业务处理的方法、数据访问器、状态管理器及计算设备 |
CN111092753A (zh) * | 2019-11-27 | 2020-05-01 | 中盈优创资讯科技有限公司 | 问题定位方法及装置 |
CN111611097B (zh) * | 2020-05-13 | 2023-09-05 | 中国移动通信集团江苏有限公司 | 故障检测方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369330A (zh) * | 2008-10-08 | 2009-02-18 | 金蝶软件(中国)有限公司 | 单据处理方法、装置和系统 |
CN102467701A (zh) * | 2010-11-12 | 2012-05-23 | 甲骨文国际公司 | 分布式订单编排系统中的基于事件的编排 |
CN102542414A (zh) * | 2011-12-28 | 2012-07-04 | 焦点科技股份有限公司 | 一种基于规则引擎的业务流程与业务数据处理的松耦合方法及系统 |
CN102999554A (zh) * | 2012-10-15 | 2013-03-27 | 北京京东世纪贸易有限公司 | 业务数据处理方法和装置 |
CN103346974A (zh) * | 2013-06-03 | 2013-10-09 | 华为技术有限公司 | 一种业务流程的控制方法及网络设备 |
-
2014
- 2014-11-21 CN CN201410674310.1A patent/CN104391932B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369330A (zh) * | 2008-10-08 | 2009-02-18 | 金蝶软件(中国)有限公司 | 单据处理方法、装置和系统 |
CN102467701A (zh) * | 2010-11-12 | 2012-05-23 | 甲骨文国际公司 | 分布式订单编排系统中的基于事件的编排 |
CN102542414A (zh) * | 2011-12-28 | 2012-07-04 | 焦点科技股份有限公司 | 一种基于规则引擎的业务流程与业务数据处理的松耦合方法及系统 |
CN102999554A (zh) * | 2012-10-15 | 2013-03-27 | 北京京东世纪贸易有限公司 | 业务数据处理方法和装置 |
CN103346974A (zh) * | 2013-06-03 | 2013-10-09 | 华为技术有限公司 | 一种业务流程的控制方法及网络设备 |
Non-Patent Citations (2)
Title |
---|
"某汽车用品公司仓库物资管理系统的分析与设计";陆侃;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130215(第2期);全文 * |
"流程引擎在电信CRM系统中的应用";周永才 等;《电信快报》;20081231(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104391932A (zh) | 2015-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104391932B (zh) | 处理业务数据的方法和系统 | |
CN103701934B (zh) | 一种资源优化调度方法及虚拟机宿主机优化选择方法 | |
KR20160015505A (ko) | 제조 공정에 있어서 설비로부터의 데이터를 처리하는 방법 및 시스템 | |
CN108089915A (zh) | 基于消息队列的业务控件化处理的方法及系统 | |
CN110597695A (zh) | 报警方法、装置、计算机设备和可读存储介质 | |
CN113326083A (zh) | 状态机处理、状态处理方法、装置、电子设备及存储介质 | |
CN103440545A (zh) | 产品批次等级管理系统和方法 | |
CN107733681B (zh) | 一种调度方案配置方法和装置 | |
CN112395298B (zh) | 一种基于数据分层思想的数据一致性管理系统 | |
JP2014056510A (ja) | 制御装置、制御システム、制御方法、プログラムおよびその記録媒体 | |
CN104579801A (zh) | 一种软件定义网络控制器集群的调度方法 | |
CN107463390A (zh) | 一种软件升级方法及升级服务器 | |
CN104951888A (zh) | 处理拣货信息的方法和系统 | |
CN103152428A (zh) | 云平台上节点间进行服务通信的方法 | |
CN110502383A (zh) | 终端设备的测试方法及装置 | |
CN110770704B (zh) | 分布配置装置、分布配置系统以及分布配置方法 | |
CN103914304A (zh) | 一种基于sap平台的不同结构类型参数转换方法 | |
CN104469865A (zh) | 一种目标小区配置方法及装置 | |
CN109242357B (zh) | 一种mes系统的工序编辑方法 | |
CN103095474B (zh) | 一种tup消息配对的计算机实现方法 | |
CN105306652A (zh) | 一种基于智能手机加速度传感器的拨号方法及系统 | |
WO2020013909A1 (en) | Block-based prediction for manufacturing environments | |
KR101541895B1 (ko) | 통화와 연동하는 고객관리 시스템 및 그 방법 | |
US10353846B2 (en) | Communication system with train bus architecture | |
CN111061795B (zh) | 一种数据处理方法、装置、智能终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |