今天将临时表里面的数据按照天分区插入到线上的表中去,出现了Hive创建的文件数大于100000个的情况,我的SQL如下: hive> insert overwrite table test partition(dt) > select * from iteblog_tmp; iteblog_tmp表里面一共有570多G的数据,一共可以分成76个分区,SQL运行的时候创建了2163个Mapper,0个Reducers.程序运行到一般左右的时候出现了以下的异常: [Fatal Error] tot…
2015-11-13 14:44:44,681 ERROR [main]: DataNucleus.Datastore (Log4JLogger.java:error(115)) - An exception was thrown while adding/validating class(es) : Specified key was too long; max key length is 1000 bytescom.mysql.jdbc.exceptions.jdbc4.MySQLSynta…
一.Hive 执行过程实例分析 1.join 对于 join 操作:SELECT pv.pageid, u.age FROM page_view pv JOIN user u ON (pv.userid = u.userid); 执行的最后结果条数: page_view 表中的 userid 数目 * user 表中的 userid 数目 实现过程:Map: (1)以 JOIN ON 条件中的列作为 Key,如果有多个列,则 Key 是这些列的组合(2)以 JOIN 之后所关心的列作为 Valu…
本博文的主要内容如下: Hive文件存储格式 Hive 操作之表操作:创建外.内部表 Hive操作之表操作:表查询 Hive操作之表操作:数据加载 Hive操作之表操作:插入单表.插入多表 Hive语法结构:where 查询.all 和 distinct 选项.基于 Partition 的查询.基于 HAVING 的查询. LIMIT 限制查询. GROUP BY 分组查询. ORDER  BY 排序查询.SORT BY 查询.DISTRIBUTE BY 排序查询.CLUSTER BY 查询 H…
1. 概述 1.1 hive的特征: 可以通过SQL轻松访问数据的工具,从而实现数据仓库任务,如提取/转换/加载(ETL),报告和数据分析: 它可以使已经存储的数据结构化: 可以直接访问存储在Apache HDFS或其他数据存储系统(如Apache HBase)中的文件: Hive除了支持MapReduce计算引擎,还支持Spark和Tez这两种分布式计算引擎: 它提供类似sql的查询语句HiveQL对数据进行分析处理: 数据的存储格式有多种,比如数据源是二进制格式,普通文本格式等等: 1.2…
Hive版本 0.12.0(独立模式) Hadoop版本 1.12.1 Ubuntu 版本 12.10 今天试着搭建了hive,差点迷失在了网上各种资料中,现在把我的经验分享给大家,亲手实践过,但未必每一步都是必须的,正确的,大家可以参考一下. 第一步:安装和测试mysql(已装好的可跳过) 见我总结的http://blog.csdn.net/unflynaomi/article/details/37811229 第二步.开始正式安装hive 1.在hdfs上建目录: $ hadoop fs -…
Linux下查看某个进程打开的文件数-losf工具常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在linux操作系统中,一切皆文件.通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.比如说传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等.有时候我们可能需要统计一下那个进程占用了那类文件,或者该进程总共打开的文件数等等,此时我们就需要一个工具帮我们查看相应的信息啦,它就是本片博客的主人公-lsof. 一.losf是个什么玩意? 1>.los…
1.Join优化 a.map join b.reduce join 小表为驱动表,或直接将小表加载到内存,做map端join,它的关键字为/*+MAP JOIN(t1)*/ 如果想自动开启map端Join,可以通过hive.mapjoin.smalltable.filesize(默认为25000000)来定义小表的大小,一旦在这个范围之内,就会自动进行map端Join 2.Reducer的数量 Hive作业Reducer数量会直接影响作业效率,Hive的Reducer的是通过如下两个参数确定 参…
1.hive执行引擎 Hive默认使用MapReduce作为执行引擎,即Hive on mr.实际上,Hive还可以使用Tez和Spark作为其执行引擎,分别为Hive on Tez和Hive on Spark.由于MapReduce中间计算均需要写入磁盘,而Spark是放在内存中,所以总体来讲Spark比MapReduce快很多. 默认情况下,Hive on Spark 在YARN模式下支持Spark. 2.前提条件:安装JDK-1.8/hadoop-2.7.2等,参考之前的博文 3.下载hi…
Hive有三种使用方式——CLI命令行,HWI(hie web interface)浏览器 以及 Thrift客户端连接方式. 1.hive  命令行模式 直接输入/hive/bin/hive的执行程序,或者输入 hive –service cli       用于linux平台命令行查询,查询语句基本跟MySQL查询语句类似 2.hive  web界面的启动方式 hive –service hwi  用于通过浏览器来访问hive 如果lib目录下没有hive-hwi-{version}.war…