一种数据下发的方法与装置与流程

文档序号:11133930阅读:819来源:国知局
一种数据下发的方法与装置与制造工艺

本发明涉及计算机技术领域,特别地涉及一种数据下发的方法与装置。



背景技术:

在计算机技术领域中,互联网数据是很有价值的信息,数据中心也成为一种较为重要的应用系统,在搭建数据中心应用系统时,需要考虑到数据中心的数据如何下发给下游系统,因为下游系统需要数据中心的数据作为初始化数据。因此,数据下发成为数据中心的一个很重要的功能。

现有技术的做法为:当下游系统需要数据中心的数据时,一般是下游系统调用数据中心的接口,来查询需要的初始化数据,流程如图1所示。下游系统在应用部署时,需要初始化数据,例如仓库系统中的商品信息、在库序列号等数据,故下游系统需要开发相应的数据拉取功能,即从数据中心的接口查询数据,之后插入到下游系统本地数据库,此过程是由线程执行的一个循环过程,需要分页查询数据,并且需要记录查询数据的临时值,以便下次查询数据。基本上每个下游系统都需要定制开发数据拉取功能。

针对现有技术存在以下缺点:工作量较大,各个下游系统需要开发出复杂的数据拉取功能来完成数据的初始化,这种方式极大的浪费了人力成本和时间成本。同时,由于下游系统需要获取数据量较大,一般一次请求的数据都在几十万的记录数,所以当下游系统达到一定规模时,接口的调用量也会快速增加,数据中心的下发压力也会随之增加,服务的性能和稳定性都很难得到保证,影响了系统的整体的使 用效果。



技术实现要素:

有鉴于此,本发明提供一种数据下发的方法,通过将下游系统数据拉取变为数据中心数据下发的方式,采用数据下发任务来规范数据下发的执行,这样下游系统的数据初始化只需要向数据中心提出下发任务,之后数据中心会异步执行数据下发,保证数据中心的稳定性,同时,由于下发的数据量较大,本发明采用文件系统作为中间数据存储系统,数据中心给下游系统传递的为数据文件存储标识,下游系统可以通过存储标识到文件存储系统中获取数据文件,解析后存储到下游系统的本地数据库中。本发明还公开了一种数据下发的装置。

为实现上述目的,根据本发明的一个方面,提供了一种数据下发的方法,包括:查询数据中心系统待下发的任务记录,抽取任务数据并将所述任务数据插入临时数据表;对所述临时数据表中的所述任务数据进行分割,生成多个数据文件;将所述多个数据文件上传到文件存储服务系统,获取多个数据文件存储路径并将所述多个数据文件存储路径插入数据文件存储路径列表;以及将所述数据文件存储路径列表发送给下游系统。

可选地,还包括:所述数据中心系统接收所述下游系统的任务提交,并且将接收的下发任务插入到所述数据中心系统的下发任务记录表中。

可选地,还包括:下载所述多个数据文件并解析所述多个数据文件的内容;以及将解析后的所述多个数据文件的内容插入到所述下游系统的本地数据库中。

可选地,还包括:手动输入所述数据中心系统待下发的任务记录的任务编号;以及查询与所述任务编号对应的所述数据文件存储路径, 并将所述数据文件存储路径发送给所述下游系统。

为实现上述目的,根据本发明的另一个方面,提供了一种数据下发的装置,包括:下发任务模块,用于查询数据中心系统待下发的任务记录,抽取任务数据并将所述任务数据插入临时数据表;数据文件生成模块,用于对所述临时数据表中的所述任务数据进行分割,生成多个数据文件;存储路径获取模块,用于将所述多个数据文件上传到文件存储服务系统,获取多个数据文件存储路径并将所述多个数据文件存储路径插入数据文件存储路径列表;以及发送模块,用于将所述数据文件存储路径列表发送给下游系统。

可选地,还包括:任务接收模块,用于所述数据中心系统接收所述下游系统的任务提交,并且将接收的下发任务插入到所述数据中心系统的下发任务记录表中。

可选地,还包括:数据文件处理模块,用于下载所述多个数据文件并解析所述多个数据文件的内容;以及数据库插入模块,用于将解析后的所述多个数据文件的内容插入到所述下游系统的本地数据库中。

可选地,还包括:任务编号输入模块,用于手动输入所述数据中心系统待下发的任务记录的任务编号;以及任务编号查询模块,用于查询与所述任务编号对应的所述数据文件存储路径,并将所述数据文件存储路径发送给所述下游系统。

根据本发明的技术方案,本发明提出了一种数据下发的方法,通过将下游系统数据拉取变为数据中心数据下发的方式,采用数据下发任务来规范数据下发的执行,这样下游系统的数据初始化只需要向数据中心提出下发任务,之后数据中心会异步执行数据下发,保证数据中心的稳定性,同时,由于下发的数据量较大,本发明采用文件系统 作为中间数据存储系统,数据中心给下游系统传递的为数据文件存储标识,下游系统可以通过存储标识到文件存储系统中获取数据文件,解析后存储到下游系统的本地数据库中。本发明还公开了一种数据下发的装置。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是现有技术中数据获取的流程图;

