[Hadoop] Hive 性能
利用Hive Bulk Inport数据到Hbase
http://wiki.apache.org/hadoop/Hive/HBaseBulkLoad
生成测试数据
/home/bmb/jdk1.6.0_16/bin/java -cp examples.zip examples.CreateLogFile 1 1000000
/home/bmb/jdk1.6.0_16/bin/java -cp examples.zip examples.CreateLogFile 1000000 2000000
/home/bmb/jdk1.6.0_16/bin/java -cp examples.zip examples.CreateLogFile 2000000 3000000
创建性能测试表
不带压缩的测试表
drop table p_test_data;
CREATE TABLE p_test_data (
id INT,
content STRING,
time STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
导入数据
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/test_0_1000000.log' INTO TABLE p_test_data;
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/test_1000000_2000000.log' INTO TABLE p_test_data;
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/test_2000000_3000000.log' INTO TABLE p_test_data;
set mapred.reduce.tasks=1;
select count(a.id) from p_test_data a;
Time taken: 27.265 seconds
select a.id,a.content,a.time from p_test_data a where a.id=1;
Time taken: 18.086 seconds
INSERT OVERWRITE DIRECTORY '/tmp/p_test_data_out'
select a.time,count(1) from p_test_data a group by a.time;
Time taken: 32.899 seconds
带压缩的测试表
(框架检测到输入文件的后缀是.gz和.lzo,就会使用对应的CompressionCodec自动解压缩这些文件 )
drop table p_com_test_data;
CREATE TABLE p_com_test_data (
id INT,
content STRING,
time STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
tar cvf 0_100W.tar test_0_1000000.log
gzip 0_100W.tar
tar cvf 100_200W.tar test_1000000_2000000.log
gzip 100_200W.tar
tar cvf 200_300W.tar test_2000000_3000000.log
gzip 200_300W.tar
导入数据
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/0_100W.tar.gz' INTO TABLE p_com_test_data;
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/100_200W.tar.gz' INTO TABLE p_com_test_data;
LOAD DATA LOCAL INPATH '/home/iic/hadoop-0.20.2/200_300W.tar.gz' INTO TABLE p_com_test_data;
select a.time,count(1) from p_com_test_data a group by a.time;
Time taken: 26.31 seconds
此例子是针对小量文件的压缩和不压缩的性能测试,虽然不代表最终结果,但是从本次测试可以发现,压缩的效率更高,
可能是因为压缩文件是作为整个Block给Map,减少了InputSplit的检测和分析。
分享到:
相关推荐
Hive性能优化是一个复杂的问题,它涉及到Hadoop的计算框架特性、数据倾斜问题、MapReduce作业初始化时间长、SUM、COUNT、MAX、MIN等UDAF函数的使用、COUNT(DISTINCT)函数的低效、数据分布不均、Job数多、MapReduce...
Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂。 在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce,而Reduce阶段...
本书从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop...
由于Hive是Hadoop上的数据仓库,因此Hive也具有高延迟、批处理的特性,即使处理很小的数据也会有比较高的延迟。故此,Hive的性能就和居于传统数据库的数据仓库的性能不能比较了。 Hive不提供数据排序和查询的cache...
Hadoop和Hive在Facebook的应用 概要介绍 Hadoop a Facebook 假想的使用情况案例 Hive 问题与未来工作计划 Nutch 搜索引擎 背景介绍 数据结构 Nutch系统利用Hadoop进行数据处理的精选实例 总结 Rackspace的日志处理 ...
根据市场上目前比较流行的几款Hadoop产品综合分析,从部署的便捷性、功能、性能及成本等方面综合考量,推荐使用CDH与HDP。然后再根据我们具体的使用场景来进行选择,如果我们追求功能全面与部署案例参考推荐使用CDH...
首先,我们来看看Hadoop的计算框架特性,在此特性下会衍生哪些问题?数据量大不是问题,数据倾斜是个问题。jobs数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个jobs,...
Hadoop 平台具有分布式存储和并行计算的特性,能够轻松扩展存储结点和计算结点,解决数据增长带来的性能瓶颈。 数据分析平台架构原理可以分为六层:接入层(Landing)、整合层(Integration)、表现层...
《Hadoop权威指南(第2版)》从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;Hadoop...
Hive的性能不能与传统数据库的数据仓库的性能相比。 Hive的架构和执行流程包括用户提交的Hive QL语句最终被编译为MapReduce程序作为Job提交给Hadoop执行。Hive的数据类型包括基本数据类型和集合类型。基本数据类型...
《Hadoop权威指南(第2版)(修订•升级版)》从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce...
在本次演讲中,涵盖一些新的Hive性能提升的优化,包括了最新Spark引擎升级到2.0,Parquet数据类型的向量化支持,以及nested column pruning等新特性。并介绍配置选项从而达到优化的性能。及benchmark数据来展现这些...
习题类型:(有关spark,hive,zookeeper,HBase等) 1.HBase来源于哪篇博文?BigTable 2.对HBase的描述哪些是正确的是:是面向列的,是分布式的,是一种NoSQL数据库 3.HBase依靠HDFS存储底层数据 4.HBase依赖Zookeeper...
《hadoop权威指南(第2版)》从hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;hadoop...
《hadoop权威指南(第2版)》从hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;hadoop...
2. Spark 引擎本身对比 Hadoop-MR,在相同配置下,有明显的性能优势。 3. 支持 YARN 模式方便资源的调度。 4. 支持 JSON、CSV 等源生数据格式。 5. 项目更新进度非常快,尤其是 Spark-SQL,社区火热。 使用 Spark ...
该调度系统具备高性能,高可用(去中心化多调度中心和多执行器)和多租户资源隔离等金融级特性;现已被集成到数据应用开发门户 DataSphere Studio。 Schedulis 支持常规的 Command Shell 和 Linkis(HadoopMR、 ...
支 持 大 多 数 Hadoop 组 件 , 包 括 HDFS 、 MapReduce 、 Spark 、 Hive 、 Pig 、 Hbase 、 Zookeper、Sqoop等 大数据集群管理方式 分 为 手 工 方 式 ( Apache hadoop)和工具方式(Ambari + hdp 和 ...