【技术实现步骤摘要】
一种PB级海量数据的实时查询方法和装置
本专利技术涉及数据查询
,尤其涉及一种PB级海量数据的实时查询方法和装置。
技术介绍
在大数据应用中,除了具备大数据计算和分析功能,还需提供数据实时查询能力满足各类数据检索和检索功能。其中原始数据、中间层数据、统计层数据等都存在查询需求。不同类型数据数据量不同,通常原始数据量非常巨大,可达PB级,例如运营商移动用户流量轨迹详单(用户通过移动网络访问互联网内容的轨迹记录)。针对PB级数据提供实时查询场景,要求存贮引擎具备超大数据容量和快速入库机制,针对大并发查询场景能提供秒级响应性能。同时,作为大数据应用,应支持主流大数据计算框架访问,包括MapReduce、Hive及Spark等。目前,业界有部分开源产品能提供实时查询功能,例如开源Hive,虽然能够提供海量数据存贮但并不具备实时查询功能;开源HBase,虽然能够进行实时查询,但海量数据的存贮机制复杂,性能不稳定,查询依赖内存资源,实施成本高;关系数据库(开源Mysql/商业Oracle),具备实时查询能力但无法满足PB级海量数据的存贮场景;开源搜索引擎,查询严重依赖内存资源,主机存贮资源利用率低,实施成本高,并且入库性能低,不能满足PB级数据查询场景。由此可见,上述产品都具有一定的局限性,不能满足PB级海量数据实施查询生产场景需求。
技术实现思路
本专利技术提供了一种PB级海量数据的实时查询方法和装置,解决了现有技术中的实时查询依赖内存资源,实施成本高的技术问题。本专利技术提供的一种P
【技术保护点】
1.一种PB级海量数据的实时查询方法,其特征在于,应用于逻辑数据库,所述逻辑数据库包括Hive数据库,所述方法包括:/n响应于用户输入的数据查询请求,确定与所述数据查询请求对应的目标索引信息;/n从所述Hive数据库中确定与所述目标索引信息对应的目标数据文件;所述目标索引信息包括提取起始位置和提取终止位置;/n在所述目标数据文件中从所述提取起始位置开始提取数据记录,直至所述提取终止位置;/n对所述数据记录进行JSON序列化,生成序列数据并输出。/n
【技术特征摘要】
1.一种PB级海量数据的实时查询方法,其特征在于,应用于逻辑数据库,所述逻辑数据库包括Hive数据库,所述方法包括:
响应于用户输入的数据查询请求,确定与所述数据查询请求对应的目标索引信息;
从所述Hive数据库中确定与所述目标索引信息对应的目标数据文件;所述目标索引信息包括提取起始位置和提取终止位置;
在所述目标数据文件中从所述提取起始位置开始提取数据记录,直至所述提取终止位置;
对所述数据记录进行JSON序列化,生成序列数据并输出。
2.根据权利要求1所述的方法,其特征在于,所述逻辑数据库包括HBase索引表,所述响应于用户输入的数据查询请求,确定与所述数据查询请求对应的目标索引信息的步骤,包括:
接收用户输入的数据查询请求,所述数据查询请求包括关键字;
在所述HBase索引表中确定与所述关键字匹配的目标索引信息。
3.根据权利要求2所述的方法,其特征在于,所述Hive数据库包括多个Hive数据表,每个所述Hive数据表包括多个分区,每个所述分区包括多个数据文件,所述目标索引信息还包括目标Hive表名、目标分区序号和目标文件序号,所述从所述Hive数据库中确定与所述目标索引信息对应的目标数据文件的步骤,包括:
依据所述目标Hive表名从所述Hive数据库中选择目标Hive数据表;
依据所述目标分区序号从所述目标Hive数据表中的多个分区中确定目标分区;其中,所述分区处于可使用状态;
依据所述目标文件序号从所述目标分区中确定目标数据文件。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当用户输入数据写入请求时,响应于所述数据写入请求,执行数据写入操作。
5.根据权利要求4所述的方法,其特征在于,所述数据写入请求携带有写入文件规格参数,所述响应于所述数据写入请求,执行数据写入操作的步骤,包括:
响应于所述数据写入请求,接收用户输入的多个输入数据文件;
按照预设关键字的顺序对所述多个输入数据文件进行排序,得到多个已排序数据文件,所述已排序数据文件的大小由所述写入文件规格参数设置;
遍历所述多个已排序数据文件,生成与所述预设关键字的数量相等的待添加索引信息;
在所述HBase索引表中添加所述待添加索引信息;
在所述Hive数据表中创建新的分区,并将所述已排序数据文件写入到所述新的分区;
更新所述新的分区的状态为可使用状态。
6.一种PB级海量数据的实时查询装置,其特征在于,应用于逻辑数据库,所述逻辑数据库包括Hive数据库,包括:
索引信息确定模块,用于响应于用户输...
【专利技术属性】
技术研发人员:张伟,石巍,司徒达擎,廖小文,何广柏,钟坚,张伟涛,
申请(专利权)人:广东亿迅科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。