图2是根据本发明实施例的一种数据下发的方法的步骤流程图;

图3是根据本发明实施例的一种数据下发的方法中的数据抽取调度流程图;

图4是根据本发明实施例的一种数据下发的方法中下发任务接收流程图;

图5是根据本发明实施例的一种数据下发的方法中的数据文件生成调度流程图;

图6是根据本发明实施例的一种数据下发的方法中的文件路径下发流程图;

图7是根据本发明实施例的另一种数据下发的方法中的文件路径下发流程图;

图8是根据本发明实施例的一种数据下发的方法中的文件路径手动下发流程图;

图9是本发明的具体方案示例图;以及

图10是根据本发明实施例的一种数据下发的装置的结构示意图。

具体实施方式

以下结合附图对本发明的示范性实施方式做出说明,其中包括本发明实施方式的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施方式做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

如图2所示,本发明实施例的一种数据下发的方法的步骤流程图。具体步骤如下:

步骤S1:查询数据中心系统待下发的任务记录,抽取任务数据并将任务数据插入临时数据表。

具体地,数据抽取调度线程查询数据中心系统待下发的任务记录,获取与待下发的任务记录对应的查询参数,进一步地,查询并获取相应的任务数据,并将任务数据插入到临时数据表中。如图3所示。由此,通过采用下发任务的方式,实现了对数据中心系统下发数据的灵活性与高效性。

进一步地,本发明提出的一种数据下发的方法,在查询数据中心系统待下发的任务记录之前还包括:数据中心系统接收下游系统的任务提交,并且将接收的下发任务插入到数据中心系统的下发任务记录表中。具体地,根据任务提交中的请求参数到数据库中执行任务查询,判断是否存在任务,若存在,则下游系统任务接收成功;若不存在,则将任务插入数据中心系统的数据库中。如图4所示。

其中,请求参数包括:查询参数以及接口参数。本发明中的查询参数具体可包括:数据查询配送中心、仓库、商品、序列号等信息,同时,还包括数据下发时的信息,例如,下发给下游系统标识、配送中心和仓库等标识,进一步地,还包括任务编号,且任务编号可以有效防止重复调用接口造成数据重复的问题,具有执行任务的简捷性与高效性。

步骤S2:对临时数据表中的任务数据进行分割,生成多个数据文件。具体地,数据文件生成调度线程查询待下发的任务记录,获取待下发的任务记录对应的任务数据,按照每次生成的文件的大小,将任务数据分割生成对应的多个数据文件;例如,以1000个任务数据为一 组进行分割,可将10000个总体的任务数据,分割生成10个数据文件。由此,通过多任务调度线程同时执行,实现待下发任务在数据中心系统中分阶段、有序高效执行的有益效果,进一步地,分割生成的多个数据文件有效的缓解了后续文件上传操作对文件存储服务系统造成的上传压力,以及有效的保证了上传文件的稳定性。

步骤S3:将多个数据文件上传到文件存储服务系统,获取多个数据文件存储路径并将多个数据文件存储路径插入数据文件存储路径列表。如图5所示。其中,将查询数据中心系统待下发的任务记录采用中间的存储服务系统是考虑到下游系统的多样性和数据的量级的问题。有些下游系统网络情况不定,例如,仓库系统、第三方系统等,网络情况不良好,不稳定,不畅通。采用文件存储服务系统可及时、有效的保存待下发的任务记录。同时,采用文件存储服务系统也考虑到了现在流行的云盘等存储服务,可以实现与第三方系统进行大量的数据交换的操作。

步骤S4:将数据文件存储路径列表发送给下游系统。具体地,如图6所示,数据文件下发调度线程查询待下发的任务记录,获取待下发的任务记录对应的数据文件存储路径列表,将数据文件存储路径列表生成接口报文,继而调用下游系统接口,将数据文件存储路径列表下发给下游系统。由此,通过多任务调度线程同时执行,实现待下发任务在数据中心系统中分阶段、有序高效执行的有益效果,进一步地,通过调用下游系统接口的方式,使得数据下发接入更加简单、快捷,减少开发工作量。

进一步地,如图7所示,本发明提出的一种数据下发的方法,还包括:下游系统接收数据中心系统下发的数据文件存储路径列表,通过对数据文件存储路径列表执行遍历的方式,下载多个数据文件并解析多个数据文件的内容;以及将解析后的多个数据文件的内容插入到下游系统的本地数据库中。

更进一步地,如图8所示,本发明提出的一种数据下发的方法,还包括:手动输入数据中心系统待下发的任务记录的任务编号;以及查询与任务编号对应的数据文件存储路径,并将数据文件存储路径发送给下游系统。具体地,手动下发是数据中心系统已经自动将数据文件存储路径列表下发给下游系统,但是下游系统处理时出现问题,需要重新下发。此时,只需要管理员通过请求参数中的任务编号触发下发流程即可,即管理员输入任务编号,查询任务数据以及数据文件存储路径,生成接口报文,调用下游系统的接口进行发送。

根据本发明的技术方案,本发明提出了一种数据下发的方法,通过将下游系统数据拉取变为数据中心数据下发的方式,采用数据下发任务来规范数据下发的执行,这样下游系统的数据初始化只需要向数据中心提出下发任务,之后数据中心会异步执行数据下发,保证数据中心的稳定性,同时,由于下发的数据量较大,本发明采用文件系统作为中间数据存储系统,数据中心给下游系统传递的为数据文件存储标识,下游系统可以通过存储标识到文件存储系统中获取数据文件,解析后存储到下游系统的本地数据库中。

为了更好的理解本发明提出的一种数据下发的方法,进行以下具体示例,且本发明不局限以下示例,如图9所示。

具体地,下游系统向数据中心系统请求数据下发,数据中心系统插入下发任务到下发任务记录表。其中,下发任务记录表为每个下游系统需要数据时,可向数据集中心提供查询参数、下发参数以及任务编号等请求参数,通过接口在下发任务记录表中建立一条任务记录,等待任务执行系统执行,且下游系统为数据中心数据的需求系统,需要使用数据中心的部分数据;数据中心系统为数据中心提供的接口服务系统。

进一步地,任务执行系统在下发任务记录表中查询待执行下发任务记录,通过数据抽取调度线程抽取下发任务数据并将任务数据插入到下发任务临时数据表中。其中,下发任务临时数据表为下游系统所需要的数据,但由于数据量较大,本发明提出了临时数据表,将临时数据表中的任务数据分割生成多个数据文件,方便上传到文件存储服务系统,且任务执行系统为数据中心提供的线程调度系统,可以定时启动线程,执行指定的任务。

更进一步地,任务执行系统查询待下发临时数据,通过数据文件生成调度线程生成数据文件并上传文件存储服务系统,获取数据文件存储路径,并将数据文件存储路径插入数据文件存储路径列表,当任务执行系统在数据文件存储路径列表中查询下发的数据文件路径记录时,通过数据文件下发调度线程将查询到的数据文件路径下发下游系统,最终下游系统从文件存储服务系统下载数据文件并解析数据插入本地数据库。其中,数据文件存储路径列表为数据文件上传到文件存储服务系统后,将文件存储路径存储到该表中,等待任务执行系统下发给下游系统。

本示例包含下游系统的任务提交、数据中心系统任务的执行、数据文件存储路径的下发和下游系统数据文件下载、解析以及插入本地数据库等过程。本发明提出的一种数据下发的方法,不但可以高效提升执行数据下发任务的速率,还可以管理下发任务的执行以及可以实现重新手动下发等操作,进一步地,可以减少下游系统的开发工作量,只需开发数据文件的接口功能即可,使数据下发接入变得更加快捷、简单和易于管理。

如图10所示,本发明实施例的一种数据下发的装置的结构示意图。一种数据下发的装置10,包括:下发任务模块101、数据文件生成模块102、存储路径获取模块103以及发送模块104。

具体地,下发任务模块101用于查询数据中心系统待下发的任务记录,抽取任务数据并将任务数据插入临时数据表;数据文件生成模块102用于对临时数据表中的任务数据进行分割,生成多个数据文件;存储路径获取模块103用于将多个数据文件上传到文件存储服务系统,获取多个数据文件存储路径并将多个数据文件存储路径插入数据文件存储路径列表;以及发送模块104用于将数据文件存储路径列表发送给下游系统。

本发明提出的一种数据下发的装置,还包括,任务接收模块105用于数据中心系统接收下游系统的任务提交,并且将接收的下发任务插入到数据中心系统的下发任务记录表中。

本发明提出的一种数据下发的装置,还包括,数据文件处理模块106用于下载多个数据文件并解析多个数据文件的内容;以及数据库插入模块107用于将解析后的多个数据文件的内容插入到下游系统的本地数据库中。

本发明提出的一种数据下发的装置,还包括,任务编号输入模块108用于手动输入数据中心系统待下发的任务记录的任务编号;任务编号查询模块109用于查询与任务编号对应的数据文件存储路径,并将数据文件存储路径发送给下游系统。

根据本发明的技术方案,本发明提出了一种数据下发的装置,通过将下游系统数据拉取变为数据中心数据下发的方式,采用数据下发任务来规范数据下发的执行,这样下游系统的数据初始化只需要向数据中心提出下发任务,之后数据中心会异步执行数据下发,保证数据中心的稳定性,同时,由于下发的数据量较大,本发明采用文件系统作为中间数据存储系统,数据中心给下游系统传递的为数据文件存储标识,下游系统可以通过存储标识到文件存储系统中获取数据文件,解析后存储到下游系统的本地数据库中。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(POM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现;具有用于对数据信号实现逻辑功能 的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性标书不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求极其等同限定。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1