hive
姹紫_嫣红
生活也好,工作也好,本来就是消磨人的事儿,要在被消磨之间反身抗衡是需要勇气的。
博客园:http://www.cnblogs.com/xleer/
展开
-
Hive之分区(Partitions)和桶(Buckets)
hive引入partition和bucket的概念,中文翻译分别为分区和桶(我觉的不是很合适,但是网上基本都是这么翻译,暂时用这个吧),这两个概念都是把数据划分成块,分区是粗粒度的划分桶是细粒度的划分,这样做为了可以让查询发生在小范围的数据上以提高效率。首先介绍分区的概念,还是先来个例子看下如果创建分区表:[code lang=”sql”]create table logs_par转载 2016-05-24 10:25:03 · 1327 阅读 · 0 评论 -
hive的6种join操作
1.join2.left join3.right join4.full join5.left semi join6.cross joinhive中的join操作的关键字必须在on中指定,不能再where中指定,不然会先做笛卡尔积再过滤;join关键字默认为内连接,返回两张表中都有的信息;left join以前面的表作为主表和其他表进行关联,返回的记录数和主表的记录数相同,关联不上的字段用NULL;...转载 2017-12-24 21:03:03 · 16811 阅读 · 0 评论 -
hive执行结果moveTask操作失败-step2
Apache Hive 2.1.0 ,在执行"INSERT OVERWRITE TABLE ...... select "或者 "insert overwrite directory /tmp/data/hive-test "操作,如果生成的结果文件是多个时,执行结果文件moveTask操作会失败。最新的Apache Hive 2.1.1版本同样有该问题;Apache Hive 1.2.1版本的h...转载 2017-09-18 15:10:29 · 2888 阅读 · 0 评论 -
hive构建数据仓库
Oracle数据库中的数据表多表联合查询综合生成一张大的事实表,直接在Oracle中执行发现根本运行不起来,所以直接将Oracle中的原表迁移到了hive中。然后建表、联合查询生成新的hive表。hive建表语句在此不再赘述,直接执行联合查询的插入语句:(总共用时582.30s即9.7min,记录的条数在千万级)表的总记录条数:数据情况:原创 2017-09-15 11:11:57 · 1611 阅读 · 0 评论 -
配置另hive中查询表时同时显示表的字段名
hive中查询表默认不显示的字段名,但是在hive-site.xml中可以进行设置(value默认为false设置为true即可):再次查询:原创 2017-09-15 10:42:41 · 1416 阅读 · 0 评论 -
关于hive查询与MapReduce并行计算
众所周知,hive的查询是将select语句转换为底层MapReduce,然后并行化的对hive中的数据进行查询,以前的时候不觉的怎么样,直到最近遇到对比清空。不多说,上图: 1.在普通的oracle数据库中用navicat客户端对两个表进行关联查询,中间用到了trim对两个表中的字段进行处理,结果查询时间达到了80+ s联合查询导出数据时更是用了我半个多小时都没完成原创 2017-09-15 09:26:16 · 1460 阅读 · 0 评论 -
int、time和timestamp区别
1.datetime占用8 byte,允许为空,与时区无关,不可以设置默认值,字段为not null时手动指定字段值;用now()变量自动插入系统当前时间;适合用于记录数据的原始创建时间,无论怎么更改记录中其它字段的值,datetime字段的值都不会改变;2.timestamp占用4 byte,允许为空,但是不可以自定义值故空值无意义。时间范围1970--2037;存储时对于当前的时区进行转换,检...原创 2017-09-05 13:35:25 · 4939 阅读 · 0 评论 -
hive的使用
1.创建table;2.导入本地数据:3.查询hive表4.查看hdfs目录下的文件(表数据)注:如出现查看表数据存在,但是执行 select查询hive表出现null可能是数据文件中的分隔符的问题,更改分隔符,再次导入查询即可。从hdfs导入数据到hive表首先上传建好的文件到xhdfs系统;查看上传后的文件:hiv原创 2016-05-23 16:57:58 · 4655 阅读 · 0 评论 -
Hql:数据定义
参数设置1.set hive.cli.print.current.db=true可以上CLI显示当前的数据库名称;2.可以用like 配合正则表达式查询相应条件的数据库名。show database like 'hji.*';//显示以hji开头的数据库3.用create database创建数据库的时候会在hive.metastore.warehouse.dir相应的目录下创建相应数原创 2016-05-21 18:52:03 · 1003 阅读 · 0 评论 -
hive的安装和配置
首先下载hive的安装包apache-hive-1.2.1-bin.tar.gz,解压到相应的目录下sudo tar -zxvf apache-hive-1.2.1-bin.tar.gz,然后更改文件接名称sudo mv 解压后的文件夹名 hive文件夹名;进入文件夹进行配置,cd hive文件夹名1.把hive的所在目录写入到相应用户的~/.bashrc文件(或者针对所有用户原创 2016-05-19 16:17:49 · 1725 阅读 · 0 评论 -
hive命令行界面
1.变量和属性启动hive时加入参数,进行定义变量,启动之后可以更改参数的值;$hive --define foo=barhive>set foo;查询变量的值或者hive>set hivevar:foo;更改变量值hive>set hivevar:foo=bar2;在创建表时可以用hive中定义的变量,如:hive>create table hadoop (id in原创 2016-05-19 16:57:33 · 2413 阅读 · 0 评论 -
hive安装配置及遇到的问题解决
1.下载hive安装包apache-hive-1.2.1-bin.tar.gz2.解压安装包,并移动到要安装的路径下sudo tar -zxvf apache-hive-1.2.1-bin.tar.gzsudo mv -r hive1.2.1 /usr/local/3.配置hive环境变量 vi /etc/profile 添加环境变量值 export HIVE_HOM原创 2016-05-16 11:48:00 · 13812 阅读 · 0 评论 -
apache kylin 数据导入hive
编写导入数据的sql脚本:建表1.drop database if exists sample;2.create database sample;3.drop table if exists sample.kylin_cal_dt;4.create table sample.kylin_cal_dt( cal_dt date comment 'data,pk',age_for_year sm...原创 2018-01-23 20:13:03 · 1311 阅读 · 0 评论