公开/公告号CN106254313A
专利类型发明专利
公开/公告日2016-12-21
原文格式PDF
申请/专利权人 国云科技股份有限公司;
申请/专利号CN201610565549.4
申请日2016-07-15
分类号H04L29/06(20060101);
代理机构广东莞信律师事务所;
代理人余伦
地址 523808 广东省东莞市松山湖科技产业园区松科苑14号楼
入库时间 2023-06-19 01:10:07
法律状态公告日
法律状态信息
法律状态
2020-03-03
专利权的转移 IPC(主分类):H04L29/06 登记生效日:20200212 变更前: 变更后: 申请日:20160715
专利申请权、专利权的转移
2019-06-21
授权
授权
2019-06-14
著录事项变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20160715
著录事项变更
2017-01-18
实质审查的生效 IPC(主分类):H04L29/06 申请日:20160715
实质审查的生效
2016-12-21
公开
公开
技术领域
本发明涉及计算机应用技术领域,特别是一种通用的大数据采集字节流解析系统及其实现方法。
背景技术
解析数据是数据采集中至关重要的一个环节,在大数据时代,数据分布广泛、结构复杂多样,给解析带来很大的困难,每次采集都需要按照不同的数据结构编写解析代码,这种重复工作对采集者来说是一种很大的浪费。
发明内容
本发明解决的技术问题之一在于提供一种通用的大数据采集字节流解析系统,使字节流解析过程更加标准化、更加可控。
本发明解决的技术问题之二在于提供一种通用的大数据采集字节流解析系统的实现方法,通过字节流预处理器和二维表解析器对不同结构的数据进行统一的解析,避免重复定义解析过程,能够大大提高数据采集的工作效率。
本发明解决上述技术问题之一的技术方案是:
所述的系统由字节流预处理器和二维表解析器两部份构成;
所述的字节流预处理器是根据约定自动校验数据并根据压缩和加密方式自动选择相应的解压和解密方法对数据进行预处理;
所述的二维表解析器按照字节流格式定义二维表,用行和行组存储数据信息,其中用行组存储集合数据;用列标明每个字段的名称、数据类型和长度;
二维表解析器读入数据字节流,根据每一列定义的长度将字节流分割成多个字段,再根据数据类型将分割好的字节流解析成相应的信息;通过读取行或者行组里的多个行获取数据或者集合信息,通过列的字段名称读取数据行的具体字段信息。
所述的字节流预处理器包括数据安全校验、数据解压中心和数据解密中心三部分;由数据安全校验实现自动校验数据;数据解压中心、数据解密中心,根据数据需求进行解压或解密。
所述的二维表解析器包括二维表封装器、二维表数据段分割和二维表数据段解析三部分;
所述的实现按照字节流格式定义二维表,用行和行组存储数据信息,其中用行组存储集合数据;用列标明每个字段的名称、数据类型和长度;
所述的二维表数据段分割实现根据每一列定义的长度将字节流分割成多个字段;
所述的二维表数据段解析对分割好的字节流解析成相应的信息。
所述的数据类型可以是二进制、十进制、十六进制或者字符,长度单位是比特。
本发明解决上述技术问题之二的技术方案是:
所述的方法按照以下流程步骤处理:
第一步,接收到字节流后,根据约定自动校验数据安全性和完整性,检查在传输过程中数据是否被篡改;
第二步,根据约定的标记位自动选择解压和解密方法进行预处理,生成完整的明文字节流;
第三步,根据字节流包含数据段、每个数据段的长度以及数据类型定义二维表,生成二维表解析器;
第四步,将字节流读入二维表解析器,根据定义的列及长度分割成数据段,判断字段是否是集合数据;
(一)非集合字段:创建数据段行,将数据段存储到行中,并用列定义的字段名称标明数据段含义;
(二)集合字段:创建行组,用列定义的字段名称标明行组数据段含义,根据集合的大小创建数据段行,每个行存储集合的一个元素;
第五步,根据列定义的数据类型将数据段解析转换成相应的数据信息,生成结构化数据信息;
第六步,获取结构化信息,通过读取行或者行组里的多个行获取数据或者集合信息,通过列的字段名称读取数据行的具体字段信息,完成字节流的解析。
本发明使字节流解析过程更加标准化、更加可控。而且,通过字节流预处理器和二维表解析器对不同结构的数据进行统一的解析;不用重复定义和编写解析流程代码,并且对使用者是透明的,使用者只需根据数据的结构定义好二维表,不用关心其实现方式。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的架构示意图。
具体实施方式
如图1所示,本发明的字节流解析组件由字节流预处理器和二维表解析器两部份构成。字节流预处理器根据约定自动校验数据并根据压缩和加密方式自动选择相应的解压和解密方法对数据进行预处理;二维表解析器按照字节流格式定义二维表,用行和行组存储数据信息,其中用行组存储集合数据,用列标明字节流的数据结构;二维表解析器将字节流分割成多个字段,再根据数据类型将分割好的字节流解析成相应的信息,通过二维表读取解析后的结构化信息。
所述的字节流预处理器根据约定自动校验数据安全性和完整性,检查在传输过程中数据是否被篡改,然后根据约定的标记位自动选择解压和解密方法进行预处理,生成完整的明文字节流。
所述的二维表解析器按照字节流格式定义二维表,用行和行组存储数据信息,其中用行组存储集合数据,用列标明每个字段的名称、数据类型和长度,数据类型可以是二进制、十进制、十六进制或者字符,长度单位是比特;二维表解析器读入数据字节流,根据每一列定义的比特长度将字节流分割成多个字段,再根据数据类型将分割好的字节流解析成相应的信息;通过读取行或者行组里的多个行获取数据或者集合信息,通过列的字段名称读取数据行的具体字段信息。
所述的字节流解析组件,不用重复定义和编写解析流程代码,并且对使用者是透明的,使用者只需根据数据的结构定义好二维表,不用关心其实现方式。
如图1所示,大数据采集字节流解析组件及方法的详细实施流程为:
第一步,接收到字节流后,根据约定自动校验数据安全性和完整性,检查在传输过程中数据是否被篡改。
第二步,根据约定的标记位自动选择解压和解密方法进行预处理,生成完整的明文字节流;
第三步,根据字节流包含数据段、每个数据段的长度以及数据类型定义二维表,生成二维表解析器;
第四步,将字节流读入二维表解析器,根据定义的列及长度分割成数据段,判断字段是否是集合数据。
(一)非集合字段:创建数据段行,将数据段存储到行中,并用列定义的字段名称标明数据段含义。
(二)集合字段:创建行组,用列定义的字段名称标明行组数据段含义,根据集合的大小创建数据段行,每个行存储集合的一个元素。
第五步,根据列定义的数据类型将数据段解析转换成相应的数据信息,生成结构化数据信息;
第六步,获取结构化信息,通过读取行或者行组里的多个行获取数据或者集合信息,通过列的字段名称读取数据行的具体字段信息,完成字节流的解析。
机译: 基于大数据采集和计算机可读记录介质的污水和废水质量区分处理系统及方法,提供基于大数据采集的污水和废水质量区分处理程序
机译: 实现人类大数据采集和分析的住宅入口访问控制系统
机译: 连接的汽车大数据采集设备,以及使用该方法收集连接的汽车大数据的系统和方法