System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理领域,尤其涉及一种将hive数据load到本地文件系统的优化方法。
技术介绍
1、hive是一个基于hadoop的数据仓库工具,它提供了一个类似于sql的查询语言(称为hiveql),使用户能够在hadoop集群上进行数据查询和分析,
2、hadoop是apache组织管理的一个开源项目,是基于google云计算理论big table、mapreduce和gfs的软件实现。hadoop可以使用户在不了解底层细节的情况下开发mapreduce程序,并在价格低廉的商用集群上进行运算和存储,具有可扩展、高容错、经济、可靠、高效等优点。hadoop的核心组件有两个部分:分布式文件系统(hdfs)和分布式计算模型mapreduce。hdfs是hadoop的旗舰级文件系统,它以流式数据访问模式来存储超大文件,运行于商用硬件集群上;mapreduce是一个编程模型,用以进行稳定、高效、超大数据量的分析计算
3、例如,专利公开号:cn103425762a,公开了一种基于hadoop平台的电信运营商海量数据处理方法,包括以下步骤:首先使用sqoop工具将原始数据系统数据抽取到hadoop本地服务器上;然后在hive中建表并根据运营商数据仓库的数据模型和业务需求编写hive脚本;接着执行hive脚本将源数据转换后装载到hive的目标表中;最后根据需求编写hive查询语句或者mapreduce程序对目标表中的数据进行查询分析。本方法在满足业务需求的基础上充分利用hadoop平台中的各种工具实现电信运营商海
4、但是,现有技术中还存在以下问题
5、在一个大数据应用平台中,会对不同租户的权限做相应的限制,例如某个test用户只能访问hive某些database的数据。当该test用户想要将某张hive中的表的数据导出到本地文件系统,并将导出的数据做其它一些处理时,进而可能出现对应的hdfs文件系统权限的问题。
技术实现思路
1、为此,本专利技术提供一种将hive数据load到本地文件系统的优化方法,用以克服现有技术中test用户想要将某张hive中的表的数据导出到本地文件系统可能会出现hdfs文件系统权限限制的问题。
2、为实现上述目的,本专利技术提供一种将hive数据load到本地文件系统的优化方法,包括:
3、步骤s1,针对每个mapreduce任务,通过hive从数据源复制输入文件到执行单元中;
4、步骤s2,将mapreduce任务运行并生成输出文件;
5、步骤s3,通过hive将各所述输出文件合并;
6、步骤s4,将所得合并文件写入hdfs文件系统的临时目录中;
7、步骤s5,将结果文件加载到本地文件系统的目标目录中并删除所述临时目录。
8、进一步地,所述步骤s1中,执行单元包括用以执行任务的节点所在本地文件系统。
9、进一步地,所述步骤s2中,所述mapreduce任务的输出结果被写入到一个或多个输出文件中。
10、进一步地,所述步骤s2中,所述mapreduce任务能输出中间结果。
11、进一步地,所述步骤s2中,还需将中间结果合并和排序。
12、进一步地,所述步骤s2中,通过reduce函数进行归约和计算最终生成输出结果。
13、进一步地,所述步骤s3中,
14、使用hive的insert语句将输出文件加载到表中,然后使用hive的select语句将数据从表中读取出来,得到合并文件。
15、进一步地,所述步骤s4中,还需跳过权限检查。
16、进一步地,所述步骤s4中,若用户需导出数据至本地/home目录,则hdfs文件系统上创建的目录为/tmp/home目录,并跳过/tmp目录下所有子目录的权限检查。
17、进一步地,所述步骤s5中,目标目录为预先设定且可替换。
18、包括与现有技术相比,本专利技术包括,步骤s1,针对每个mapreduce任务,通过hive从数据源复制输入文件到执行单元中;步骤s2,将mapreduce任务运行并生成输出文件;步骤s3,通过hive将各所述输出文件合并;步骤s4,将所得合并文件写入hdfs文件系统的临时目录中;步骤s5,将结果文件加载到本地文件系统的目标目录中并删除所述临时目录,通过hive加载数据到本地文件系统的过程中优化在hdfs相同路径创建目录,从而避免出现没有对应的hdfs文件系统权限的问题。
本文档来自技高网...【技术保护点】
1.一种将Hive数据load到本地文件系统的优化方法,其特征在于,包括:
2.根据权利要求1所述的将Hive数据load到本地文件系统的优化方法,其特征在于,所述步骤S1中,执行单元包括用以执行任务的节点所在本地文件系统。
3.根据权利要求1所述的将Hive数据load到本地文件系统的优化方法,其特征在于所述步骤S2中,所述MapReduce任务的输出结果被写入到一个或多个输出文件中。
4.根据权利要求1所述的将Hive数据load到本地文件系统的优化方法,其特征在于,所述步骤S2中,所述MapReduce任务能输出中间结果。
5.根据权利要求4所述的将Hive数据load到本地文件系统的优化方法,其特征在于,所述步骤S2中,还需将中间结果合并和排序。
6.根据权利要求5所述的将Hive数据load到本地文件系统的优化方法,其特征在于,所述步骤S2中,通过Reduce函数进行归约和计算最终生成输出结果。
7.根据权利要求1所述的将Hive数据load到本地文件系统的优化方法,其特征在于,所述步骤S3中,
...【技术特征摘要】
1.一种将hive数据load到本地文件系统的优化方法,其特征在于,包括:
2.根据权利要求1所述的将hive数据load到本地文件系统的优化方法,其特征在于,所述步骤s1中,执行单元包括用以执行任务的节点所在本地文件系统。
3.根据权利要求1所述的将hive数据load到本地文件系统的优化方法,其特征在于所述步骤s2中,所述mapreduce任务的输出结果被写入到一个或多个输出文件中。
4.根据权利要求1所述的将hive数据load到本地文件系统的优化方法,其特征在于,所述步骤s2中,所述mapreduce任务能输出中间结果。
5.根据权利要求4所述的将hive数据load到本地文件系统的优化方法,其特征在于,所述步骤s2中,还需将中间结果合并和排序。
6.根据权利要求5所述的将hive...
【专利技术属性】
技术研发人员:高海玲,高经郡,吕彦奎,
申请(专利权)人:北京科杰科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。