数据存储方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:22688737 阅读:54 留言:0更新日期:2019-11-30 03:28
本发明专利技术实施例公开了一种数据存储方法、装置、设备及计算机可读存储介质。其中,方法包括创建用于读取底层存储的Protobuf序列化文件的hive表;将Protobuf序列化数据的描述文件生成对应的编程语言文件,并发送至待加载文件包中;根据预先构建的数据解析器对应的解析方式配置hive表中用于解析数据的字段;基于数据解析器,利用hive表自动化解析并读取Protobuf序列化数据;其中,数据解析器用于将hive表与配置文件进行表模式和配置结构的匹配,并生成hive表结构的Object对象集和hive结果对象集。本申请实现了以最少的开发量解决hive数据仓库底层Protobuf文件存储的解析难题,有利于提升hive数据仓库的数据存储安全性。

Data storage method, device, equipment and computer readable storage medium

The embodiment of the invention discloses a data storage method, device, device and computer readable storage medium. Among them, the methods include creating hive table for reading the protobuf serialized file stored in the bottom layer; generating the corresponding programming language file from the description file of protobuf serialized data and sending it to the package to be loaded; configuring the fields in hive table for parsing data according to the corresponding parsing method of the pre built data parser; automatically using hive table based on the data parser It parses and reads the protobuf serialized data, in which the data parser is used to match the hive table with the configuration file in table pattern and configuration structure, and generate the object object object set and hive result object set of hive table structure. The application realizes the resolution of the underlying protobuf file storage of hive data warehouse with the minimum development amount, which is conducive to improving the data storage security of hive data warehouse.

【技术实现步骤摘要】
数据存储方法、装置、设备及计算机可读存储介质
本专利技术实施例涉及存储
,特别是涉及一种数据存储方法、装置、设备及计算机可读存储介质。
技术介绍
随着大数据、云计算的快速发展,当前信息化社会大量数据不断涌现,尤其是互联网行业、电信行业等公司的数据量以惊人地速度不断增长着,如此大的数据量对于存储就会有更高的要求。当前业界对于大数据的存储几乎都会采用数据压缩的方式以减小文件存储占用空间,但是减小文件存储空间的同时会需要更高计算频率,平衡计算和存储之间的关系,使资源之间能够达到产业所需求的平衡,是本领域技术人员需要关注的问题。由于hive数据仓库具有很多优点,例如计算能力可扩展、数据可容错性能更高、数据安全性、集成HDFS所有优点、成本低廉和简单易用等,hive已广泛作为主要数据仓库应用于有离线数据仓库需求的应用场景中。但是,由于hive数据仓库的HSQL表达能力有限、生成的mapreduce作业不够智能化和调优粒度较粗等。当前hive数据仓库支持存储数据格式为textfile、sequencefile、rcfile、orcfi本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,包括:/n创建hive表,所述hive表用于读取底层存储的Protobuf结构数据存储格式的数据;/n将Protobuf序列化数据的描述文件生成对应的编程语言文件,并发送至待加载文件包中;/n根据预先构建的数据解析器对应的解析方式配置所述hive表中用于解析数据的字段;/n基于所述数据解析器,利用所述hive表自动化解析并读取所述Protobuf序列化数据;/n其中,所述数据解析器用于将所述hive表与配置文件进行表模式和配置结构的匹配,并生成所述hive表结构的Object对象集和hive结果对象集。/n

【技术特征摘要】
1.一种数据存储方法,其特征在于,包括:
创建hive表,所述hive表用于读取底层存储的Protobuf结构数据存储格式的数据;
将Protobuf序列化数据的描述文件生成对应的编程语言文件,并发送至待加载文件包中;
根据预先构建的数据解析器对应的解析方式配置所述hive表中用于解析数据的字段;
基于所述数据解析器,利用所述hive表自动化解析并读取所述Protobuf序列化数据;
其中,所述数据解析器用于将所述hive表与配置文件进行表模式和配置结构的匹配,并生成所述hive表结构的Object对象集和hive结果对象集。


2.根据权利要求1所述的数据存储方法,其特征在于,应用于Java语言环境中,所述数据解析器的构建过程包括:
设置用于读取配置文件并关联所述hive表结构的模式匹配文件,以将所述hive表与配置文件进行表模式和配置结构的匹配;
设置用于基于子类代理实现Java对象到Object对象的转化逻辑的对象转化文件;
设置用于使用嵌套对象遍历所述Protobuf序列化数据生成Java对象的嵌套遍历文件。


3.根据权利要求2所述的数据存储方法,其特征在于,所述基于所述数据解析器,利用所述hive表自动化解析并读取所述Protobuf序列化数据包括:
通过重写hive数据仓库的初始化函数以实现组装所述模式匹配文件和所述对象转化文件生成所述hive表结构的Object对象集;
通过重写hive数据仓库的数据解析函数以实现组装所述嵌套遍历文件生成hive结果对象集;
生成可执行文件包,并在所述配置文件中设置Protobuf结构定义文件生成的java文件位置,以将所述可执行文件包加载到hive环境变量中使用所述hive表指定解析读取所述Protobuf序列化数据的入口;
执行hiveSQL查询语句读取所述Protobuf序列化数据。


4.根据权利要求1-3任意一项所述的数据存储方法,其特征在于,所述基于所述数据解析器,利用所述hive表自动化解析并读取所述Protobuf序列化数据包括:
判断是否在预设时间内接收到数据解析读取成功的信息;
若否,则进行数据读取错误的告警,并反馈自动化解析及读取所述Protobuf序列化数据过程的日志文件信息。


5.一种数据存储装置,其特征在于,包括:
Hive表创建模块,用于创建hive表,所述hive表用于读取底层存储的Protobuf结构数据存储...

【专利技术属性】
技术研发人员:潘利杰
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1