CN106406833A - 一种提供数据的方法和装置 - Google Patents
一种提供数据的方法和装置 Download PDFInfo
- Publication number
- CN106406833A CN106406833A CN201510459887.5A CN201510459887A CN106406833A CN 106406833 A CN106406833 A CN 106406833A CN 201510459887 A CN201510459887 A CN 201510459887A CN 106406833 A CN106406833 A CN 106406833A
- Authority
- CN
- China
- Prior art keywords
- data
- node
- service
- tree
- business
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Abstract
本发明提供一种提供数据的方法和装置,能够根据业务需求提前对数据进行前期融合处理,简化软件系统实时操作工作量,降低失败的几率和用户等待时间,从而提高了软件系统的反馈效率。方法包括:根据接收到的业务请求确定多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树;获取所述业务请求方的当前执行节点的节点标识,如果该节点标识是否与所述数据树的当前根节点的节点标识一致,则将数据树当前根节点的数据提供给当前执行节点,否则根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种提供数据的方法和装置。
背景技术
无论进行哪个行业的软件开发,软件系统的响应速度都是软件是否优秀的一个重要标准。用户在操作的时候总是希望第一时间就得到软件的反馈,而不愿意看到进度条一点点的变满,更不愿意看到毫无期限的处理中或软件直接处于假死状态。
现有技术中,软件系统对于数据的处理主要使用就近原则,即在使用对应的数据的时候才对其进行各种必要的验证和处理。比如仓储系统中,一定是在验收货的当时才会取得货物的信息,再一一对货物数据的各种约束验证是否匹配,才能进行下一步的操作;再比如公司ERP的审批流程,由于各种不同的审批所需要的审批节点是不一样的,所以数据的结构是:申请信息记录在一个地方,已经进行的审批流水记录在一个地方,因而,在进行审批的时候会分别从这两个地方抓取信息,最后将抓取到的完整的信息展示在审批人的审批界面上。
现有的模式主要存在以下几个缺点:
1)失败几率高,同时要调用很多信息抓紧的动作,所以不管哪个动作失败都会导致数据无法完整展示或者验证。
2)用户等待时间较长,因为要实时调取所有信息,然后在数据上体现出来,所以需要处理的动作比较多。
3)不能预知数据的走向,因为数据是实时判断的,所以在用户未进行操作之前数据都还是未知状态,无法根据数据的走向对已知数据进行提前梳理和对问题数据的修复。
发明内容
有鉴于此,本发明提供一种提供数据的方法和装置,能够根据业务需求提前对数据进行前期融合处理,简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。
为实现上述目的,根据本发明的一个方面,提供了一种提供数据的方法。
本发明的提供数据的方法包括:保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。
可选地,查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树的步骤之后包括:以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
可选地,所述将该标识所对应的数据树的当前根节点的数据提供给所述业务请求方的步骤之后包括:检查数据树的下一业务节点的数据的完整性。
根据本发明的另一方面,提供了一种提供数据的装置。
本发明的提供数据的装置包括:保存模块,用于保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;构建模块,用于根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;数据提供模块,用于接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。
可选地,还包括重构模块,用于以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
可选地,还包括检查模块,用于检查数据树的下一业务节点的数据的完整性。
根据本发明的技术方案,由于根据业务需求提前对数据进行前期融合处理,因而在软件系统运行的过程中,能够简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的一种提供数据的装置的示意图;
图2是根据本发明实施例的一种提供数据的方法的示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的一种提供数据的装置的示意图。如图1所示,本发明实施例的提供数据的装置10主要包括保存模块11、构建模块12、以及数据提供模块13。保存模块11用于保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;构建模块12用于根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;数据提供模块13用于接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。
本发明实施例的提供数据的装置10还可包括重构模块(图中未示出),用于以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
本发明实施例的提供数据的装置10还可包括还包括检查模块(图中未示出),用于检查数据树的下一业务节点的数据的完整性。
图2是根据本发明实施例的一种提供数据的方法的示意图。如图2所示,该方法的执行主体为图1中的提供数据的装置,主要包括如下的步骤S20至S31。
步骤S20:保存各业务节点的业务规则以及业务节点之间的关联规则;
步骤S21:接收业务请求方通过业务系统发送的业务请求,并根据接收到的业务请求确定该业务请求所关联的多个业务节点;
步骤S22:根据所述多个业务节点的业务规则获取所述多个业务节点的数据;
步骤S23:步骤S22中获取的数据按照所述多个业务节点之间的关联规则构建数据树;
步骤S24:将步骤S23中构建的数据树的标识返回给业务请求方;
步骤S25:接收到业务请求方通过业务系统发送的key值,并根据key值确定对应的数据树;
步骤S26:获取业务请求方当前执行的业务节点的节点标识;
步骤S27:判断当前执行的业务节点的节点标识与数据树当前根节点的节点标识是否一致,如果是,则执行步骤S28;否则,执行步骤S29;
步骤S28:将数据树当前根节点的数据提供给当前执行的业务节点,并删除当前根节点的数据,返回步骤S25;
步骤S29:遍历所述数据树,重新定位与当前执行的业务节点标识相同的节点,若定位成功,则执行步骤S30;否则,执行步骤S31;
步骤S30:将定位到的节点的数据提供给当前执行的业务节点,返回步骤S25;
步骤S31:查询数据库获取数据,并以该业务节点为起点重新构建数据树,返回步骤S25。
下面以仓储系统为例,以仓储系统为例,仓储系统启动以后,业务请求方通过业务系统发出商品入库请求,当提供数据的装置10接收到入库请求时,根据商品入库请求确定与入库请求关联的业务节点包括:入库节点、验收节点、以及上架节点,然后根据每个节点的业务规则从数据库或信息接口中获取每个业务节点的数据,即分别根据入库节点、验收节点、以及上架节点的节点规则获取这三个业务节点的已知数据,并将这些数据按照这三个业务节点的执行顺序排列从而构建得到对应于商品入库请求的数据树,并生成该数据树的标识,并将生成的数据树的标识(即唯一对应于该数据树的key)返回给业务请求方。
仓储系统包括多个业务节点,当仓储系统按顺序执行业务节点时,即当仓储系统执行入库节点时,将步骤S21中返回的key值发送给提供数据的装置,提供数据的装置根据key值确定对应的数据树,同时提供数据的装置获取入库节点的节点标识,并判断入库节点的节点标识是否与数据树根节点的节点标识一致,如果标识一致,则将数据树的当前根节点的数据提供给入库节点,然后删除掉当前根节点的数据;然后依次执行验收节点和上架节点;当仓储系统执行到验收节点时,业务请求方通过业务系统将步骤S21返回的key值发送给提供数据的装置,然后提供数据的装置获取验收节点的节点标识,如果验收节点的节点标识和数据树根节点的节点标识不同,则提供数据的装置根据获取的节点标识重新定位数据树中与验收节点的节点标识相同的节点,如果定位成功,则将与验收节点的节点标识相同的节点的数据提供给业务系统当前执行的节点(即,验收节点),如果遍历数据树都没有定位到与验收节点标识相同的节点,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树,然后以该业务节点为起点确定该业务请求所关联的多个业务节点,再根据所述多个业务节点的业务规则获取所述多个业务节点的数据,最后将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
上述实施例的技术方案中,当提供数据的装置10将数据树当前根节点的数据提供给当前执行的节点后,立刻检查数据树的下一业务节点的数据是否完整,如果检查出数据不完整,再从数据库中或者通过信息接口获取所缺少的数据,从而不断的完善下一业务节点的数据,并在一定程度上提高了系统的响应速度。
根据本发明实施例的技术方案,由于根据业务需求提前对数据进行前期融合处理,因而在软件系统运行的过程中,能够简化软件系统实时操作工作量,降低失败的几率和用户的等待时间,从而提高了软件系统的反馈效率;同时对数据的提前处理可以及时发现问题,并使得数据处理的主动推送成为可能。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (6)
1.一种提供数据的方法,其特征在于,包括:
保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;
根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;
接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。
2.根据权利要求1所述的方法,其特征在于,查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树的步骤之后包括:
以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
3.根据权利要求1或2所述的方法,其特征在于,所述将该标识所对应的数据树的当前根节点的数据提供给所述业务请求方的步骤之后包括:检查数据树的下一业务节点的数据的完整性。
4.一种提供数据的装置,其特征在于,包括:
保存模块,用于保存各业务节点的业务规则以及业务节点之间的关联规则;所述关联规则用于描述业务节点的执行顺序;
构建模块,用于根据接收到的业务请求确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则构建数据树,以及将该数据树的标识返回给业务请求方;
数据提供模块,用于接收所述数据树的标识,获取所述业务请求方的当前执行节点的节点标识,并判断该节点标识是否与所述数据树的当前根节点的节点标识一致,如果是,则将所述数据树当前根节点的数据提供给业务请求方的当前执行节点,然后删除当前根节点的数据;否则,遍历所述数据树,根据节点标识重新定位该当前执行的节点;若定位成功,则将定位到的标识所对应的数据提供给该当前执行的节点;若定位失败,则查询数据库和信息接口,然后输出该业务节点的数据并删除所述数据树。
5.根据权利要求4所述的装置,其特征在于,还包括重构模块,用于以该业务节点为起点确定该业务请求所关联的多个业务节点,然后根据所述多个业务节点的业务规则获取所述多个业务节点的数据,再将这些数据按照所述多个业务节点之间的关联规则重新构建数据树,且该重新构建数据树的标识与所接收的数据树的标识一致。
6.根据权利要求4或5所述的装置,其特征在于,还包括检查模块,用于检查数据树的下一业务节点的数据的完整性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510459887.5A CN106406833B (zh) | 2015-07-30 | 2015-07-30 | 一种提供数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510459887.5A CN106406833B (zh) | 2015-07-30 | 2015-07-30 | 一种提供数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106406833A true CN106406833A (zh) | 2017-02-15 |
CN106406833B CN106406833B (zh) | 2020-09-01 |
Family
ID=58008865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510459887.5A Active CN106406833B (zh) | 2015-07-30 | 2015-07-30 | 一种提供数据的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106406833B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789362A (zh) * | 2017-02-20 | 2017-05-31 | 京信通信技术(广州)有限公司 | 一种设备管理方法及网管系统 |
CN107545026A (zh) * | 2017-06-28 | 2018-01-05 | 新华三技术有限公司 | 一种接口名字解析树功能的实现方法和装置 |
CN112437063A (zh) * | 2020-11-11 | 2021-03-02 | 张银杏 | 一种数据融合与取用方法、平台以及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799753A (zh) * | 2009-12-17 | 2010-08-11 | 中国电力科学研究院 | 一种实现树形结构的方法及装置 |
US20100332546A1 (en) * | 2007-11-26 | 2010-12-30 | International Business Machines Corporation | Structure Based Storage, Query, Update and Transfer of Tree-Based Documents |
US20130179393A1 (en) * | 2012-01-06 | 2013-07-11 | National Central University | Method for analyzing data utilizing weighted suffix tree |
CN103544074A (zh) * | 2012-07-09 | 2014-01-29 | 阿里巴巴集团控股有限公司 | 一种业务的校验方法及装置 |
CN103617199A (zh) * | 2013-11-13 | 2014-03-05 | 北京京东尚科信息技术有限公司 | 一种操作数据的方法和系统 |
CN104156242A (zh) * | 2014-08-05 | 2014-11-19 | 吉林大学 | 一种缓存数据预加载、加载方法及装置 |
CN104268241A (zh) * | 2014-09-29 | 2015-01-07 | 北京合力思腾科技股份有限公司 | 一种配置数据库中属性显示方法 |
CN104598570A (zh) * | 2015-01-12 | 2015-05-06 | 百度在线网络技术(北京)有限公司 | 资源的抓取方法及装置 |
-
2015
- 2015-07-30 CN CN201510459887.5A patent/CN106406833B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100332546A1 (en) * | 2007-11-26 | 2010-12-30 | International Business Machines Corporation | Structure Based Storage, Query, Update and Transfer of Tree-Based Documents |
CN101799753A (zh) * | 2009-12-17 | 2010-08-11 | 中国电力科学研究院 | 一种实现树形结构的方法及装置 |
US20130179393A1 (en) * | 2012-01-06 | 2013-07-11 | National Central University | Method for analyzing data utilizing weighted suffix tree |
CN103544074A (zh) * | 2012-07-09 | 2014-01-29 | 阿里巴巴集团控股有限公司 | 一种业务的校验方法及装置 |
CN103617199A (zh) * | 2013-11-13 | 2014-03-05 | 北京京东尚科信息技术有限公司 | 一种操作数据的方法和系统 |
CN104156242A (zh) * | 2014-08-05 | 2014-11-19 | 吉林大学 | 一种缓存数据预加载、加载方法及装置 |
CN104268241A (zh) * | 2014-09-29 | 2015-01-07 | 北京合力思腾科技股份有限公司 | 一种配置数据库中属性显示方法 |
CN104598570A (zh) * | 2015-01-12 | 2015-05-06 | 百度在线网络技术(北京)有限公司 | 资源的抓取方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789362A (zh) * | 2017-02-20 | 2017-05-31 | 京信通信技术(广州)有限公司 | 一种设备管理方法及网管系统 |
CN107545026A (zh) * | 2017-06-28 | 2018-01-05 | 新华三技术有限公司 | 一种接口名字解析树功能的实现方法和装置 |
CN107545026B (zh) * | 2017-06-28 | 2023-04-28 | 新华三技术有限公司 | 一种接口名字解析树功能的实现方法和装置 |
CN112437063A (zh) * | 2020-11-11 | 2021-03-02 | 张银杏 | 一种数据融合与取用方法、平台以及系统 |
CN112437063B (zh) * | 2020-11-11 | 2022-08-23 | 张银杏 | 一种数据融合与取用方法、平台以及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106406833B (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106294492A (zh) | 数据清洗方法及清洗引擎 | |
CN103914564B (zh) | 基于ArcGIS的城市管线更新入库的方法及系统 | |
CN107818431A (zh) | 一种提供订单轨迹数据的方法和系统 | |
CN106406833A (zh) | 一种提供数据的方法和装置 | |
CN106503132A (zh) | 一种分布式事务管理方法及系统 | |
CN110188103A (zh) | 数据对账方法、装置、设备和存储介质 | |
CN109542980A (zh) | 一种区块链的数据处理方法、装置、设备及介质 | |
CN106126730A (zh) | 一种批量生成告警信息的方法及装置 | |
CN106095678A (zh) | 用于Windows平台下数据库业务操作的自动化结果检查方法 | |
CN106127431A (zh) | 产品全供应链管理工作方法、平台系统及一体化设备 | |
CN109495165A (zh) | 一种基于工业互联网平台的otdr测试方法 | |
CN106126634B (zh) | 一种基于直播行业的主数据去重处理方法及系统 | |
CN105930226A (zh) | 一种数据处理方法及装置 | |
CN106033438A (zh) | 舆情数据存储方法和服务器 | |
CN103578064A (zh) | 一种医院设备科科室管理系统 | |
CN104503982B (zh) | 一种cmdb配置项调和的方法 | |
CN103838871B (zh) | 一种核电站安全级dcs s-vdu过程文件的校验方法 | |
CN109657167A (zh) | 数据采集方法、装置、服务器及存储介质 | |
CN107643894A (zh) | 代码开发管理方法和系统 | |
CN107818009A (zh) | 一种基于分布式事务的代理处理的方法 | |
CN109815222A (zh) | 一种基于贝叶斯算法的住户用电数据清洗方法 | |
CN108959309B (zh) | 数据分析的方法和装置 | |
CN109558223A (zh) | 一种多进程提升工作流部署方法及系统 | |
CN114567485A (zh) | 一种数据处理方法、装置、设备和存储介质 | |
CN114693116A (zh) | 代码评审有效性的检测方法及装置、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |