CN113312394B - 数据获取***的构建方法及装置 - Google Patents

数据获取***的构建方法及装置 Download PDF

Info

Publication number
CN113312394B
CN113312394B CN202110661714.7A CN202110661714A CN113312394B CN 113312394 B CN113312394 B CN 113312394B CN 202110661714 A CN202110661714 A CN 202110661714A CN 113312394 B CN113312394 B CN 113312394B
Authority
CN
China
Prior art keywords
data
node
module
interface
information
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
Application number
CN202110661714.7A
Other languages
English (en)
Other versions
CN113312394A (zh
Inventor
杨俊峰
王天星
余宏伟
汪洪潮
孙正阳
刘若琳
张雷
宋克柱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology of China USTC
Original Assignee
University of Science and Technology of China USTC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Science and Technology of China USTC filed Critical University of Science and Technology of China USTC
Priority to CN202110661714.7A priority Critical patent/CN113312394B/zh
Publication of CN113312394A publication Critical patent/CN113312394A/zh
Application granted granted Critical
Publication of CN113312394B publication Critical patent/CN113312394B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种数据获取***的构建方法及装置,该方法包括:响应于用户发送的用于构建数据获取***的构建请求,确定与所述构建请求对应的采集处理模块的模块信息和模块互连信息,抽象出数据获取***中包含的各种工作流;确定每种工作流中所传输数据的数据空间信息;对于每种工作流,确定工作流所包含的各个数据域和所流经的采集处理模块所提供的接口的接口信息;对于每个采集处理模块,使用标准化封装后的标准接口将各个流处理节点和跨模块接口节点进行连接,并将得到的模块设计文件部署至采集处理模块中,以完成数据获取***的构建。本发明使用流处理节点构建数据获取***,无需对每个功能模块进行设计,降低了构建数据获取***的难度。

Description

数据获取***的构建方法及装置
技术领域
本发明涉及数据获取技术领域,特别涉及一种数据获取***的构建方法及装置。
背景技术
随着科学技术的进步,流数据开始广泛应用在各种领域中,流数据是一组顺序、大量、快速到达的数据序列,一般情况下,数据流可以被视为一个随时间延续而无限增长的动态数据集合。在不同的应用领域以及不同的应用场景,对流数据的获取方式和***有着巨大的差异。
目前,在不同的应用领域或是不同的应用场景在构建用于获取流数据的数据获取***时,通常需要根据特定的场景或是领域对***进行针对性的设计,在设计***的过程中要求设计人员必须有丰富的专业知识,设计过程复杂,并且设计过程并没有将流处理框架应用于构建数据获取***,使得设计出的***中的各种功能模块不具通用性,在调整或是修改数据获取***时,都需要重新设计数据获取***中的各种功能模块,由此增加了构建数据获取***的难度。
发明内容
有鉴于此,本发明提供一种数据获取***的构建方法及装置,应用本发明,通过使用标准的流处理节点构建数据获取***,降低了构建数据获取***的难度,并且本发明可以适用于多种构建数据获取***的场景,更具有普遍性和便利性。
为实现上述目的,本发明提供如下技术方案:
一种数据获取***的构建方法,包括:
响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;
根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流;
基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息;
对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高;
对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息;
对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息;
对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接;
对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
上述的方法,可选的,所述确定所述采集处理模块的跨模块接口节点,包括:
确定所述采集处理模块的跨模块接口类型;
在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;
若存在与所述跨模块接口类型对应的标准跨模块接口节点,则将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点;
若不存在与所述跨模块接口类型对应的标准跨模块接口节点,则基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
上述的方法,可选的,所述确定与所述采集处理模块对应的各个流处理节点,包括:
获取所述采集处理模块的各个节点类型信息;
对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;
若存在与所述节点类型信息对应的标准处理节点,则将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点;
若未存在与所述节点类型信息对应的标准处理节点,则基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
上述的方法,可选的,标准接口的标准化封装的过程,包括:
对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型;
确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容;
对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模板,得到所述数据接口的标准流数据帧格式;
基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
上述的方法,可选的,所述基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,包括:
对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息;
对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口;
对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;
若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集处理模块内,则在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接;
若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
一种数据获取***的构建装置,包括:
响应单元,用于响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;
抽象单元,用于根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流;
第一确定单元,用于基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息;
第二确定单元,用于对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高;
第三确定单元,用于对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息;
生成单元,用于对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息;
第四确定单元,用于对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接;
连接单元,用于对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
上述的装置,可选的,所述第四确定单元,包括:
第一确定子单元,用于确定所述采集处理模块的跨模块接口类型;
第一判断子单元,用于在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;
第二确定子单元,用于若存在与所述跨模块接口类型对应的标准跨模块接口节点,则将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点;
构建子单元,用于若不存在与所述跨模块接口类型对应的标准跨模块接口节点,则基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
上述的装置,可选的,所述生成单元,包括:
获取子单元,用于获取所述采集处理模块的各个节点类型信息;
第二判断子单元,用于对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;
第三确定子单元,用于若存在与所述节点类型信息对应的标准处理节点,则将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点;
第二构建子单元,用于若未存在与所述节点类型信息对应的标准处理节点,则基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
上述的装置,可选的,还包括:
第五确定单元,用于对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型;
第六确定单元,用于确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容;
输入单元,用于对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模块,得到所述数据接口的标准流数据帧格式;
获取单元,用于基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
上述的装置,可选的,所述连接单元,包括:
解析子单元,用于对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息;
第四确定子单元,用于对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口;
第三判断子单元,用于对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;
第一连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集处理模块内,则在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接;
第二连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
与现有技术相比,本发明具有以下优点:
本发明提供一种数据获取***的构建方法及装置,该方法包括:响应于用户发送的用于构建数据获取***的构建请求,确定与所述构建请求对应的采集处理模块的模块信息及模块互连信息,抽象出数据获取***中所包含的各种工作流,确定每种工作流中所传输数据的数据空间信息,确定工作流在处理路径中经过的各个数据域,并最终确定每个采集处理模块的模块构建信息。通过跨模块接口节点确定互连关系的采集处理模块。对于每个采集处理模块,使用标准化封装后的标准接口将各个所述流处理节点进行连接或连接到跨模块接口节点,以得到与采集处理模块的模块设计文件。使用FPGA逻辑编译下载、CPU进程运行等手段,将各个模块设计文件中的流处理节点和连接方式部署到所在的采集处理模块,完成整个数据获取***的搭建工作。应该用本发明提供的方法通过将数据获取***的工作流程抽象为一系列流的处理,将流处理的过程抽象为一系列流处理节点的连接,使用数据空间和数据域属性描述各个流处理节点的工作参数,由此可以确定用于构建数据获取***的流处理节点,应用流处理节点快速构建出所需的数据获取***,构建的数据获取***中的流处理节点具有复用性,在对***进行调整或是修改时,无需重新进行设计,节省了大量的时间,并且本发明提供的构建数据***的构建方法,构建过程简单、不复杂且具有普遍性,专业性不强的人员也可使用本发明提供的方法构建所需的数据获取***。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种数据获取***的构建方法的方法流程图;
图2为本发明实施例提供的一种数据获取***的构建方法的又一方法流程图;
图3为本发明实施例提供的一种数据获取***的构建方法的再一方法流程图;
图4为本发明实施例提供的一种数据获取***的构建方法的另一方法流程图;
图5为本发明实施例提供的一种流数据帧的流数据帧格式的定义的示例图;
图6为本发明实施例提供的一种多路点到点接口模型的模型示意图;
图7为本发明实施例提供的一种多路点到点接口模型的内部实现框图;
图8为本发明实施例提供的一种数据获取***的构建方法的又另一方法流程图;
图9为本发明实施例提供的一种索引共享内存的数据格式的实例图;
图10为本发明实施例提供的一种流的数据空间和数据域的关系的示例图;
图11为本发明实施例提供的一种用于构建数据获取***的采集单元的实现框图;
图12为本发明实施例提供的一种传感器读出节点的模型示意图;
图13为本发明实施例提供的一种用于构建数据获取***的数据汇总单元的实现框图;
图14为本发明实施例提供的一种用于构建数据获取***的数据显示记录单元的实现框图;
图15为本发明实施例提供的一种数据获取***的构建装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明可用于构建各种数据获取***的平台或是***中,本发明可用于构建数据获取***,应用本发明所构建的数据获取系具有很高的复用性,减少了构建数据获取***的设计工作量,加快数据获取***的实现。
本发明提供的方法的执行主体可为用于构建数据获取***的平台中的服务器或处理器,其中,处理器包含现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA);本发明提供的一种数据获取***的构建方法的方法流程图具体如图1所示,具体说明如下所述:
S101、响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息。
当用户需要构建数据获取***时,向执行主体发送用于构建数据获取***的构建请求,执行主体响应于用户发送的用于构建数据获取***的构建请求,对所述构建请求进行解析,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息。
本发明中所述的采集处理模块是指在数据获取***中实际工作的硬件模块,包括但不限于用于传感器数据读出的硬件板卡、用于完成数据实时处理功能的FPGA板卡或是含有单片机、CPU或GPU等的其他硬件板卡或计算机等。
本发明中的各个采集处理模块根据功能、位置和连接关系分别从属于某个模块结构层,所有的采集处理模块以层次化的方式进行组织,将具有相同功能和连接方式的同一类型的采集处理模块置于同一个模块结构层。在一个数据获取***中包含至少一个模块结构层,每个模块接口层中包含至少一个采集处理模块;进一步的,当数据获取***中存在多个模块结构层时,各个模块结构层按照距离传感器/探测器的远近位置以从近到远的顺序逐层升高。
每个模块结构层仅在其内部各个采集处理模块之间,或其内部采集处理模块到其相邻上下级层级的采集处理模块之间存在直接的数据通道,即相邻的模块结构层之间存在直接的数据通道,数据通道如光纤、双绞线、同轴电缆、无线信号等;不相邻的模块结构层之间不存在直接的数据通道。进一步的,本发明中的采集处理模块的模块互连信息是指采集处理模块所处的模块结构层的上下级关系和相邻关系,以及采集处理模块所处的模块结构层以及该模块结构层与其他层级的模块结构层中的各个采集处理模块之间的互连方式、连接数量和传输能力等信息。
本发明中的采集处理模块的模块信息包括但不限于采集处理模块的模块类型、接口信息、连接的传感器通道数以及模块处理能力等,其中接口信息中包含但不限于输入接口数量、输出接口数量、输入接口和输出接口的接口类型和数据传输能力。
S102、根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流。
对所要构建的数据获取***中的工作流程进行抽象,得到数据获取***中实际运行的各种流的特征,根据各种流的特征确定所要构建的数据获取***中实际运行的各种工作流;本发明中的工作流具有多种类型,不同类型的工作流具有不同的功能,工作流包括但不限于数据流、命令流、日志流、状态流以及命令反馈流等。
本发明中的流为具有相同的数据传输方向、相同的处理方式。具备相同数据内容和数据结构的一系列数据通道,将在一定的通道范围内和时间范围内的数据按照一定的组织方式进行组帧,并按照时间顺序进行发送的数据帧的集合。
本发明在对数据获取***中的工作流程进行抽象时,从数据获取***的实际设计需求出发,将整个数据获取***的工作流程抽象出对应的独立的工作流,具体如,将对同一类传感器/探测器的数据及其相应处理方式抽象为数据流和数据流上的各种流处理节点的级联,将对传感器/探测器的参数配置、工作控制等操作抽象为命令流及其处理节点,将对读命令的返回结果抽象为命令反馈流,将各种采集处理模块上的温度、电压传感器的输出抽象为状态流,将***中的各种工作消息根据紧急程度不同抽象为紧急消息流和日志流等等。
对本发明中抽象出的各种流的特征进行说明,流的特征包括但不限于流的类型、流的数据来源和产生方式、流的传输方向和最终终点、流中的通道数量和数据结构定义、流数据帧传输中实际经过的采集处理模块的种类、在每种采集处理模块中流的输入和输出端口个数、以及对流需要进行的处理方式(如其中需要的合并或扇出操作的次数和位置、以及其他流向控制、信息提取和数据过滤等操作)等信息。
S103、基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息。
本发明中的数据空间为工作流中所有数据可能包含的时间范围和通道范围,其中,时间范围由工作时间长度确定,通道范围可由通道数量进行确定。
S104、对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高。
接口应用信息中包含工作流所流经的每个采集处理模块为该工作流提供的接口的接口信息,其中,采集处理模块为该工作流提供的接口包含输入接口和输出接口,接口信息中包含输入接口数量和输出接口数量。
本发明中的数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,其中,流数据帧粒度为通道数目和时间范围大小;其中,数据域存在等级,数据域的层级可根据流数据帧粒度的大小进行定义,将流数据帧粒度较小的数据域定义为低级数据域,将流数据帧粒度较大的数据域定义为高级数据域,即数据域的流数据帧粒度越大,数据域的等级越高。
本发明中的工作流在处理过程中至少包含一个数据域,在工作流的处理路径上,往往伴随着多次合并或扇出操作而存在多个数据域,工作流在经过了合并或扇出操作后,流数据帧所在的数据域会发生改变,因此,来自多个端口的低级数据域的数据帧可以通过合并操作产生一个高级数据域的数据帧,同样来自高级数据域的数据帧可以通过扇出操作得到发往多个端口的多个低级数据域的数据帧。进一步的,进行合并操作可通过合并节点实现,进行扇出操作可通过扇出节点实现。
不同的数据域有不同的数据域信息,数据域信息还成为数据域属性,其中,数据域信息由数据域的属性信息组成,属性信息包括但不限于数据域内的数据组织粒度(通道范围和时间范围大小)、当前数据域在其上级数据域内的通道位置和时间位置偏移、当前数据域内的流数据帧中包含的信息字段以及每一个信息字段的具体格式参数等。
S105、对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息。
本发明中的流处理节点为位于各个采集处理模块上,通过不同工作参数配置,进而完成特定基础功能的FPGA逻辑单元或CPU上运行的软件进程。采集处理模块的模块构建信息包括但不限于采集处理模块中运行的流处理节点类型、流处理节点工作参数其连接信息。
本发明中,根据工作流的数据帧所需要的进行的数据处理方式信息,将工作流的数据处理过程抽象为一系列完成合并、扇出、广播、信息提取、过滤等数据处理操作的流处理节点的级联;进一步,工作流在传输处理过程中的数据域会随着经过合并节点或扇出节点而改变,在各个数据域内也会***当前数据域的粒度进行数据处理操作的其他流处理节点;由于合并节点和扇出节点所在的位置和工作流所经过的采集处理模块信息及其互联信息有关,因此各个工作流的数据域和数据获取***中的模块结构成的划分有着直接的关联。
对于每种工作流,根据工作流所经过的采集处理模块的模块信息和模块互连信息,将该工作流的各个流处理节点分配至各个模块结构层下,并确定在当前模块结构层内的各个采集处理模块内需要运行的流处理节点的类型、数据域信息及流处理节点的连接关系。
S106、对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息。
对于每个采集处理模块,确定处于该采集处理模块中的各个流处理节点,并根据每个流处理节点的位置信息,生成该采集处理模块的模块构建信息;其中位置信息中包含但不限于流处理节点的节点信息和连接信息。
S107、对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接。
对于每个采集处理模块,根据采集处理模块的功能信息、模块构建信息、模块互连信息以及接口信息,确定采集处理模块的跨模块接口节点,并通过跨模块接口节点,将与该采集处理模块存在连接关系的采集处理模块相连接。进一步的,采集处理模块的接口信息包含但不限于采集处理模块的输出接口与输入接口的接口类型和接口数量。
采集处理模块的功能信息具体可包含采集处理模块的功能以及该采集处理模块可对数据帧进行处理的操作类型等信息,例如将数据帧进行合并、规格化、解码、编码等操作处理;其中,级联信息中包含该数据处理模块在所要构建的数据获取***中的具***置;进一步的,模块互连信息中包含但不限于采集处理模块所要连接的采集处理模块的信息以及采集处理模块中对应的流处理模块的连接信息,可根据模块连接信息确定该采集处理模块所要连接的采集处理模块,并将该采集处理模块所要连接的采集处理模块相连接。
本发明的跨模块接口节点,是一种特殊的流处理节点,跨模块接口节点以FPGA模块或软件进程的方式存在,其功能是在两个采集处理模块之间的数据传输通道的基础上进行封装,从而为两个采集处理模块之间的多个流的传输提供的包含两个方向、多个点到点连接的透明数据通道,并通过标准接口与其他流处理节点进行连接。
跨模块接口节点的具体实现和在两个采集传输模块之间实际使用的数据通道类型有关,任意两个采集传输模块之间均需要构建一对跨模块接口节点(分别位于两个采集处理模块),如果一个采集传输模块需要同时和多个其他采集处理模块进行连接,则需要构建多组跨模块接口节点。由于两个采集处理模块之间可能有来自两个方向(上行或下行)的多个流通过同一个实际的数据传输通道进行数据传输,因此需要根据各个流的流处理节点在采集处理模块的位置分配信息,设置跨模块接口节点的面向流处理节点端的上行端口输目和下行端口数目。当跨模块接口节点构建完毕中,在所述连接单元中还需要将有互连关系的采集处理模块之间对应的数据通道进行连接,完成跨模块接口节点的连接。
S108、对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
将模块设计文件部署至采集处理模块中时,可使用FPGA逻辑编译下载、CPU进程运行等手段将模块设计文件部署至采集处理模块中,进一步的,部署模块设计文件的采集处理模块为现实生活中的采集处理模块;在将所有的采集处理模块进行部署后,完成数据获取***的构建工作。
本发明实施例提供的方法中,响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;根据各个采集处理模块的模块信息和模块互连信息,抽象出数据获取***中包含的各种工作流;基于每种工作流的通道数量和工作时间长度,确定每种工作流中传输数据的数据空间信息;对于每种工作流,确定工作流的数据处理方式以及接口应用信息,所述接口应用信息中包含工作流所流经的每个采集处理模块为工作流提供的接口的接口信息;基于工作流的数据空间信息、接口应用信息以及数据处理方式信息,确定工作流的处理路径中包含的各个数据域;对于每种工作流,将工作流所流经的每个采集处理模块均确定为目标模块,以及确定工作流的数据域信息;根据工作流的接口应用信息、数据处理方式信息、数据域信息以及每个目标模块的模块信息和模块互连信息,确定与工作流对应的每个流处理节点所对应的目标模块,并确定每个流处理节点在与其对应的目标模块中的位置信息;对于每个采集处理模块,确定与该采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成采集处理模块的模块构建信息;确定采集处理模块的块模块接口节点,基于跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将该采集处理模块与其存在连接关系的采集处理模块相连接;根据采集处理模块的模块构建信息,确定与采集处理模块对应的每个流处理节点的节点信息,基于每个流处理节点的节点信息,使用标准化封装后的标准接口将采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与采集处理模块对应的模块设计文件,并将该模块设计文件部署至采集处理模块中,进而完成数据获取***的构建。应用本发明,响应于用户发送的用于构建数据获取***的构建请求,确定与构建请求对应的采集处理模块的模块信息和模块互连信息,抽象出数据获取***中的各个工作流,基于每种工作流中所传输的数据空间信息,确定每种工作流的处理路径中的数据域信息,最终确定每个采集处理模块的模块构建信息;基于模块构建信息和跨模块接口节点将存在连接关系的采集处理模块相连接;将每个采集处理模块中的流处理节点和跨模块接口节点使用标准化封装后的标准接口进行连接,得到采集处理模块的模块设计文件,并将模块设计文件部署至采集处理模块中,完成数据获取***的构建。本发明使用流处理节点构建数据获取***,无需对每个功能模块进行设计,构建的数据获取***中的流处理节点具有复用性,在对***进行调整或是修改时,无需重新进行设计,节省了大量的时间,并且本发明提供的构建数据***的构建方法,构建过程简单、不复杂且具有普遍性,降低了构建数据获取***的难度,使得专业性不强的人员也可使用本发明提供的方法构建所需的数据获取***。
参照图2,为本发明实施例提供的确定采集处理模块的跨模块接口节点的方法流程图,具体说明如下所述:
S201、确定所述采集处理模块的跨模块接口类型。
基于采集处理模块的物理层传输介质和接口类型,确定采集处理模块的跨模块接口类型,跨模块接口类型用于表征采集处理模块所需要的跨模块接口节点的类型。
S202、在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;若存在与所述跨模块接口类型对应的标准跨模块接口节点,则执行S203;若不存在与所述快模块接口类型对应的标准跨模块接口节点,则执行S204。
本发明实施例提供的方法中,标准跨模块接口节点库用于保存标准跨模块接口节点;本发明提供的方法中,无论采集处理模块之间的传输接口的物理层、链路层和传输层为何种方式,均将采集处理模块之间的传输接口都抽象为统一的模型,即跨模块接口节点的形式,其具体特征为:1、跨模块接口节点总是成对出现,分别位于有互连关系的两个采集处理模块上;2、每两个有互连关系的采集处理模块之间均包含一对跨模块接口节点;3、一对跨模块接口节点中可能具有多个不同方向的流传输通道;4、各个流传输通道之间的工作相互独立;5、跨模块接口节点中的每个流传输通道对其中传输的流数据帧来说是“透明”的,即对每一个流传输通道中传输的流数据帧,在其经过一对跨模块接口节点后,维持原有的接口方式和流数据帧格式不改变;6、跨模块接口节点中的端口使用相同的接口。
S203、将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点。
将与跨模块接口类型对应的标准跨模块接口节点作为采集处理模块的跨模块接口节点,并为该跨模块接口节点配置工作参数,使得跨模块接口节点可以根据工作参数进行工作。
进一步的,可对采集处理模块的功能信息、模块构建信息、模块互连信息以及端口应用信息进行解析,获得采集处理模块的跨模块接口节点信息,所述跨模块接口节点信息中包含节点位置和工作参数,可将获得的工作参数为跨模块接口节点进行配置,或是将工作参数配置至与跨模块接口类型对应的标准跨模块接口节点中,并将配置完工作参数的标准跨模块接口节点作为采集处理模块的跨模块接口节点。
S204、基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
当标准跨模块接口节点库中不存在与跨模块接口类型对应的标准跨模块接口节点时,根据采集处理模块的物理层传输介质和接口信息,构建与跨模块接口类型对应的跨模块接口节点,并将构建的跨模块接口节点作为标准跨模块接口节点保存至标准跨模块接口节点库中;进一步的,在将构建的跨模块接口节点作为采集处理模块的跨模块接口节点后,可采集处理模块的跨模块接口节点配置工作参数,使得采集处理模块的跨模块接口节点根据工作参数进行工作。
本发明中的跨模块接口节点根据在设计时使用的物理层传输介质和物力接口的不同,使用光纤、网线、双绞线、同轴电缆、计算机总线等连接与该节点具有连接关系的采集处理模块。
参照图3,为本发明实施例提供的确定采集处理模块对应的各个流处理节点的方法流程图,具体说明如下所述:
S301、获取所述采集处理模块的各个节点类型信息。
对采集处理模块的模块构建信息进行解析,以得到模块构建信息中所包含的各个节点类型信息,其中,每个节点类型信息对应一个流处理节点,节点类型信息中包含流处理节点的节点类型和工作参数信息。
S302、对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;若存在与所述节点类型信息对应的标准处理节点,则执行S303;若未存在与所述节点类型信息对应的标准处理节点,则执行S304。
采集处理模块的处理单元类型包括但不限于FPGA类型和CPU类型,不同的处理单元类型对应不同的标准节点库。
标准节点库中保存多个标准处理节点,其中,标准节点库中的标准处理节点既有传统的流处理***中常用的一些流向控制方面的节点,也有本方案特有的与数据获取过程相对应的一系列标准处理节点,本发明中特有的标准处理节点均具有以下特点:1)、节点中的接口均为标准化封装后的标准接口;
2)节点的功能均涉及和标准化接口协议定义有关的数据操作;3)均是通过对数据获取***中常见的基本数据处理过程的抽象,从而使得可以用有限种类的标准流处理接地那涵盖大部分数据获取***中的数据处理操作。
在确定标准节点库中是否存在与节点类型信息对应的标准处理节点时,可将节点类型信息遍历标准节点库中的各个标准处理节点,进而判断标准节点库中是否存在与节点类型信息对应的标准处理节点。
对标准节点库中包含的标准处理节点进行举例说明,具体如下所述:
1)、数据帧规格化节点(Regularizer),其特点为:节点的输入、输出端口均位于同一个数据域下,具有多个输入端口和一个输出端口。输出端口的输出为对所有输入端口输入的具有相同时间坐标的数据帧按照空间坐标依次发送,保持数据帧内容不变,事实上完成了对各个数据帧的空间排序;
2)、数据帧按时间/空间分发节点(Map_T,Map_S),其特点为:节点的输入、输出端口均位于同一个数据域下,具有一个输入端口和多个输出端口。在输入端口到来的每一个数据帧,节点根据其上级数据域时间偏移地址信息(按时间分发)或空间偏移地址信息(按空间分发),选择一个确定的输出端口输出,事实上完成了各个数据帧按照简单的哈希表达式(求模)进行的并行化操作。
3)、数据合并节点(Merge),其特点在于:节点的输入端口位于低级数据域内,包含了上级数据域的所有子数据域入口(可以是多个输入端口,也可以是经过Regularizer节点排序后的一个输入端口),输出端口位于上级数据域中。在节点内完成由多个低级数据域的数据帧合并出上级数据域数据帧的操作,基本实现算法为硬件或软件的桶装排序算法(对稠密数据组织情况)或归并排序(对稀疏数据组织情况),算法实现参数由两个数据域的属性决定;
4)、数据分发节点(Map),其功能刚好与Merge节点相反,其特点在于:节点的输入端口位于上级数据域内,输出端口分别连接到各个子数据域。节点通过数据帧中的空间地址信息决定数据帧的路由(输出端口位置),将输入的数据帧发送到对应的输出端口。请注意其功能与Map_T、Map_S节点的不同。
5)、数据特征提取节点(Feature extractor),这是一种以过滤器方式存在的流数据处理节点,输入为一个数据流,输出为一个状态流。其特点在于维护一个一维数组,数组长度与所在数据域的空间范围相同,用于存储对应空间坐标的数据特征,对于流经的数据流中的每一个数据,都和对应通道的数组存储进行一个二操作数操作,操作结果作为新的数组取值存入数组。可选的二操作数包括:替换(用于保存每个通道的最新数据更新)、数值求和(用于保存某通道的累计能量)、加1操作(用于保存某通道的累计数据个数)等。数组的数据作为状态流的起点,可以用于***运行状态的检测;
6)、触发节点(Trigger),这是一种以过滤器方式存在的流处理节点,其输入为一个数据流接口,一个命令流接口(或外部触发信号线),输出为一个数据流接口。工作时要求命令流以数据流当前数据域时间宽度为间隔定时发送触发命令帧,在节点内会接收触发命令帧,当触发命令帧为非空时(或触发信号线有有效信号时),选择当前触发命令流中的时间戳(或触发时刻)前后的确定时间范围(时间窗口)内的数据帧通过,用于实现数据获取***中的触发判选操作。
7)、命令分发节点(Map_CMD),位于FPGA物理节点,其主要功能为将接收到的命令转发至命令对象接收所在的路径;由命令流的广播节点、对其路径进行判断的过滤器节点构成和相应的编码器/译码器构成;输入为AXIS接口,输出为到下级节点的AXIS接口和到本地节点SDMF接口。
8)、命令反馈流合并节点(Reduce_CMD_FB),位于FPGA物理节点,其主要功能为汇总本地和后级的命令反馈流数据帧并向上级转发,由命令反馈流的复用器和相应的编码器/解码器构成。输入接口为来自下级物理节点的AXIS接口和来自本地节点的SDMF接口,输出接口为发往上级物理节点的AXIS接口。
9)、快照节点(Snapshot),位于软件节点,其主要功能是对一个流的输入数据帧保存一个最新的数据帧副本,供后端的监测***和数据分析***使用。
进一步的,在对各个标准处理节点描述中,所提及的输入端口和输出端口均为使用接口实现连接组件。
本发明实施例提供的方法中,标准节点库中包含的标准处理节点并不局限于上述举例的标准处理节点,还可以包含在FPGA内部用于AXIS接口和SDMF接口之间进行接口转换的编码/解码节点(decoder/encoder)、用于在软件进程间完成从字符型设备到SDMS接口之间转换的发送/接收节点(Transmit/Receive)、用于实现数据存储的存储节点(Save),和对标准协议帧进行实时刷新显示的显示节点(Display)、用于软件进程、共享内存和任务队列管理的进程管理节点(ProcessKeeper)、用于流向控制的各种节点,如流的广播(Broadcast)、多路复用/解复用(Mux/Demux)、多路选择切换(Switcher)等,用于数据缓存的FIFO,vFIFO(使用DDR构建的虚拟FIFO)等。
本发明实施例提供的方法中,各个标准处理节点都与所要构建的数据获取***所需要执行的数据处理任务相关,各个标准处理节点均为标准化的流处理节点,使用标准处理节点构建的数据获取***,可以以统一的方式完成数据信息提取、事例触发判断、事例组装(数据合并)等常见的在线数据处理。
S303、将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点。
本发明实施例提供的方法中,将与节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点,进一步的,可将节点类型信息中的工作参数信息作为该流处理节点的工作参数,以使该流处理节点基于工作参数进行工作。
S304、基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
在确定标准节点库中不存在与节点类型信息对应的标准处理节点时,确定节点类型信息对应的节点信息,并根据节点信息构建与节点类型信息对应的流处理节点,将节点类型信息中的工作参数信息配置为流处理节点的工作参数,并将配置后的流处理节点作为与采集处理模块对应的流处理节点;其中,节点信息中包含所要构建的流处理节点的节点类型、节点功能等信息。进一步的,在构建出流处理节点后,可将流处理节点作为标流准处理节点保存在标准节点库中。
本发明实施例提供的方法中,在构建数据获取***的过程中,可以直接使用标准节点库中的标准处理节点,标准节点库中不存在所需的标准处理节点时,可直接构建所需的标准处理节点,其构建简单易懂,具有极大的便利性,由此可以进一步提高构建数据处理模块的实用性和灵活性,并且,构建的标准处理节点具有复用性,无需重复多次构建相同的节点,进而提高了构建数据处理***的效率,简化了构建数据获取***的流程。
此处对采集处理模块中标准接口的标准化封装的过程进行说明,具体流程可参照图4,具体说明如下所述:
S401、对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型。
采集处理模块的处理单元类型包括但不限于FPGA类型和CPU类型。
S402、确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容。
在确定数据接口的数据域属性时,可根据数据接口的两端端口确定数据域属性,并根据确定的数据域属性,确定流数据帧参数以及流数据帧信息段内容。
流数据帧参数包括但不限于与采集处理模块对应的数据空间的属性信息以及数据接口所对应的数据域的属性信息;进一步的,这些数据接口的流数据帧参数决定了所要构建的数据获取***的流数据空间的时间和空间尺度、流数据空间下的元数据的具体格式和信息提取方式、流数据帧内的各个信息段的具体长度、元数据的组织方式等;其中,每个数据接口的流数据帧参数还决定了该数据接口传输的流数据帧中的数据块,以及和该数据接口相关联的数据接口所传输的流数据帧中的数据块之间的映射关系。
对流数据帧信息段进行说明,流数据帧信息段包括但不限于:数据帧头(StreamFrame Head)、数据帧长度(Stream Frame Length)、父数据域起始时间坐标(FatherDomain Start Time Index,当前数据域在上级数据域中的时间偏移地址,)、父数据域起始空间坐标(Father Domain Start Space Index,当前数据域在上级数据域中的空间偏移地址)、当前数据帧内包含的数据块个数(BlockNumber)、每个数据块的属性(BlockProperties)、各个数据块的数据净荷(Block Data)以及预留的帧尾(Stream Frame Tail)和带外数据(Outband Data,用户自定义信息字段)等内容;其中流数据帧头(Stream FrameHead)中包含但不限于:流ID、数据域编号、起始停止标准、空/非空标志等信息;所述数据块属性(Block Properties)包括但不限于:当前数据块在当前数据域内的起始时间地址(Start Time Index)和起始空间地址(Start Space Index),当前数据块的时间地址长度(Time Index Length)和空间地址长度(Space Index Length),数据块长度(BlockLength)等信息。
S403、对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模板,得到所述数据接口的标准流数据帧格式。
本发明实施例提供的方法中,基于数据接口的流数据帧参数以及流数据帧信息段,可将流数据帧参数和流数据段内容应用于预设的标准流数据帧格式模板,从而确定数据接口所传输的流数据帧的流数据帧格式,由此可对数据接口的流数据帧的数据结构进行定义。
流数据帧的流数据帧格式的定义中包含流数据帧格式中关于流数据帧信息段的定义、流数据帧信息段中关于数据块属性的定义以及流数据帧信息段中关于数据块的数据净荷的定义;具体的,流数帧的流数据帧格式的定义的内容包含数据帧头、数据帧长度、父数据域起始时间坐标、父数据域起始空间坐标、当前数据帧的数据块个数、数据块属性、数据块的数据净荷、带外数据、数据帧尾等。其中数据块属性可能包括当前数据块在当前数据域内的起始时间地址、当前数据块在当前数据域内的起始空间地址、当前数据块的时间地址长度、当前数据块的空间地址长度、数据块长度等数据数组以及数据等内容。数据块属性及其数据净荷的组织方式由不同的数据块类型决定。
参照图5,为本发明实施例提供的一种流数据帧的流数据帧格式的定义的示例图,换言之,图5也可称为流数据帧的标准协议帧格式的定义的示例图,如图所示,标准协议帧502由数据帧头、数据帧长度、父数据域起始时间坐标、父数据域起始空间坐标、数据块个数、带外数据、数据帧尾、多个数据块属性及其数据净荷组成,其中,数据块属性和数据净荷成对存在。
根据流描述的数据空间的具体特征,可以将数据块分为四种可能的类型,分别为“数据宽度固定、数据个数固定”类型、“数据宽度固定、数据个数变化”类型、“数据宽度变化”类型以及“子数据帧”类型;每种类型的数据块属性及其对应的数据净荷的结构定义如图5中的501和503所示。
“数据宽度固定、数据个数固定”类型代表的工作场景为:每个通道在每个时刻对应的数据具有固定的长度,由当前数据域内的一个确定长度的连续通道范围内的所有通道,在一个确定长度的时间范围内连续输出每一个时刻的数据构成数据块内的内容。此时数据净荷中包含确定个数的元数据,通过数据矩阵的方式进行组织,即按照通道顺序依次输出每个通道在有效时间范围内的每个元数据,所有的元数据依靠其在数据矩阵中的偏移位置来确定其在数据域内的时间坐标和空间坐标,而不需要显性地传输每一个数据的时间坐标和空间坐标信息。此时数据块属性可以用起始时间地址、时间地址长度、起始空间地址和空间地址长度来定义。
“数据宽度固定、数据个数变化”类型代表的工作场景为:每个通道在每个时刻对应的数据具有固定的宽度,但是在当前数据域的时间和空间范围内会有随机个数的通道在随机时刻输出数据。此时将数据域中的所有数据分成一个或多个数据块传输,每个数据块的数据净荷中包含按照通道和时间顺序依次输出的每个元数据,每个元数据由当前产生数据的通道在当前数据块内的空间地址、对应当前数据的时刻在当前数据块内的时间地址、以及数据内容拼接构成,每个元数据也具有一个确定的宽度。此时数据块的属性可以用当前块在数据域内的起始时间地址、起始空间地址以及数据块内的数据净荷总长度(数据块长度)来定义。
“数据宽度变化”类型代表的工作场景为:某个通道在某个时刻可能会有可变宽度的数据产生。此时将一个数据域对应的时空范围中的每个这样的数据作为一个单独的块处理,数据净荷为这一个变长数据,数据块的属性可以用当前数据在数据域内的起始时间地址、起始空间地址和数据块长度(即当前数据的宽度)来定义。
“子数据帧”类型代表的工作场景为:每一个数据块的数据净荷为其下级数据域内的一个完整的数据帧(子数据帧),此时数据块属性中仅仅包含当前子数据帧的长度信息(数据块长度),每个子数据帧在当前数据域内的时间地址偏移和空间地址偏移可以用子数据帧内部的父数据域起始时间坐标和父数据域起始空间坐标来描述。
进一步进行说明,数据接口所传输的流数据帧中是否包含某个信息段、已经包含的信息段的具体长度、数据块的具体组织方式等均有数据帧参数决定;其中,在同一个数据域下的流处理节点的数据接口之间所传输的流数据帧均使用相同的流数据帧格式,即在同一数据域下的数据接口之间所传输的流数据帧均采用相同的数据结构。
进一步的,随着流处理节点之间的数据接口的不同,流数据帧可能以串行的帧方式流动,而流数据帧的内部的信息段也可能以并行的方式存在于流处理节点的数据接口上。
S404、基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
本发明通过将数据接口进行标准化封装进而得到标准接口,通过应用标准接口,使得所要构建的数据获取***中所处理的数据帧具有标准的传输形式和处理方式。
本发明实施例提供的方法中,标准数据接口类型具体包含以下几种类型:
1)、AXI4-Stream接口(简称为AXIS接口),其中,该接口在FPGA内部,在流处理节点与外部接口的链路层接口之间进行数据传输时所采用的接口,用于传输标准的流数据帧;
2)、Standard D-Matrix FPGA interface接口(简称为SDMF接口),其中,该接口在FPGA内部,在两个流处理节点之间进行数据传输时所用的接口,该接口为自定义接口,其基本思想为在AXIS接口上进行封装,满足最快可以在一个时钟节拍处理一个数据的同时,将标准的流数据帧中的流数据帧信息段作为伴随数据的user数据段并行传输,以提高数据的并行处理能力;同时增加额外的信号用于传输在数据获取***中为保证数据驱动而设计的空数据帧;同时允许一个数据帧内包含多个数据块结构。
3)、文件描述符接口,该接口在计算机内部,该接口实质为软件类接口,该接口为在流处理节点与外部通信接口(驱动程序)之间进行数据传输时所用的接口,该通常采用标准的字符型设备的文件描述符(类似socket,管道和FIFO)来实现,以符合操作***内的一般做法;
4)、Standard D-Matrix Software interface(简称为SDMS接口),该接口在计算机内部,该接口为流处理节点之间进行数据传输时所用于的接口,该接口为自定义接口,其基本设计思想为任务队列+共享内存型的接口,将各个流处理节点设计为计算机内部进程的方式,使用共享内存完成数据交换,使用任务队列负责进程之间的流数据帧处理任务传递,以减小不必要的数据复制开销。
本发明实施例提供的方法中,上述的四种类型的数据接口中,除了与流跨界点传输有关的流处理节点外,主要负责数据处理的流处理节点的各个数据接口都采用SDMF接口或SDMS接口。
本发明实施例提供的方法中,对SDMF接口在实际应用的过程中涉及的信号的定义进行说明,具体如表1所示:
Figure BDA0003115319780000261
Figure BDA0003115319780000271
表1
其中,SDMF接口在传输数据帧时,数据帧有非空数据帧与空数据帧两种情形,而SDMF接口传输非空数据帧与传输空数据帧时的工作时序是不同。
本发明实施例提供的方法中,在对数据接口进行标准化封装时,需要将与数据接口的接口类型所对应的接口模型封装至数据接口中,以完成数据接口的标准化封装,得到与数据接口对应的标准接口;其中,封装至数据接口的接口模型为多路点到点接口模型。
对多路点到点接口模型进行说明,多路点到点接口模型的模型示意图如图6所示,多路点到点接口模型中包含上行传输层和下行传输层,上行传输层中包含过个上行传输通道,下行传输层中同样也包含多个下行传输通道。在该多路点到点模型下,数据接口中传输的每一个流,在模型中都表现为一对透明的输入/输出接口对,各个流之间从逻辑上彼此独立,其中,数据接口中传输的每个流对应一个数据传输通道。通过在数据接口中封装多路点到点模型,除了保证传输的正确性、各个流具备合理的调度机制外,还要求各个流之间通过此数据接口具备阻塞特性,即当数据接收端不能接收数据(阻塞)时,应通过适当的数据缓存和通知机制使得发送端停止发送,直到阻塞状态结束为止。此外,如果***在某些流有数据压缩等方面的需求,也通过在发送端和接收端加入成对出现的压缩/解压缩模块来实现。
本发明实施例提供的方法中,为了方便多种不同的流复用同一物理通道进行数据传输,本发明中将各种不同的接口封装为同样的模型,从而将数据获取***中的数据传输过程和数据处理过程分离。
本发明实施例提供的方法中,通过对流处理节点的每个数据接口进行预处理,以对每个数据接口的接口进行定义以及数据接口所传输的流数据帧的格式进行定义,使得具有相同的接口定义和流数据帧的格式定义的数据接口所传输的数据帧具有相同的特性,使得这样的数据接口可以相互连接,使得在使用流处理节点构建数据处理模块时的灵活性更高。
在实际应用中,多路点对点接口模型根据实际数据接口的情况添加不同的设计,本发明中,所构建的数据获取***中上行信道(数据流/状态流/报错流)数据率远远大于下行信道(命令流)中的数据率,在下行方向仅仅进行简单地数据缓存,不考虑下行数据阻塞时的出错处理;在上行方向中,通过增加成对出现的数据反压通知/数据反压响应节点,结合数据缓存实现上行信道中各个流的阻塞特性。同时根据各个流的具体传输需求不同,选择性的添加数据帧校验码产生/数据帧校验码检查、数据帧拆分/重组、数据压缩/解压缩、通道仲裁/分发等节点。基于上述的内容,本发明提供一种多路点到点接口模型的内部实现框图,具体如图7所示,图中所示的是在一个仅仅包含基本物理层/链路层接口的光纤信道上的模型实现框图,图中包含多个组件,其中,数据压缩和数据解压缩为可选组件,在不同的数据传输层选用不同的组件。图中的各个组件的接口均为统一的AXIS接口,通过选择性的将组件添加在不同的传输路径上,从而为不同流的数据传输提供多种标准化的组件,最终保证了跨物理节点之间的透明连接。图中均采用统一的标准的AXIS接口,因此对于在构建数据获取***中可能用到的不同接口(光纤、差分电缆、网口等),均可以通过替换其中用到的物理层和链路层模块实现对不同接口的支持,从而不影响对数据获取***的其他部分的设计。
在构建数据获取***的过程中,需要将采集处理模块所对应的各个流处理节点和跨模块接口节点进行连接,具体流程图可参照图8,针对图8的说明如下所述:
S801、对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息。
节点信息是对采集处理模块的模块构建信息进行解析得到的,节点信息中包含流处理节点的节点类型、工作参数以及连接信息等信息。
S802、对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口。
S803、对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集模块内,则执行S804;若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则执行S805。
针对不同类型的流处理节点提供不同的连接方式,其中,流处理节点的节点类型可分为两种,一种是以FPGA模块形式存在的流处理节点,另一种是以软件进程形式存在的流处理节点。
以FPGA模块形式存在的流处理节点的端口的连接方式是生成一个FPGA顶层设计文件,在FPGA顶层设计文件中使用信号直接连接需要连接的FPGA模块形式的流处理节点,最终得到一个完整的顶层设计文件。
以软件进程形式存在的流处理节点的连接方式是使用进程间通讯的方式,通过在需要连接的流处理节点中引用相同的共享资源,如共享内存、信号量或消息队列等的形式完成连接。
软件进程形式的流处理节点之间通过SDMS接口连接,SDMS接口使用共享内存作为数据存储的容器,使用标准消息队列作为节点间任务传递的通道。同一物理节点内部不同进程通过访问同一片内存中的数据帧,实现数据交互,可以减少数据在物理节点内部流动时所带来的复制开销。在共享内存管理采用内存池的管理方式,物理节点初始化时首先申请一大片连续内存,并分成key_shm和aux_shm两部分,各节点使用类似内核malloc分配内存的申请方式从内存池中申请共享内存使用。共享内存池分为如下两个子池:1)数据共享内存key_shm,用于存储各个流中标准数据帧;2)索引共享内存aux_shm,用于存储一个数据帧的索引信息。
本发明中的索引贡献内存的数据格式包含数据帧的总体描述信息、数据块列表以及通道列表;其中,数据块列表中包含至少一个数据块,通道列表中包含至少一个通道。本发明中的索引贡献内存还包含FrameDescriptor结构体,BlockDescriptor结构体以及Struct Channel Descriptor结构体;其中,FrameDescriptor结构体用于保存对于一个数据帧的总体描述信息;BlockDescriptor结构体用于保存对数据块的描述信息。
进一步的,关于索引共享内存的数据格式如图9所示,参照图9,索引共内存的数据格式由帧描述符901、块描述符链表902以及通道描述符链表903组成,其中,块描述符链表902中包含4个数据块的描述符,分别为数据块1描述符、数据块2描述符、数据块3描述符以及数据块4描述符;通道描述符链表903中包含每个通道的多个描述符,具体为每个通道有两个描述符,如图具体包含通道1的1号描述符和2号描述符,通达2的1号描述符和2号描述符。
进一步的,帧描述符901由FrameDescriptor结构体904构成,FrameDescriptor结构体904用编码编写得到,FrameDescriptor结构体904的编码内容如下所示:
Figure BDA0003115319780000311
块描述符链路表中的数据块的描述符由BlockDescriptor结构体905构成,BlockDescriptor结构体905使用编码编写定义而成,以数据块2描述符中的BlockDescriptor结构体905进行示例说明,BlockDescriptor结构体905的编码内容如下所示:
Figure BDA0003115319780000312
通道描述链表中的通道描述符由ChannelDescriptor结构体903构成,ChannelDescriptor结构体903由编码编写定义而成,以通道描述链路表中的通道1的2号描述符中的ChannelDescriptor结构体903进行示例性的说明,ChannelDescriptor结构体903的编码内容如下所示:
Figure BDA0003115319780000321
以上内容为基于图9对索引共享内存的数据格式进行说明的内容。
进一步的,节点间传输接口采用消息队列,队列底层实现方式可以同样是基于共享内存和同步原语(信号量等)的队列,也可以采用采用boost.mqueue。接口处是标准的单生产者单消费者模型,前一节点将FrameDesc起始地址的aux_shm_addr类型的task投入队列,后续节点从队列中取出task,访问aux_shm中FrameDesc和BlockDesc完成进一步的数据帧解析。
S804、在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接。
S805、对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
本发明中的流处理节点的端口通过调用标准化封装的标准接口与和该端口存在连接关系的端口进行连接,使得流处理节点可与和该流处理节点存在连接关系的流处理节点进行连接;本发明中的端口与端口相连时,端口中需采用同种类型的标准接口。
本发明实施例提供的方法中,以构建一个用于海上时移地震的数据获取***为例进行说明,其中,所要构建的海上时移地震的数据获取***的数据处理模块有三部分,分别为水下拖缆***、数据汇总单元和数据显示记录单元。
当接收到用户发送的用于构建数据获取***的构建请求时,响应于该构建请求,其中,该构建请求用于构建海上时移地震的数据获取***。确定与构建请求对应的采集处理模块,其中,采集处理模块可为构建数据获取***的基本模块,该模块用于采集电信号,其中,采集处理模块可以为探测器***,进一步的,此处的探测器***可称为流数据源模块,探测器***有不同的组织和连接关系,往往会在空间上表现出不同的层次关系,不同的层次下具有不同的组织粒度;例如:某探测器***中一个前端电子学芯片负责读出32个通道的数据,一个前端电子学插件中包含4个这样的芯片(128通道/插件),一个机箱中包含8个前端电子学插件(1024通道/机箱),整个子探测器***可能包含8个机箱(8192通道/***)。而流数据源模块除了在空间上表现出不同的层次外,基于流数据源模块的空间的层次关系,采集的时间范围也有不同的层次关系;流数据源模块将这些层次关系反应到数据组织中,使得流数据源模块采集的数据流具有相关的层次关系的数据空间,其中,数据空间中存在具有嵌套层次的数据域,每个数据域代表了不同是数据空间范围和数据时间组织粒度,每个数据域内的数据均有着自己的时间空间范围,定义为数据域空间。数据域空间的引入主要是为了通过减少数据关联的时间和空间信息段大小,从而达到压缩数据率的目的。数据域的划分和流数据源模块的组织、信息处理的时间尺度等物理因素有关。
参考图10,为本发明提供的流数据源模块所采集的电子信号所形成的数据流中的数据空间和数据域的关系的一示例图,图中的1001为元数据,图中的1002、1003以及1004均为数据域;图中共有8个数据域1002;2个数据域1003,一个数据域1004;其中,各个元数据1001构成第一层级的数据层1;8个数据域1002构成第二层级的数据层2;2个数据域1003构成第三层级的数据层3;一个数据域1004构成第三层级的数据层3;其中,数据层1的层级低于数据层2的层级,数据层2的层级低于数据层3的层级;如图,每个数据域1002中包含8个元数据,每个数据域1002中包含的元数据是不相同的。如图10可知,流数据源模块的数据空间和数据域存在以下特点:
a)每个数据域空间均由一个(最底层数据域)或多个子数据域空间拼接而成;
b)子数据域空间必完全包含于一个更高层次的数据域内,不允许子数据域空间同时包含在多个同层的上级数据域内;
c)不允许一个子数据域中的数据拆分后分别位于多个同层的上级数据域内。当需要进行上述操作时,应通过流过滤器生成一个新的流数据空间来实现;
d)父数据域空间由子数据域空间的拼接是二维的,即子数据域空间可能在时间和空间两个维度上的粒度都与父数据域不同。原则上,父数据域在时间和空间维度上包含的子数据域的个数应为2的整数次幂;其中,父数据域和子数据域是相对的,如图10所示,以一个数据域1003所示,数据域1003为数据域1002的父数据域,其中,数据域1003中的各个数据域1002为数据1003的子数据域;
e)整个数据空间可以被看做最顶层数据域。
在确定与流数据源模块对应的数据空间后,获取该数据空间的数据结构信息,以及获取构建请求中的***功能信息,基于数据接口信息和***功能信息,生成各个模块构建信息,其中,模块构建信息分别为构建水下拖缆***、数据汇总单元、数据显示记录单元的信息,对构建成的水下拖缆***、数据汇总单元以及数据显示记录单元进行说明。
参照图11,为构建的水下拖缆***的采集单元的实现框图,需要说明的是,水下拖缆***由多个采集单元连接组成。如图所示,采集单元由工作状态传感器读出节点、SDMF编码器节点(还可称为SDMF_encoder节点)、多路复用器节点(还可称为MUX节点)、命令反馈流合并节点(还可称为Reduce_CMD_FB节点)、命令广播节点(还可称为Map_CMD节点)、传输层接口节点、ADC读出节点、规格化节点(还可称为Regularizer节点)、SDMF解码器节点(还可称为SDMF_decoder节点)以及合并节点(还可以称为Merge节点)连接构成,其中,传输层接口节点支持8B/10B编码、校验以及反压控制等功能,工作状态传感器读取节点用于读取温度、电压等参数,其中,ADC读出节点与ADC数据接口相连接,图中与SDMF解码器节点连接的传输层接口节点与后级采集单元相连接或与数据汇总单元相连接,与SDMF编码器节点连接的传输层接口节点与前级采集单元相连接。采集单元中有四种流,分别为状态流、命令反馈流、命令流以及数据流,其中,由于节点处理数据任务的特性,节点中应用到的接口有所不同,不同的接口应用不同的定义以及传输的流的格式有所不同,图中不同的接口输出的流用不同的箭头表示,如图所示,AXI4-Stream接口和SDMF接口均存在与其对应的状态流、命令反馈流、命令流和数据流。
具体的,如图所示,在采集单元内,命令流由上级节点被Map_CMD节点广播至本地各个需要命令控制的节点和下级节点,同时Reduce_CMD_FB节点收集本地各个节点和后级采集单元发送的命令反馈流数据帧并向前级转发。
数据流来自ADC读出节点以及与后级采集单元连接的传输层接口节点,在每个采集单元内包含两个ADC读出节点,每个ADC读出节点负责与ADC数据接口和ADC控制接口相连,其中,ADC数据接口与ADC控制接口可为流数据源模块的接口;来自两个ADC数据接口的数据流经过Regularizer节点进行空间排序后进入Merge节点完成数据合并,此时数据域由ADC级数据域变换为采集单元级数据域。在采集单元级数据域下,第二个Regularizer节点将本地数据帧和来自后级采集单元的数据帧进行空间排序后上传。这样来自各个采集单元的数据帧被逐级上传,汇总成整条拖缆的数据流。
在采集单元内,状态流来自单独的工作状态传感器读出节点,由于状态流以采集单元为单位进行上传,不需要进行数据合并,因此简单地将本地状态流与后级状态流复用后上传。
图中所示的ADC读出节点为一种传感器读出节点,可根据实际需求进行设置,参照图12,为本发明提供的一种传感器读出节点的模型示意图,传感器读出节点作为数据获取***中数据流的起点和命令流的终点,图中所示的传感器读出节点的模型示意图中所有流对外的接口均使用SDMF接口,图中的寄存器器件配置***控制用于根据时间戳维护时间分配的时钟/秒脉冲信号控制流的产生,例如产生状态流、数据流、报错/命令反馈流以及其他流等,流调度用于输出产生的流。本发明提供的传感器读取节点中至少具备一个命令流(下行),一个数据流(上行),一个命令反馈流(用于传输对命令的响应信息,上行)。
参照图13,为本发明实施例提供的数据汇总单元的实现框图,由图所示,数据汇总单元由传输层接口节点、数据缓存节点(还可称为vFIFO节点)、SDMF编码器节点(还可称为SDMF_decoder节点)、多路复用器节点(还可称为MUX节点)、规格化节点(还可称为Regularizer节点)、命令反馈流合并节点(还可称为Reduce_CMD_FB节点)、命令广播节点(还可称为Map_CMD节点)、SDMF广播节点(还可称为SDMF_broadcast节点)、特征提取节点(还可称为Feature_extractor节点)、触发过滤器节点(还可称为Trigger节点)以及合并节点(还可以称为Merge节点)连接而成。
图中与数据缓存节点连接的传输层接口用于与水下拖缆***连接,其中,一个传输层接口节点连接一个水下拖缆***,此处的传输层接口节点支持8B/10B编码、校验以及反压控制等功能;与SDMF编码器节点连接的传输层接口节点用于与数据显示记录单元相连接,此处的传输层接口节点可作为PCI-E接口和DMA控制器,并且还支持8B/10B编码、校验、反压控制以及数据帧拆分/组装等功能。
数据汇总单元中包含状态流、命令反馈流、命令流、监控流以及数据流,其中,由于节点处理数据任务的特性,节点中应用到的接口有所不同,不同的接口应用不同的定义以及传输的流的格式有所不同,图中不同的接口输出的流用不同的箭头表示;如图所示,SDMF接口存在与其对应的状态流、命令反馈流、命令流、监控流以及数据流,AXI4-Stream接口存在与其对应的状态流、命令流、监控流以及数据流;图中所示的数据汇总单元中负责与四路水下拖缆***进行信息交换和数据汇总。其中,对于命令流、命令反馈流和状态流,不需要进行数据处理,在数据汇总单元中仅仅进行简单的通道复用或分发。而对于数据流,在数据汇总单元内将来自各个水下拖缆的数据流在缓存后经过Regularizer节点规格化,并将经过空间排序后的数据帧发向两个处理节点。在特征提取节点中,对数据帧中的数据抽取出每个通道中的最新数据,作为监控流发送给软件,供监测拖缆运行状态(振子图)使用。在另一路中,根据枪控信号来控制Trigger节点输出待记录的时间窗口内的所有数据帧。由于缓存空间的限制,在数据汇总单元内并不能完全缓冲一个触发窗口内的所有数据,在Merge节点中选择一个合适数据域时间范围对这些数据帧进行合并,最终发送到数据显示记录单元供数据记录使用。
参考图14,为本发明实施例提供的数据显示记录单元的实现框图,如图所示,数据显示记录单元由传输层接口节点、接收节点(还可称为Receive节点)、发送节点(还可称为Transmit节点)、广播节点(还可称为Broadcast节点)、显示节点(还可以称为Display节点)、合并节点(还可以称为Merge节点)、错误检查节点(还可称为Error Check节点)、进程管理器节点(还可以称为Process Keeper)、回读节点(还可以称为Load节点)、命令广播节点(还可称为Map_CMD节点)、多路切换节点(还可称为Switcher节点)、存储节点(还可以称为Save节点)、命令控制台节点(还可以称为CMD Console节点)、FFT变换节点以及结果分析节点连接组成。
数据显示记录单元通过传输层接口接口与数据汇总单元相连接,在数据显示记录单元中包含状态流、监控流、命令反馈流、命令流以及数据流,不同的节点所应用的接口的类型不同,输出的流的格式以及定义也有所不同,如图所示,SDMS接口以及文件描述符接口都存在与其对应的状态流、数据流、监控流以及命令流。如图所示,状态流和监控流被直接接入显示节点,显示当前***的工作状态,但是状态流中的错误信息会被报告给命令控制台完成相应的出错处理。同时,命令控制台也作为命令流的起点和命令反馈流的终点。对于数据流,需要进行第三级数据合并,最终得到每次触发对应的时间窗口内的全部数据。这些数据在进行保存的同时,还需要发往数据质量分析模块(FFT,结果分析)供质量控制使用。
将水下拖缆***、数据汇总单元以及数据显示记录单元连接,即可完成海上时移地震的数据获取***的构建,本发明实施例提供的水下拖缆***、数据汇总单元以及数据显示记录单元中,绝大部分用到的流处理节点均为标准的流处理节点(图中为实线的节点),例如水下拖缆***的采集单元中的命令广播节点,数据汇总单元中的规格化节点以及数据显示记录单元中的多路切换节点;在构建数据获取***中,仅需要根据设计处理需求和面向的传感器接口,针对性的设计若干定制模块,例如ADC读出节点、工作状态读出节点、错误检查节点、相应的结果分析和处理节点(FFT变换节点,结果分析节点)以及和***工作流程对应的命令控制台节点,就可以完成数据获取***的设计及构建;采用本发明提供的方法,大大简化了数据获取***的设计过程,使得构建数据获取***更加简便,并且,本发明中采用了相同的接口和通信协议,定制的节点可以通过简单修改后应用于类似的数据获取***的设计和构建中,本发明所提供的数据获取***的构建方法具有良好的泛化能力和具有良好的通用性。
本发明提供的方法中,通过将数据的实时采集、传输、处理、监控和***控制过程抽象为一系列流处理节点的级联和组合。这些节点之间采用标准的接口方式和标准的流数据帧格式,具有硬件(FPGA内逻辑模块)或软件(计算机进程)两种实现方式,同一数据域下的流处理节点可以任意地连接。在进行数据获取***的设计和构建时,通过将数据获取***中的各个流的基本处理方法抽象为一系列标准的流处理节点,在保证***对数据的实时处理能力的前提下,提高模块的复用性,减少设计工作量,加速整个数据获取***的设计与实现。
同时,本发明提供的方法也是一套开放的数据获取***标准框架。通过提供开放的接口和协议供用户使用,用户可以通过添加自定义的传感器前端电子学读出节点和个性化的数据处理节点来实现面向各种常见应用场景的数据获取和实时数据处理需求,具备良好的通用性和可扩充性能。
应用本发明实施例提供的方法构建数据获取***,通过采用标准化的流处理节点的连接,构建具有触发判选、合并、传输、存储、显示等常见的各项功能的数据获取***,加快了数据获取***的开发速度。使用本发明提供的方法构建数据获取***,在面对数据获取***的通道数的增加、集成度的增加、使用高速的传输接口等升级改造,只要数据获取***的底层的传感器采集模块不发生变化,可以利用各种标准化的流处理节点构建更大规模的数据获取***,从而方便地完成通道数和***集成度增加方面的升级改造。在增加对新传输接口的支持单元后,也可以无缝地替代原有的传输接口,由此可以完成高速传输接口方面的升级改造,从而简化了数据获取***的升级改造过程。并且,应用本发明提供的方法构建的数据获取***,各个流处理节点之间采用标准的传输接口和数据帧协议,因此具备任意连接的特性,因此通过对各个流处理节点的输入、输出端口增加模拟数据源、数据协议检查、数据帧显示、存储等调试节点即可以方便地进行单个节点的调试,在各个流的路径上也可以方便的***各种调试节点,从而大大简化了***的调试过程。本发明提供的构建数据获取***的方法在应用时不要求用户需要有很专业的设计能力和具有很专业的知识,可以通过简单的模块的连接的方式自由定制数据获取***,由此方便用户的使用。
与图1所示的方法相对应的,本发明实施例提供一种数据获取***的构建装置,该装置可应用于构建数据获取***的计算机装置或平台中,本发明提供的装置的结构示意图如图15所示,具体说明如下所述:
响应单元1501,用于响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;
抽象单元1502,用于根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流;
第一确定单元1503,用于基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息;
第二确定单元1504,用于对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高;
第三确定单元1505,用于对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息;
生成单元1506,用于对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息;
第四确定单元1507,用于对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接;
连接单元1508,用于对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
本发明实施例提供的装置中,响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;根据各个采集处理模块的模块信息和模块互连信息,抽闲出数据获取***中包含的各种工作流;基于每种工作流的通道数量和工作时间长度,确定每种工作流中传输数据的数据空间信息;对于每种工作流,确定工作流的数据处理方式以及接口应用信息,所述接口应用信息中包含工作流所流经的每个采集处理模块为工作流提供的接口的接口信息;基于工作流的数据空间信息、接口应用信息以及数据处理方式信息,确定工作流的处理路径中包含的各个数据域;对于每种工作流,将工作流所流经的每个采集处理模块均确定为目标模块,以及确定工作流的数据域信息;根据工作流的接口应用信息、数据处理方式信息、数据域信息以及每个目标模块的模块信息和模块互连信息,确定与工作流对应的每个流处理节点所对应的目标模块,并确定每个流处理节点在与其对应的目标模块中的位置信息;对于每个采集处理模块,确定与该采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成采集处理模块的模块构建信息;确定采集处理模块的块模块接口节点,基于跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将该采集处理模块与其存在连接关系的采集处理模块相连接;根据采集处理模块的模块构建信息,确定与采集处理模块对应的每个流处理节点的节点信息,基于每个流处理节点的节点信息,使用标准化封装后的标准接口将采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与采集处理模块对应的模块设计文件,并将该模块设计文件部署至采集处理模块中,进而完成数据获取***的构建。应用本发明,响应于用户发送的用于构建数据获取***的构建请求,确定与构建请求对应的采集处理模块的模块信息和模块互连信息,抽象出数据获取***中的各个工作流,基于每种工作流中所传输的数据空间信息,确定每种工作流的处理路径中的数据域信息,最终确定每个采集处理模块的模块构建信息;基于模块构建信息和跨模块接口节点将存在连接关系的采集处理模块相连接;将每个采集处理模块中的流处理节点和跨模块接口节点使用标准化封装后的标准接口进行连接,得到采集处理模块的模块设计文件,并将模块设计文件部署至采集处理模块中,完成数据获取***的构建。本发明使用流处理节点构建数据获取***,无需对每个功能模块进行设计,构建的数据获取***中的流处理节点具有复用性,在对***进行调整或是修改时,无需重新进行设计,节省了大量的时间,并且本发明提供的构建数据***的构建方法,构建过程简单、不复杂且具有普遍性,降低了构建数据获取***的难度,使得专业性不强的人员也可使用本发明提供的方法构建所需的数据获取***。
本发明实施例提供的装置,所述第四确定单元1507,可配置为:
第一确定子单元,用于确定所述采集处理模块的跨模块接口类型;
第一判断子单元,用于在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;
第二确定子单元,用于若存在与所述跨模块接口类型对应的标准跨模块接口节点,则将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点;
构建子单元,用于若不存在与所述跨模块接口类型对应的标准跨模块接口节点,则基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
本发明实施例提供的装置,所述生成单元1506,可配置为:
获取子单元,用于获取所述采集处理模块的各个节点类型信息;
第二判断子单元,用于对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;
第三确定子单元,用于若存在与所述节点类型信息对应的标准处理节点,则将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点;
第二构建子单元,用于若未存在与所述节点类型信息对应的标准处理节点,则基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
本发明实施例提供的装置,还可配置为:
第五确定单元,用于对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型;
第六确定单元,用于确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容;
输入单元,用于对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模块,得到所述数据接口的标准流数据帧格式;
获取单元,用于基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
本发明实施例提供的装置,所述连接单元1508,可配置为:
解析子单元,用于对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息;
第四确定子单元,用于对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口;
第三判断子单元,用于对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;
第一连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集处理模块内,则在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接;
第二连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***或***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的***及***实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种数据获取***的构建方法,其特征在于,包括:
响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;
根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流;
基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息;
对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高;
对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息;
对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息;
对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接;
对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
2.根据权利要求1所述的方法,其特征在于,所述确定所述采集处理模块的跨模块接口节点,包括:
确定所述采集处理模块的跨模块接口类型;
在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;
若存在与所述跨模块接口类型对应的标准跨模块接口节点,则将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点;
若不存在与所述跨模块接口类型对应的标准跨模块接口节点,则基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
3.根据权利要求1所述的方法,其特征在于,所述确定与所述采集处理模块对应的各个流处理节点,包括:
获取所述采集处理模块的各个节点类型信息;
对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;
若存在与所述节点类型信息对应的标准处理节点,则将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点;
若未存在与所述节点类型信息对应的标准处理节点,则基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
4.根据权利要求1所述的方法,其特征在于,标准接口的标准化封装的过程,包括:
对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型;
确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容;
对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模板,得到所述数据接口的标准流数据帧格式;
基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
5.根据权利要求1所述的方法,其特征在于,所述基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,包括:
对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息;
对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口;
对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;
若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集处理模块内,则在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接;
若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
6.一种数据获取***的构建装置,其特征在于,包括:
响应单元,用于响应于用户发送的用于构建数据获取***的构建请求,确定所要构建的数据获取***中所包含的各个采集处理模块的模块信息和模块互连信息;
抽象单元,用于根据各个所述采集处理模块的模块信息和模块互连信息,抽象出所述数据获取***中包含的各种工作流;
第一确定单元,用于基于每种所述工作流的通道数量和工作时间长度,确定每种所述工作流中所传输数据的数据空间信息;
第二确定单元,用于对于每种所述工作流,确定所述工作流的数据处理方式信息以及接口应用信息,所述接口应用信息中包含所述工作流所流经的每个采集处理模块为所述工作流提供的接口的接口信息;基于所述工作流的数据空间信息、所述接口应用信息以及所述数据处理方式信息,确定所述工作流的处理路径中包含的各个数据域,其中,所述数据域为工作流在处理过程中具有相同流数据帧粒度的数据区域,所述数据域的等级随着流数据帧粒度的增大而升高;
第三确定单元,用于对于每种所述工作流,将所述工作流所流经的每个采集处理模块均确定为目标模块,并确定所述工作流的数据域信息,所述数据域信息中包含与所述工作流对应的每个流处理节点所处的数据域的属性信息;基于所述工作流的接口应用信息、数据处理方式信息、数据域信息以及每个所述目标模块的模块信息和模块互连信息,确定与所述工作流对应的每个流处理节点所对应的目标模块,并确定每个所述流处理节点在与其对应的目标模块中的位置信息;
生成单元,用于对于每个所述采集处理模块,确定与所述采集处理模块对应的各个流处理节点,基于每个流处理节点的位置信息,生成所述采集处理模块的模块构建信息;
第四确定单元,用于对于每个所述采集处理模块,确定所述采集处理模块的跨模块接口节点,基于所述跨模块接口节点,确定与该采集处理模块存在连接关系的采集处理模块,并将所述采集处理模块与其存在连接关系的采集处理模块相连接;
连接单元,用于对于每个所述采集处理模块,根据所述采集处理模块的模块构建信息,确定与所述采集处理模块对应的每个流处理节点的节点信息,基于每个所述流处理节点的节点信息,使用标准化封装后的标准接口将所述采集处理模块的各个流处理节点和跨模块接口节点进行连接,得到与所述采集处理模块对应的模块设计文件,将所述模块设计文件部署至所述采集处理模块中,以完成与所述构建请求对应的数据获取***的构建。
7.根据权利要求6所述的装置,其特征在于,所述第四确定单元,包括:
第一确定子单元,用于确定所述采集处理模块的跨模块接口类型;
第一判断子单元,用于在预设的标准跨模块接口节点库中判断是否存在与所述跨模块接口类型对应的标准跨模块接口节点;
第二确定子单元,用于若存在与所述跨模块接口类型对应的标准跨模块接口节点,则将与所述跨模块接口类型对应的标准跨模块接口节点作为所述采集处理模块的跨模块接口节点;
构建子单元,用于若不存在与所述跨模块接口类型对应的标准跨模块接口节点,则基于所述采集处理模块的物理层传输介质和接口信息,构建所述采集处理模块的跨模块接口节点。
8.根据权利要求6所述的装置,其特征在于,所述生成单元,包括:
获取子单元,用于获取所述采集处理模块的各个节点类型信息;
第二判断子单元,用于对于每个所述节点类型信息,在与所述采集处理模块的处理单元类型对应的标准节点库中,确定是否存在与所述节点类型信息对应的标准处理节点;
第三确定子单元,用于若存在与所述节点类型信息对应的标准处理节点,则将与所述节点类型信息对应的标准处理节点作为与所述采集处理模块对应的流处理节点;
第二构建子单元,用于若未存在与所述节点类型信息对应的标准处理节点,则基于与所述节点类型信息对应的节点信息,构建与所述节点类型信息对应的流处理节点,并将构建的流处理节点作为与所述采集处理模块对应的流处理节点。
9.根据权利要求6所述的装置,其特征在于,还包括:
第五确定单元,用于对于所述采集处理模块中的每个数据接口,确定每个所述数据接口所处的采集处理模块的处理单元类型;
第六确定单元,用于确定每个所述数据接口的数据域属性,基于每个所述数据接口的数据域属性,确定每个所述数据接口的流数据帧参数以及流数据帧信息段内容;
输入单元,用于对于每个所述数据接口,将所述数据接口的流数据帧参数和流数据帧信息段内容应用于预设的标准流数据帧格式模块,得到所述数据接口的标准流数据帧格式;
获取单元,用于基于每个所述数据接口的标准数据接口类型、工作参数以及标准流数据帧格式,将每个所述数据接口进行标准化封装,得到与每个数据接口对应的标准接口。
10.根据权利要求6所述的装置,其特征在于,所述连接单元,包括:
解析子单元,用于对每个所述流处理节点的节点信息进行解析,得到每个所述流处理节点的节点类型和连接信息;
第四确定子单元,用于对于每个所述流处理节点,基于所述流处理节点的连接信息,确定所述流处理节点的每个端口所对应的目标连接节点的目标端口,所述目标连接节点为与所述流处理节点存在连接关系的流处理节点,所述目标端口为所述目标连接节点中与所述流处理节点连接的端口;
第三判断子单元,用于对于每个所述流处理节点中的每个端口,基于所述端口所处的流处理节点的节点类型确定所述端口的连接方式,确定所述端口所对应的目标连接节点与所述端口所处的流处理节点是否均处于同一采集处理模块内;
第一连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点未处于同一采集处理模块内,则在标准转换模块中确定与所述端口对应的标准端口,将所述端口和与所述端口对应的标准端口之间的接口进行标准化封装,基于所述端口的数据域属性确定标准转换模块的工作参数后,使用所述标准转换模块应用所述端口的连接方式将所述端口与跨模块接口节点连接,使得所述端口通过所述跨模块接口节点与该端口所对应的目标端口相连接;
第二连接子单元,用于若所述端口所对应的目标连接节点与所述端口所处的流处理节点处于同一采集处理模块内,则对所述端口和所述端口所对应的目标端口之间的接口进行标准化封装,以得到标准接口,通过所述标准接口应用所述端口的连接方式,使得所述端口和所述端口所对应的目标端口相连接。
CN202110661714.7A 2021-06-15 2021-06-15 数据获取***的构建方法及装置 Active CN113312394B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110661714.7A CN113312394B (zh) 2021-06-15 2021-06-15 数据获取***的构建方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110661714.7A CN113312394B (zh) 2021-06-15 2021-06-15 数据获取***的构建方法及装置

Publications (2)

Publication Number Publication Date
CN113312394A CN113312394A (zh) 2021-08-27
CN113312394B true CN113312394B (zh) 2022-09-06

Family

ID=77378956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110661714.7A Active CN113312394B (zh) 2021-06-15 2021-06-15 数据获取***的构建方法及装置

Country Status (1)

Country Link
CN (1) CN113312394B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114491611B (zh) * 2022-04-15 2022-06-21 广州万协通信息技术有限公司 基于备份数据的安全芯片防攻击方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107819693A (zh) * 2016-09-12 2018-03-20 北京百度网讯科技有限公司 用于数据流***的数据流处理方法及装置
CN108063799A (zh) * 2017-11-25 2018-05-22 中国商用飞机有限责任公司 一种串行分布式模拟量机载采集***
CN108833562A (zh) * 2018-06-26 2018-11-16 南通森雅商务服务有限公司 一种基于http数据流的传输管理***
CN109375568A (zh) * 2018-10-26 2019-02-22 北京计算机技术及应用研究所 一种多源数据实时采集装置
CN110109871A (zh) * 2018-04-26 2019-08-09 中国科学院高能物理研究所 一种跨站点的高能物理数据访问方法及***
CN111291053A (zh) * 2020-02-12 2020-06-16 广州天辰信息科技有限公司 工作流数据处理方法、装置及工作流数据处理平台
CN112379855A (zh) * 2020-11-26 2021-02-19 中国科学技术大学 数据显示方法、装置及***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645589B2 (en) * 2009-08-03 2014-02-04 National Instruments Corporation Methods for data acquisition systems in real time applications
US11556115B2 (en) * 2018-03-02 2023-01-17 Honeywell International Inc. Point value change notification

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107819693A (zh) * 2016-09-12 2018-03-20 北京百度网讯科技有限公司 用于数据流***的数据流处理方法及装置
CN108063799A (zh) * 2017-11-25 2018-05-22 中国商用飞机有限责任公司 一种串行分布式模拟量机载采集***
CN110109871A (zh) * 2018-04-26 2019-08-09 中国科学院高能物理研究所 一种跨站点的高能物理数据访问方法及***
CN108833562A (zh) * 2018-06-26 2018-11-16 南通森雅商务服务有限公司 一种基于http数据流的传输管理***
CN109375568A (zh) * 2018-10-26 2019-02-22 北京计算机技术及应用研究所 一种多源数据实时采集装置
CN111291053A (zh) * 2020-02-12 2020-06-16 广州天辰信息科技有限公司 工作流数据处理方法、装置及工作流数据处理平台
CN112379855A (zh) * 2020-11-26 2021-02-19 中国科学技术大学 数据显示方法、装置及***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Generic Streaming Software Platform Design for;Tianxing Wang,Junfeng Yang,Hongchao Wang,Hongwei Yu;《IEEE》;20210108;第101-109页 *
低功耗海洋地震勘探数据采集***设计;陈腾飞,宋克柱,杨俊峰;《核电子学与探测技术》;20191130;第712-716页 *
流处理数据获取***中的通用显示模块实现;汪洪潮,杨俊峰,王天星,孙正阳,宋克柱;《数据采集与处理》;20210331;第374-383页 *

Also Published As

Publication number Publication date
CN113312394A (zh) 2021-08-27

Similar Documents

Publication Publication Date Title
CN109492040B (zh) 一种适用于数据中心海量短报文数据处理的***
US6658477B1 (en) Improving the control of streaming data through multiple processing modules
CN112099948A (zh) 数字孪生制造单元协议标准化与工业大数据实时集成方法
US8438578B2 (en) Network on chip with an I/O accelerator
CN110457134A (zh) 建立基于容器云和微服务架构的视频大数据云平台的方法
Khriji et al. Design and implementation of a cloud-based event-driven architecture for real-time data processing in wireless sensor networks
US20090282222A1 (en) Dynamic Virtual Software Pipelining On A Network On Chip
CN103647850B (zh) 一种分布式版本控制***的数据处理方法、设备及***
CN107590210A (zh) 一种数据处理方法、装置、***及计算机可读存储介质
CN113420517B (zh) 面向云端深度学习推理的fpga虚拟化硬件***栈设计
CN113312394B (zh) 数据获取***的构建方法及装置
CN102981827B (zh) 一种基于中间件的显示界面数据处理方法及平台
WO2022133047A1 (en) Dataflow function offload to reconfigurable processors
CN100538650C (zh) 基于组件的网格中间件互交互方法
CN103164476A (zh) 一种bi应用元数据描述文件的执行方法和装置
CN109634519A (zh) 电子装置、监控数据缓存的方法及存储介质
WO2022261810A1 (zh) 数据获取***的构建方法及装置
CN109951370B (zh) 多大数据中心分层互联互通方法及装置
US9710349B2 (en) Storing first computer trace information in memory of second computer
CN113300984B (zh) 通信方法、设备、***及存储介质
CN109358820B (zh) 数据访问方法、装置、电子设备及计算机可读存储介质
Wang et al. Federated MapReduce to transparently run applications on multicluster environment
CN107911317B (zh) 一种报文调度方法及装置
CN109783253A (zh) 基于kafka的分布式消息数据总线
CN109977053A (zh) 一种基于网络的共享io接口设计方法和***

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