CN113179333A - 一种用于区块链的文件传输与实时计算系统及方法 - Google Patents
一种用于区块链的文件传输与实时计算系统及方法 Download PDFInfo
- Publication number
- CN113179333A CN113179333A CN202110730734.5A CN202110730734A CN113179333A CN 113179333 A CN113179333 A CN 113179333A CN 202110730734 A CN202110730734 A CN 202110730734A CN 113179333 A CN113179333 A CN 113179333A
- Authority
- CN
- China
- Prior art keywords
- data
- task
- executed
- file
- computing
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种用于区块链的文件传输与实时计算系统及方法。该系统中容器创建模块负责创建用于算法执行的容器环境;实时计算模块用于执行任务对应的算法文件并向RocketMQ实时发送计算结果;数据请求模块用于计算节点向数据节点请求数据资源;数据发送和数据接收模块通过RocketMQ进行文件传输。本发明能够基于区块链的思想对多源数据进行拉取和管理,为不确定来源的用户程序提供所需的数据及安全的执行环境,提高数据传输与计算的效率。
Description
技术领域
本发明涉及区块链系统领域,特别是涉及一种用于区块链的文件传输与实时计算系统及方法。
背景技术
区块链是一个信息技术领域的术语。从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。通常情况下,基于区块链思想的系统中,各个机构或用户可以共享系统中的资源,且不会担心数据安全等风险问题。
现有的基于区块链的文件传输采用FTP传输方式,计算节点只能从一个站点下载数据,这样不利于文件快速传输,导致传输效率和计算效率低。
发明内容
本发明的目的是提供一种用于区块链的文件传输与实时计算系统及方法,以提高文件传输效率和计算效率。
为实现上述目的,本发明提供了如下方案:
一种用于区块链的文件传输与实时计算系统,包括:
所述容器创建模块,用于创建每个待执行任务对应的Docker容器,使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个容器环境;
数据请求模块,用于在所述计算节点根据待执行任务向数据节点请求所述待执行任务所需的数据文件;
数据发送模块,用于根据所述待执行任务将所需的数据文件发送至所述RocketMQ集群;
RocketMQ集群,用于对区块链各节点之间的数据进行传输;
数据接收模块,用于在所述计算节点接收从所述RocketMQ集群传输的所述数据文件;
实时计算模块,用于根据所述数据文件在所述计算节点执行所述待执行任务对应的算法文件得到计算结果,并将所述计算结果发送至RocketMQ集群。
可选的,还包括:
数据请求监听模块,用于监听来自所述数据请求模块的请求,并对每个请求对应的待执行任务进行验证。
可选的,还包括:
容器删除模块,用于删除无待执行任务的Docker容器和缓存数据,所述缓存数据为从其他数据节点传输过来的超过预定时限的数据文件。
可选的,所述数据发送模块用于根据所述待执行任务将所需的数据文件进行切片后发送至所述RocketMQ集群;所述数据接收模块用于在所述计算节点接收从所述RocketMQ集群传输的切片文件,并在所述计算节点对所述切片文件进行拼接。
可选的,所述容器创建模块具体包括:
任务分析单元,用于从待执行任务队列中读取待执行任务,并对所述待执行任务进行分析,确定所述待执行任务对应的计算节点、算法文件和所需的数据文件;
算法文件存储单元,用于将所述待执行任务对应的算法文件存储至对应的计算节点的算法指定目录中;
数据文件分析单元,用于判断所述待执行任务所需的数据文件是否已存在于对应的计算节点;
数据调用单元,用于当所述待执行任务所需的数据文件未存在于对应的计算节点时,调用所述数据请求模块向数据节点请求所述待执行任务所需的数据文件;
加密单元,用于以数据中心的公钥加密所述待执行任务的任务信息,并发送至数据请求主题,以容器的动态码为标签,在数据传输信道主题中订阅动态码标签的消息,以供读取拉取的数据;
任务描述创建单元,用于创建待执行任务的任务描述,所述任务描述包括数据文件的路径、算法文件的路径、数据拉取的信道编号和算法结果的大小限制;
容器创建单元,用于为所述待执行任务创建Docker容器,在创建好的Docker容器中执行所述待执行任务。
可选的,所述容器创建单元具体包括:
数据接收调用子单元,用于通过所述动态码调用所述数据接收模块,所述数据接收模块从所述动态码标签对应的信息中读取相应数据,存储至对应计算节点的数据指定目录,并更新数据文件生命周期表;所述数据文件生命周期表用于存储拉取数据的时间点,并周期性删除已拉取的数据;
容器创建子单元,用于通过创建DockerFile来创建Docker容器,并将所述Docker容器的相关信息和动态码存储至Docker与动态码映射表;
计算调用子单元,用于调用所述实时计算模块,执行对应的算法文件,并以所述动态码为标签将计算结果发送至日志主题。
可选的,所述数据请求模块具体包括:
数据文件判断单元,用于判断所述数据文件的路径下是否存在所述待执行任务所需的数据文件;
数据拉取单元,当所述数据文件的路径下不存在所述待执行任务所需的数据文件时,向数据节点请求拉取数据。
可选的,所述数据接收模块具体包括:
数据订阅单元,用于订阅数据传输信道主题中相应动态码的数据;
解密单元,用于使用加密单元的对称解密密钥解密数据订阅的大数据,并更新所述数据文件生命周期表;
计算调用单元,用于调用所述实时计算模块进行计算。
本发明还提供一种用于区块链的文件传输与实时计算方法,包括:
创建每个待执行任务对应的Docker容器,使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个容器环境;
在所述计算节点根据待执行任务向数据节点请求所述待执行任务所需的数据文件;
根据所述待执行任务将所需的数据文件发送至所述RocketMQ集群;所述RocketMQ集群用于对区块链各节点之间的数据进行传输;
在所述计算节点接收从所述RocketMQ集群传输的所述数据文件;
根据所述数据文件在所述计算节点执行所述待执行任务对应的算法文件得到计算结果,并将所述计算结果发送至所述RocketMQ集群。
可选的,所述创建每个待执行任务对应的Docker容器,具体包括:
从待执行任务队列中读取待执行任务,并对所述待执行任务进行分析,确定所述待执行任务对应的计算节点、算法文件和所需的数据文件;
将所述待执行任务对应的算法文件存储至对应的计算节点的算法指定目录中;
判断所述待执行任务所需的数据文件是否已存在于对应的计算节点;
当所述待执行任务所需的数据文件未存在于对应的计算节点时,调用所述数据请求模块向数据节点请求所述待执行任务所需的数据文件;
以数据中心的公钥加密所述待执行任务的任务信息,并发送至数据请求主题,以容器的动态码为标签,在数据传输信道主题中订阅动态码标签的消息,以供读取拉取的数据;
创建待执行任务的任务描述,所述任务描述包括数据文件的路径、算法文件的路径、数据拉取的信道编号和算法结果的大小限制;
为所述待执行任务创建Docker容器,在创建好的Docker容器中执行所述待执行任务。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
RocketMQ是分布式消息中间件,本发明使用RocketMQ的方式来进行文件分割摘取,可以极大的提升系统各个模块之间的通信效率,而且同时拉取多个节点的数据,来实现多源数据的融合分析,提高整个区块链中数据传输和计算的效率,且更为安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明用于区块链的文件传输与实时计算系统的结构示意图;
图2为本发明的实施示意图;
图3为本发明用于区块链的文件传输与实时计算方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明用于区块链的文件传输与实时计算系统的结构示意图,图2为本发明的实施示意图,结合图1和图2所示,本发明用于区块链的文件传输与实时计算系统包括以下结构:
容器创建模块101,用于创建每个待执行任务对应的Docker容器。其目的在于使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个计算节点的安全环境。
数据请求模块102,用于在所述计算节点根据待执行任务向数据节点请求所述待执行任务所需的数据文件。
数据发送模块103,用于根据所述待执行任务将所需的数据文件发送至所述RocketMQ集群。具体的,数据发送模块103根据所述待执行任务将所需的数据文件进行切片后,顺序发送至所述RocketMQ集群,保证文件的安全传输。
RocketMQ集群104,用于对区块链各节点之间的数据进行传输。
数据接收模块105,用于在所述计算节点接收从所述RocketMQ集群传输的所述数据文件。具体的,数据接收模块在所述计算节点接收从所述RocketMQ集群传输的切片文件,并在所述计算节点对切片文件进行拼接,完成数据文件的安全稳定传输。
实时计算模块106,用于根据所述数据文件在所述计算节点执行所述待执行任务对应的算法文件得到计算结果,并将所述计算结果发送至RocketMQ集群。
此外,本发明区块链的文件传输与实时计算系统还包括:
数据请求监听模块,用于监听来自所述数据请求模块的请求,并对每个请求对应的待执行任务进行验证。
容器删除模块,用于删除无待执行任务的Docker容器和缓存数据,所述缓存数据为从其他数据节点传输过来的超过预定时限的数据文件。
采用上述方案进行文件传输与实时计算的方法如图3所示,包括以下步骤:
步骤100:创建每个待执行任务对应的Docker容器,使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个容器环境。
步骤200:在计算节点根据待执行任务向数据节点请求待执行任务所需的数据文件。
步骤300:根据待执行任务将所需的数据文件发送至RocketMQ集群。RocketMQ集群用于对区块链各节点之间的数据进行传输。
步骤400:在计算节点接收从RocketMQ集群传输的数据文件。
步骤500:根据数据文件在计算节点执行待执行任务对应的算法文件得到计算结果,并将计算结果发送至RocketMQ集群。
下面结合图1-图3,对本发明的方案做进一步的说明。
所述容器创建模块用于执行算法文件,从待执行任务队列中读取任务,判断任务的数据文件是否在本计算节点,发送至数据请求主题,准备好任务描述供容器创建和使用,最终目的是形成算法文件、数据文件在同一个目录下。具体的过程如下:
步骤1. 从待执行任务队列中读取任务,每个任务可能有多个数据提供机构,从中读取算法文件,放至计算节点指定目录中。
步骤2. 判断任务的数据文件是否在本计算节点,如果在本计算节点,则无需拉取,同时告知数据节点该任务数据在本计算节点中存在,并将任务消息发送至数据请求主题。否则准备从数据节点进行拉取。
步骤3. 以数据中心的公钥加密任务信息,发送至数据请求主题,以动态码为标签,在数据传输信道主题中订阅动态码标签的消息,以供读取拉取的数据。
步骤4. 准备好任务描述供容器创建和使用,任务描述主要包括以下信息:数据文件的绝对路径、算法文件的绝对路径、本次任务动态码、数据拉取的信道编号、算法结果大小限制。
步骤5. 在建立好的容器中执行步骤4中的任务描述。首先,通过容器的动态码调用数据接收模块,从动态码标签对应的信息中读取相应数据,放至指定目录,并更新数据文件生命周期表。该指定目录规定拉取回的存储目录,这样容器就能找到;数据文件生命周期表存储在每个计算节点中,主要用来在任务完成后一段时间后定时删除拉取回的数据,防止存储不够。然后,通过创建DockerFile来建立Docker容器,将Docker容器的相关信息与动态码写入Docker与动态码映射表中。其中Docker与动态码映射表主要包含以下信息:动态码、容器名称以及任务是否完成。最后,调用实时计算模块,执行算法文件,以动态码为标签,发送结果至日志主题中。
因此,本发明的容器创建模块主要用于布置来自用户的算法文件和各机构的数据文件,为其正常运行创建安全且稳定的Docker容器环境。在任务获取过程中,若任务获取失败,首先判断异常产生的原因,若是由于队列空导致的异常,则进程进入阻塞态,当有新的任务时,再唤醒函数;若是其他原因导致的异常,如任务格式不匹配等,则消耗队列中的任务并返回创建容器失败的结果;若是数据获取一直失败,则进程会一直在阻塞态,可能会导致任务长期得不到处理,因此本模块为给每个任务的执行时间设置上限,若是超过时间上限未终止,则结束函数,将任务重新加入处理队列。
所述数据请求模块用于判断自身节点是否存在数据,同时向数据节点发送消息,报告是否需要拉取数据。主要包括以下步骤:
步骤1. 判断当前计算节点规定路径下是否存在任务中描述的数据文件。若数据文件存在则不再请求拉取数据,否则向数据节点请求拉取数据。
步骤2. 以数据中心的公钥加密任务信息,并以任务动态码为标签发送消息至数据请求主题,通过同步发送保证可靠性,根据数据文件是否存在于该节点来设置消息的类型,如果存在异常需要中止任务则设置消息类型为取消拉取。主要的消息类型包括拉取请求、取消拉取,数据取消。
因此,本发明数据请求模块在任务描述到达后,解析其中的内容并负责请求调配各机构的数据。
所述数据请求监听模块位于数据节点,从任务请求模块中获取数据拉取请求,并在验证任务队列中实现任务验证。主要包括以下步骤:
步骤1. 根据任务动态码的标签从数据请求主题中等待推送消息,并且通过验证机制来保证收到消息;
步骤2. 在拿到消息后首先验证任务动态码,然后根据任务动态码从验证任务队列中查找是否有此任务,如果不存在则忽略该消息;若该任务中存在任务中止标识,则调用数据发送模块,取消正在传输的数据;若验证任务队列中对应任务存在,则根据消息类型进行下一步操作;
步骤3. 若消息类型为取消消息,则从验证任务队列中删除该任务若消息类型为无需拉取,则结束当前数据拉取请求,因为数据已经在本节点存在;若消息类型为数据拉取,则调用数据发送模块,传输数据。
由上述可知,数据请求监听模块负责持续监听RocketMQ的数据请求主题中是否产生新的数据请求,并对该请求的真实性进行验证,确保了多元数据拉取的安全性。
所述数据发送模块用于向RocketMQ集群对应主题发送数据,其所需的信息主要包括任务动态码、待发送的文件名、用于加密文件的加密密钥等。该模块的功能为获取要发送的文件的绝对路径,使用加密密钥加密数据,并向数据传输信道主题中发送数据消息,以动态码为标签。发送数据消息的方式为同时分片发送数据,同步发送并执行消息确认机制,直到消息完成将分片置否,表示发送完成。最后生成传输日志,请求日志上链。
若数据发送模块接收到的参数中包含取消传输的信息,则取消正在发送的文件。在需要取消正在传输的文件时,可能导致本地生产者和集群的异常,导致数据的遗漏。因此数据传输模块保证操作的一致性,取消传输时,删除对应主题和标签的分片数据消息来保证数据的一致性;同时在计算节点根据文件绝对路径将对应的数据进行删除以保证一致性。
数据发送模块是本发明文件传输与实时计算系统的核心,通过RocketMQ消息队列的顺序生产与消费保证了数据传输的稳定性;通过对称加密密钥对文件内容进行加密保证了数据传输的安全性。
所述数据接收模块负责从RocketMQ对应主题拉取数据,使用请求任务时的对称解密密钥解密数据,将数据拼接整合,存放到计算中心规定的数据目录中。主要包括以下步骤:
步骤1. 订阅数据传输信道主题中相应动态码的数据,并且在接收完毕后进行检查,存在消息遗漏时在回调函数中返回消费失败,并要求重发。
步骤2. 使用请求任务时的对称解密密钥解密数据。获取完整数据后,若成功则同步更新数据文件生命周期表,若表中存在该数据的记录,则更新对应记录的数据状态;若不存在则创建记录并初始化设置数据状态,同时将该数据对应记录的近期使用时间更新。
步骤3. 非阻塞调用实时计算模块进行计算,并将数据传输的结果对应的日志上链。
本发明数据接收模块与数据发送模块紧密配合,在计算节点和数据节点上分别进行对数据资源的调配,保证了系统整体的数据的共享性与安全性。
所述实时计算模块用于在Docker容器环境中执行算法文件,检验任务环境,启动执行算法文件文件,并将算法文件的执行结果实时发送至主节点。主要包括以下步骤:
步骤1. 检验来自多个机构(数据节点)的数据文件,并检测算法文件文件的合法性。
步骤2. 启动执行算法文件文件,通过实时调取指定容器内的日志记录的方式获取流执行结果并将结果实时发送至日志主题中,若存在输出文件,则将文件中的内容一并发送至日志主题中。
步骤3. 算法执行完毕则视为任务执行完成。任务执行完成后,以动态码对应标签发送算法执行结束消息。由于实时结果包含多条消息,因此算法执行结束的消息需要特别标记。
步骤4. 在数据文件生命周期表中更新该任务的状态,并在Docker与动态码映射表中登记任务完成,以删除Docker容器。
进一步的,若检验文件失败或者算法文件文件失败,则先判断产生异常的原因,若是由于文件缺失导致的,函数可以进入阻塞态,当所有文件具备后,重新调用函数;若是用户的算法文件有问题,导致任务执行时间太长,则实时计算模块会给函数执行添加时间上限,超过上限未执行结束将结束任务,反馈并告知用户。
因此,本发明实时计算模块负责执行算法文件并实时回传计算结果,是整个系统的核心模块。
所述容器删除模块用于删除正在执行相应动态码任务的Docker容器,同时定期删除缓存的数据文件。主要包括以下步骤:
步骤1. 读取参数中的动态码,找到对应的Docker容器,并判断容器的停止方式:如果是中途停止,则删除对应的Docker容器,还需要向数据请求主题发送取消消息,否则只删除Docker容器即可;同时还需删除Docker与动态码映射表中的记录。另外,还需生成日志记录,并请求上链。
步骤2. 定时删除Docker与动态码映射表中标记为任务完成的任务。
步骤3. 根据数据文件生命周期表定时删除长期不用的数据文件,即当前无任务正在使用且上次使用时间距离现在比较久远的数据。并清除表中的记录。
因此,容器删除模块负责系统业务流程的收尾工作,对冗余或无用的容器及文件缓存进行管理和清理。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种用于区块链的文件传输与实时计算系统,其特征在于,包括:
容器创建模块,用于创建每个待执行任务对应的Docker容器,使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个容器环境;
数据请求模块,用于在所述计算节点根据待执行任务向数据节点请求所述待执行任务所需的数据文件;
数据发送模块,用于根据所述待执行任务将所需的数据文件发送至RocketMQ集群;
RocketMQ集群,用于对区块链各节点之间的数据进行传输;
数据接收模块,用于在所述计算节点接收从所述RocketMQ集群传输的所述数据文件;
实时计算模块,用于根据所述数据文件在所述计算节点执行所述待执行任务对应的算法文件得到计算结果,并将所述计算结果发送至RocketMQ集群。
2.根据权利要求1所述的用于区块链的文件传输与实时计算系统,其特征在于,还包括:
数据请求监听模块,用于监听来自所述数据请求模块的请求,并对每个请求对应的待执行任务进行验证。
3.根据权利要求1所述的用于区块链的文件传输与实时计算系统,其特征在于,还包括:
容器删除模块,用于删除无待执行任务的Docker容器和缓存数据,所述缓存数据为从其他数据节点传输过来的超过预定时限的数据文件。
4.根据权利要求1所述的用于区块链的文件传输与实时计算系统,其特征在于,所述数据发送模块用于根据所述待执行任务将所需的数据文件进行切片后发送至所述RocketMQ集群;所述数据接收模块用于在所述计算节点接收从所述RocketMQ集群传输的切片文件,并在所述计算节点对所述切片文件进行拼接。
5.根据权利要求1所述的用于区块链的文件传输与实时计算系统,其特征在于,所述容器创建模块具体包括:
任务分析单元,用于从待执行任务队列中读取待执行任务,并对所述待执行任务进行分析,确定所述待执行任务对应的计算节点、算法文件和所需的数据文件;
算法文件存储单元,用于将所述待执行任务对应的算法文件存储至对应的计算节点的算法指定目录中;
数据文件分析单元,用于判断所述待执行任务所需的数据文件是否已存在于对应的计算节点;
数据调用单元,用于当所述待执行任务所需的数据文件未存在于对应的计算节点时,调用所述数据请求模块向数据节点请求所述待执行任务所需的数据文件;
加密单元,用于以数据中心的公钥加密所述待执行任务的任务信息,并发送至数据请求主题,以容器的动态码为标签,在数据传输信道主题中订阅动态码标签的消息,以供读取拉取的数据;
任务描述创建单元,用于创建待执行任务的任务描述,所述任务描述包括数据文件的路径、算法文件的路径、数据拉取的信道编号和算法结果的大小限制;
容器创建单元,用于为所述待执行任务创建Docker容器,在创建好的Docker容器中执行所述待执行任务。
6.根据权利要求5所述的用于区块链的文件传输与实时计算系统,其特征在于,所述容器创建单元具体包括:
数据接收调用子单元,用于通过所述动态码调用所述数据接收模块,所述数据接收模块从所述动态码标签对应的信息中读取相应数据,存储至对应计算节点的数据指定目录,并更新数据文件生命周期表;所述数据文件生命周期表用于存储拉取数据的时间点,并周期性删除已拉取的数据;
容器创建子单元,用于通过创建DockerFile来创建Docker容器,并将所述Docker容器的相关信息和动态码存储至Docker与动态码映射表;
计算调用子单元,用于调用所述实时计算模块,执行对应的算法文件,并以所述动态码为标签将计算结果发送至日志主题。
7.根据权利要求5所述的用于区块链的文件传输与实时计算系统,其特征在于,所述数据请求模块具体包括:
数据文件判断单元,用于判断所述数据文件的路径下是否存在所述待执行任务所需的数据文件;
数据拉取单元,当所述数据文件的路径下不存在所述待执行任务所需的数据文件时,向数据节点请求拉取数据。
8.根据权利要求5所述的用于区块链的文件传输与实时计算系统,其特征在于,所述数据接收模块具体包括:
数据订阅单元,用于订阅数据传输信道主题中相应动态码的数据;
解密单元,用于使用加密单元的对称解密密钥解密数据订阅的大数据,并更新所述数据文件生命周期表;
计算调用单元,用于调用所述实时计算模块进行计算。
9.一种用于区块链的文件传输与实时计算方法,其特征在于,包括:
创建每个待执行任务对应的Docker容器,使计算节点执行待执行任务的算法文件和所需的数据文件处于同一个容器环境;
在所述计算节点根据待执行任务向数据节点请求所述待执行任务所需的数据文件;
根据所述待执行任务将所需的数据文件发送至RocketMQ集群;所述RocketMQ集群用于对区块链各节点之间的数据进行传输;
在所述计算节点接收从所述RocketMQ集群传输的所述数据文件;
根据所述数据文件在所述计算节点执行所述待执行任务对应的算法文件得到计算结果,并将所述计算结果发送至所述RocketMQ集群。
10.根据权利要求9所述的用于区块链的文件传输与实时计算方法,其特征在于,所述创建每个待执行任务对应的Docker容器,具体包括:
从待执行任务队列中读取待执行任务,并对所述待执行任务进行分析,确定所述待执行任务对应的计算节点、算法文件和所需的数据文件;
将所述待执行任务对应的算法文件存储至对应的计算节点的算法指定目录中;
判断所述待执行任务所需的数据文件是否已存在于对应的计算节点;
当所述待执行任务所需的数据文件未存在于对应的计算节点时,调用数据请求模块向数据节点请求所述待执行任务所需的数据文件;
以数据中心的公钥加密所述待执行任务的任务信息,并发送至数据请求主题,以容器的动态码为标签,在数据传输信道主题中订阅动态码标签的消息,以供读取拉取的数据;
创建待执行任务的任务描述,所述任务描述包括数据文件的路径、算法文件的路径、数据拉取的信道编号和算法结果的大小限制;
为所述待执行任务创建Docker容器,在创建好的Docker容器中执行所述待执行任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110730734.5A CN113179333B (zh) | 2021-06-30 | 2021-06-30 | 一种用于区块链的文件传输与实时计算系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110730734.5A CN113179333B (zh) | 2021-06-30 | 2021-06-30 | 一种用于区块链的文件传输与实时计算系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113179333A true CN113179333A (zh) | 2021-07-27 |
CN113179333B CN113179333B (zh) | 2021-09-03 |
Family
ID=76927996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110730734.5A Active CN113179333B (zh) | 2021-06-30 | 2021-06-30 | 一种用于区块链的文件传输与实时计算系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113179333B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110154015A1 (en) * | 2009-12-21 | 2011-06-23 | Tareq Mahmud Rahman | Method For Segmenting A Data File, Storing The File In A Separate Location, And Recreating The File |
CN111737023A (zh) * | 2020-05-14 | 2020-10-02 | 重庆长安汽车股份有限公司 | 一种车载事件处理方法、云服务器及计算机可读存储介质 |
CN112085611A (zh) * | 2020-09-07 | 2020-12-15 | 中国平安财产保险股份有限公司 | 数据异步核验方法、装置、电子设备及存储介质 |
CN112181672A (zh) * | 2019-07-04 | 2021-01-05 | 北京新唐思创教育科技有限公司 | 区块链数据的处理方法、区块链系统及计算机存储介质 |
US20210124760A1 (en) * | 2019-10-25 | 2021-04-29 | Accenture Global Solutions Limited | Automatic creation of blockchain network infrastructures |
CN112769924A (zh) * | 2020-12-31 | 2021-05-07 | 平安科技(深圳)有限公司 | RocketMQ的分布式部署方法、装置、设备及介质 |
CN112817706A (zh) * | 2019-11-15 | 2021-05-18 | 杭州海康威视数字技术股份有限公司 | 一种分布式任务调度系统和方法 |
-
2021
- 2021-06-30 CN CN202110730734.5A patent/CN113179333B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110154015A1 (en) * | 2009-12-21 | 2011-06-23 | Tareq Mahmud Rahman | Method For Segmenting A Data File, Storing The File In A Separate Location, And Recreating The File |
CN112181672A (zh) * | 2019-07-04 | 2021-01-05 | 北京新唐思创教育科技有限公司 | 区块链数据的处理方法、区块链系统及计算机存储介质 |
US20210124760A1 (en) * | 2019-10-25 | 2021-04-29 | Accenture Global Solutions Limited | Automatic creation of blockchain network infrastructures |
CN112817706A (zh) * | 2019-11-15 | 2021-05-18 | 杭州海康威视数字技术股份有限公司 | 一种分布式任务调度系统和方法 |
CN111737023A (zh) * | 2020-05-14 | 2020-10-02 | 重庆长安汽车股份有限公司 | 一种车载事件处理方法、云服务器及计算机可读存储介质 |
CN112085611A (zh) * | 2020-09-07 | 2020-12-15 | 中国平安财产保险股份有限公司 | 数据异步核验方法、装置、电子设备及存储介质 |
CN112769924A (zh) * | 2020-12-31 | 2021-05-07 | 平安科技(深圳)有限公司 | RocketMQ的分布式部署方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113179333B (zh) | 2021-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107729366B (zh) | 一种普适多源异构大规模数据同步系统 | |
KR102306496B1 (ko) | 시간이 정확한 이벤트 스트림들을 생성하는 시스템 및 방법 | |
CN103095819A (zh) | 推送数据信息的方法及数据信息推送系统 | |
CN111831748B (zh) | 数据同步方法、装置及存储介质 | |
CN110554930B (zh) | 一种数据存储方法及相关设备 | |
US10425335B2 (en) | Reconstructing message flows based on hash values | |
CN109189749A (zh) | 文件同步方法及终端设备 | |
CN111510474A (zh) | 基于消息中间件的数据传输方法及相关设备 | |
EP3803616A1 (en) | Change notifications for object storage | |
US10498825B2 (en) | Method and system for selecting a transport mechanism and a storage process | |
CN113721856A (zh) | 一种数字化社区管理数据存储系统 | |
CN113179333B (zh) | 一种用于区块链的文件传输与实时计算系统及方法 | |
EP3026860B1 (en) | Method and system for transmission management of full configuration synchronization between eml-nml | |
CN117950850A (zh) | 一种数据传输方法、装置、电子设备及计算机可读介质 | |
CN109921920A (zh) | 一种故障信息处理方法与相关装置 | |
CN111245949A (zh) | 文件归档传输方法、装置及设备 | |
JP5913196B2 (ja) | 計算機システム及び障害特定方法 | |
CN115952050A (zh) | 机构服务埋点数据的上报方法和装置 | |
US20060117076A1 (en) | Method for replication tracing | |
CN111182047B (zh) | 用于在跨网络的大数据平台之间转移文件的方法和系统 | |
CN113590715A (zh) | 基于区块链的信息推送方法、装置、设备、介质和程序产品 | |
CN112732728A (zh) | 一种数据同步方法和系统 | |
CN108075932B (zh) | 一种数据监控方法和装置 | |
CN112241332A (zh) | 一种接口补偿的方法和装置 | |
CN112667586B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |