从低速数据源加载压缩数据文件的方法及装置制造方法及图纸

技术编号:12780453 阅读:59 留言:0更新日期:2016-01-27 23:08
本发明专利技术提供了一种从低速数据源加载压缩数据文件的方法,所述方法包括:接收客户端发送的控制文件;解析所述控制文件,获取控制文件中的数据来源和数据类型;判断控制文件中是否包括低速数据源的压缩数据文件;在控制文件中包括低速数据源的压缩数据文件时,读取并缓存所述低速数据源的压缩数据文件。实现了在读取压缩格式数据文件时预读数据,并放入缓存,从而在连续的若干次读取数据的操作中,只需在第一次操作中真正从数据源读取文件内容,显著减少了对低速数据源的I/O次数,用高速的内存操作加以替代,极大地提升了性能。

【技术实现步骤摘要】

本专利技术属于集群数据库领域,尤其是涉及一种从低速数据源加载压缩数据文件的方法及装置
技术介绍
集群数据库使用大量计算机节点提供高性能、大数据量的数据库服务。集群数据库的加载工具负责高性能地向集群数据库中加载大量数据。通过两台或者多台数据库服务器,提供透明的服务,集群向客户端提供的服务与单机系统向客户端提供的服务,从通讯协议上保持二进制兼容。在进行数据更新时,数据库客户端发出数据更新请求后,要等集群的每个节点全部更新后,才给客户端返回结果。集群数据库的加载工具负责高性能地向集群数据库中加载大量数据。一个典型的集群数据库加载工具会解析用户所写的控制文件,确定待加载数据的来源、位置、类型等参数信息,然后读取数据文件,最后将数据文件中包含的数据加载进集群数据库。被加载的数据有各种不同的来源和格式,包括:数据来自不同的数据源,如本地文件系统、FTP服务、HDFS文件系统等;数据文件有各种压缩格式,如gzip格式、snappy格式、无压缩格式等。
技术实现思路
本专利技术实施例提供了一种从低速数据源加载压缩数据文件的方法及装置,以实现从低速数据源快速加载压缩数据文件的目的。第一方面,本专利技术实施例提供了一种从低速数据源加载压缩数据文件的方法,所述方法包括:接收客户端发送的控制文件;解析所述控制文件,获取控制文件中的数据来源和数据类型;判断控制文件中是否包括低速数据源的压缩数据文件;在控制文件中是否包括低速数据源的压缩数据文件时,读取并缓存所述低速数据源的压缩数据文件。进一步的,在读取并缓存低速数据源的压缩数据文件后,包括:解压缩所述压缩数据文件,在集群数据库中加载解压缩后的数据值。进一步的,所述解压缩所述压缩数据文件,加载解压缩后的数据值集群数据库,包括:在已缓存的数据量少于需要读取的数据量时,解压缩所述压缩数据文件;将解压缩后的数据添加至缓存结尾;判断所述压缩数据文件是否已经读取完成,在完成后,清除所述解压缩缓存。更进一步的,在接收客户端发送的控制文件之前,还包括:加载数据文件工具,所述数据文件工具用于解析所述控制文件,获取控制文件中的数据来源和数据类型。第二方面,本专利技术实施例提供了一种从低速数据源加载压缩数据文件的装置,所述装置包括:控制文件接收模块,用于接收客户端发送的控制文件;控制文件解析模块,用于解析所述控制文件,获取控制文件中的数据来源和数据类型;判断模块,用于判断控制文件中是否包括低速数据源的压缩数据文件;读取和缓存模块,用于在控制文件中是否包括低速数据源的压缩数据文件时,读取并缓存所述低速数据源的压缩数据文件。进一步的,所述装置还包括:加载模块,用于解压缩所述压缩数据文件,在集群数据库中加载解压缩后的数据值。进一步的,所述加载模块用于:在已缓存的数据量少于需要读取的数据量时,解压缩所述压缩数据文件;将解压缩后的数据添加至缓存结尾;判断所述压缩数据文件是否已经读取完成,在完成后,清除所述解压缩缓存。进一步的,所述装置还包括:工具加载模块,用于加载数据文件工具,所述数据文件工具用于解析所述控制文件,获取控制文件中的数据来源和数据类型。采用本专利技术实施例所提供的技术方案,通过解析所述控制文件,获取控制文件中的数据来源和数据类型;判断控制文件中是否包括低速数据源的压缩数据文件;在控制文件中是否包括低速数据源的压缩数据文件时,读取并缓存所述低速数据源的压缩数据文件。实现了在读取压缩格式数据文件时预读数据,并放入缓存,从而在连续的若干次读取数据的操作中,只需在第一次操作中真正从数据源读取文件内容,显著减少了对低速数据源的I/0次数,用高速的内存操作加以替代,极大地提升了性能。【附图说明】为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法的流程示意图;图2是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中集群数据库加载工具的示意图;图3是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中集群数据库加载工具的示意图;图4是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中低速数据源读取和加载压缩格式数据文件示意图;图5是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中预读缓存模块示例图;图6是现有技术中从低速数据源加载压缩数据文件的方法的过程示意图表;图7是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中从低速数据源读取和加载压缩格式数据文件的过程示意图;图8是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的装置的结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法的流程示意图,所述方法依靠相应的装置来实现。所述装置可由软件/硬件实现,并一般集成于集群数据库中。图2是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中集群数据库加载工具的示意图;图3是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中集群数据库加载工具的示意图;图4是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中低速数据源读取和加载压缩格式数据文件示意图;图5是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中预读缓存模块示例图;图6是现有技术中从低速数据源加载压缩数据文件的方法的过程示意图表;图7是本专利技术第一实施例提供的从低速数据源加载压缩数据文件的方法中从低速数据源读取和加载压缩格式数据文件的过程示意图。参见图1、图2、图3、图4、图5、图6和图7,所述从低速数据源加载压缩数据文件的方法,包括:步骤S101,接收客户端发送的控制文件。用户可以对集群数据库中的数据进行增加、删除和修改。对集群数据库中的数据进行上述操作时,都需要使用集群数据库对应的客户端软件来实现彼此通信和信息交互。在用户需要对集群数据库中的数据进行操作时,用户在客户端进行操作,并通过客户端将控制文件发送到集群数据库。步骤S102,解析所述控制文件,获取控制文件中的数据来源和数据类型。通过步骤S101获取到客户端发送的控制文件。对控制文件中进行解析,获取所述控制文件中的数据来源和数据类型。步骤S103,判断控制文件中是否包括低速数据源的压缩数据文件。根据步骤S102获取所述控制文件中的数据来源和数据类型,判断控制文当前第1页1 2 本文档来自技高网...

【技术保护点】
一种从低速数据源加载压缩数据文件的方法,其特征在于,所述方法包括:接收客户端发送的控制文件;解析所述控制文件,获取控制文件中的数据来源和数据类型;判断控制文件中是否包括低速数据源的压缩数据文件;在控制文件中包括低速数据源的压缩数据文件时,读取并缓存所述低速数据源的压缩数据文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:赵伟武新李东海王雪松
申请(专利权)人:天津南大通用数据技术股份有限公司
类型:发明
国别省市:天津;12

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

1