
Hive
小刘同学-很乖
这个作者很懒,什么都没留下…
展开
-
Hive其它企业级调优
Fetch抓取Fetch抓取是指,Hive中对某些情况的查询可以不必使用MapReduce计算。例如:SELECT * FROM employees;在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台。在hive-default.xml.template文件中hive.fetch.task.conversion默认是more,老版本hive默认...原创 2020-06-05 08:34:20 · 111 阅读 · 0 评论 -
Hive企业级调合理设置Map及Reduce数
合理设置Map及Reduce数通常情况下,作业会通过input的目录产生一个或者多个map任务。主要的决定因素有:input的文件总个数,input的文件大小,集群设置的文件块大小。是不是map数越多越好?答案是否定的。如果一个任务有很多小文件(远远小于块大小128m),则每个小文件也会被当做一个块,用一个map任务来完成,而一个map任务启动和初始化的时间远远大于逻辑处理的时间,就会造...原创 2020-06-04 08:27:44 · 204 阅读 · 0 评论 -
Hive企业级调优表的优化
小表、大表Join将key相对分散,并且数据量小的表放在join的左边,这样可以有效减少内存溢出错误发生的几率;再进一步,可以使用map join让小的维度表(1000条以下的记录条数)先进内存。在map端完成reduce。实际测试发现:新版的hive已经对小表JOIN大表和大表JOIN小表进行了优化。小表放在左边和右边已经没有明显区别。案例实操需求测试大表JOIN小表和小表JOIN大表...原创 2020-06-03 08:46:21 · 424 阅读 · 0 评论 -
Hive存储和压缩结合详解
修改Hadoop集群具有Snappy压缩方式查看hadoop checknative命令使用[liujh@hadoop104 hadoop-2.7.2]$ hadoop checknative [-a|-h] check native hadoop and compression libraries availability查看hadoop支持的压缩方式[liujh@hadoo...原创 2020-06-02 08:31:00 · 520 阅读 · 0 评论 -
Hive超详细存储
文件存储格式Hive支持的存储数据的格式主要有:TEXTFILE 、SEQUENCEFILE、ORC、PARQUET。列式存储和行式存储左边为逻辑表,右边第一个为行式存储,第二个为列式存储行存储的特点查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。列存储的特点因为每个...原创 2020-06-01 09:12:19 · 1401 阅读 · 1 评论 -
Hive压缩详解
Hadoop源码编译支持Snappy压缩资源准备CentOS联网配置CentOS能连接外网。Linux虚拟机ping www.baidu.com 是畅通的注意:采用root角色编译,减少文件夹权限出现问题jar包准备(hadoop源码、JDK8 、maven、protobuf)hadoop-2.7.2-src.tar.gzjdk-8u144-linux-x64.tar.gzsn...原创 2020-05-30 08:56:24 · 952 阅读 · 0 评论 -
Hive内置函数和自定义函数详解
系统内置函数查看系统自带的函数hive> show functions;显示自带的函数的用法hive> desc function upper;详细显示自带的函数的用法hive> desc function extended upper;自定义函数Hive 自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义UDF来方便的扩...原创 2020-05-29 08:34:04 · 437 阅读 · 0 评论 -
Hive其他常用详细查询函数
空字段赋值函数说明NVL:给值为NULL的数据赋值,它的格式是NVL( value,default_value)。它的功能是如果value为NULL,则NVL函数返回default_value的值,否则返回value的值,如果两个参数都为NULL ,则返回NULL。数据准备:采用员工表查询:如果员工的comm为NULL,则用-1代替hive (default)> select ...原创 2020-05-28 08:38:18 · 318 阅读 · 0 评论 -
Hive分桶及抽样查询详解
分桶表数据存储分区提供一个隔离数据和优化查询的便利方式。不过,并非所有的数据集都可形成合理的分区。对于一张表或者分区,Hive 可以进一步组织成桶,也就是更为细粒度的数据范围划分。分桶是将数据集分解成更容易管理的若干部分的另一个技术。分区针对的是数据的存储路径;分桶针对的是数据文件。先创建分桶表,通过直接导入数据文件的方式数据准备1001 ss11002 ss21003 ss3...原创 2020-05-27 09:19:15 · 697 阅读 · 0 评论 -
Hive排序详细案例
全局排序(Order By)Order By:全局排序,只有一个Reducer使用 ORDER BY 子句排序ASC(ascend): 升序(默认)DESC(descend): 降序ORDER BY 子句在SELECT语句的结尾案例实操查询员工信息按工资升序排列hive (default)> select * from emp order by sal;查询员工信...原创 2020-05-26 08:47:04 · 466 阅读 · 0 评论 -
HiveJoin语句
等值JoinHive支持通常的SQL JOIN语句,但是只支持等值连接,不支持非等值连接。案例实操根据员工表和部门表中的部门编号相等,查询员工编号、员工名称和部门名称;hive (default)> select e.empno, e.ename, d.deptno, d.dname from emp e join dept d on e.deptno = d.deptno;...原创 2020-05-25 08:21:15 · 880 阅读 · 0 评论 -
HiveWhere语句及分组
Where语句使用WHERE子句,将不满足条件的行过滤掉WHERE子句紧随FROM子句案例实操查询出薪水大于1000的所有员工hive (default)> select * from emp where sal >1000;注意:where子句中不能使用字段别名。比较运算符(Between/In/ Is Null)下面表中描述了谓词操作符,这些操作符同样可以用于...原创 2020-05-23 08:44:32 · 624 阅读 · 0 评论 -
Hive基本查询(Select…From)
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select查询语句语法:[WITH CommonTableExpression (, CommonTableExpression)*] (Note: Only available starting with Hive 0.13.0)SELECT [ALL ...原创 2020-05-22 08:24:49 · 1845 阅读 · 0 评论 -
HiveDDL数据定义---修改删除表
修改表重命名表语法ALTER TABLE table_name RENAME TO new_table_name实操案例hive (default)> alter table dept_partition2 rename to dept_partition3;增加/修改/替换列信息语法更新列ALTER TABLE table_name CHANGE [COLUMN] c...原创 2020-05-21 08:37:26 · 186 阅读 · 0 评论 -
HiveDML数据操作--数据导入导出
数据导入向表中装载数据(Load)语法hive> load data [local] inpath '/opt/module/datas/student.txt' [overwrite] into table student [partition (partcol1=val1,…)];load data:表示加载数据local:表示从本地加载数据到hive表;否则从HDFS加载...原创 2020-05-20 08:55:09 · 263 阅读 · 0 评论 -
HiveDDL数据定义---分区表
分区表分区表实际上就是对应一个HDFS文件系统上的独立的文件夹,该文件夹下是该分区所有的数据文件。Hive中的分区就是分目录,把一个大的数据集根据业务需要分割成小的数据集。在查询时通过WHERE子句中的表达式选择查询所需要的指定的分区,这样的查询效率会提高很多分区表基本操作引入分区表(需要根据日期对日志进行管理)/user/hive/warehouse/log_partition/20...原创 2020-05-19 08:33:34 · 250 阅读 · 1 评论 -
HiveDDL数据定义---创建表
创建表建表语法CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name[(col_name data_type [COMMENT col_comment], ...)][COMMENT table_comment][PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)][...原创 2020-05-18 08:37:28 · 264 阅读 · 0 评论 -
HiveDDL数据定义---数据库操作
创建数据库CREATE DATABASE [IF NOT EXISTS] database_name[COMMENT database_comment][LOCATION hdfs_path][WITH DBPROPERTIES (property_name=property_value, ...)];创建一个数据库,数据库在HDFS上的默认存储路径是/user/hive/wareh...原创 2020-05-15 08:57:15 · 217 阅读 · 0 评论 -
Hive详细数据类型
基本数据类型Hive数据类型Java数据类型长度例子TINYINTbyte1byte有符号整数20SMALINTshort2byte有符号整数20INTint4byte有符号整数20BIGINTlong8byte有符号整数20BOOLEANboolean布尔类型,true或者false数TRUE FALSEFL...原创 2020-05-14 08:35:16 · 614 阅读 · 0 评论 -
Hive常见属性详细配置
Hive数据仓库位置配置Default数据仓库的最原始位置是在hdfs上的:/user/hive/warehouse路径下。在仓库目录下,没有对默认的数据库default创建文件夹。如果某张表属于default数据库,直接在数据仓库目录下创建一个文件夹。修改default数据仓库原始位置(将hive-default.xml.template如下配置信息拷贝到hive-site.xml文件中...原创 2020-05-13 08:36:30 · 435 阅读 · 0 评论 -
Hive常用详细命令
Hive常用交互命令[liujh@hadoop102 hive]$ bin/hive -helpusage: hive -d,--define <key=value> Variable subsitution to apply to hive commands. e.g. -d A=B or -...原创 2020-05-12 08:29:16 · 414 阅读 · 0 评论 -
Hive超详细元数据配置到MySql
MySql安装查看mysql是否安装,如果安装了,卸载mysql查看[root@hadoop102 桌面]# rpm -qa|grep mysqlmysql-libs-5.1.73-7.el6.x86_64卸载[root@hadoop102 桌面]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64安装mysql服务端安装mysq...原创 2020-05-11 08:33:52 · 395 阅读 · 1 评论 -
Hive详细安装
Hive安装地址Hive官网地址 http://hive.apache.org/文档查看地址 https://cwiki.apache.org/confluence/display/Hive/GettingStarted下载地址 http://archive.apache.org/dist/hive/github地址 https://github.com/apache/hiveHiv...原创 2020-05-09 09:16:16 · 247 阅读 · 0 评论 -
Hive详细基本概念
什么是HiveHive:由Facebook开源用于解决海量结构化日志的数据统计。Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。本质是:将HQL转化成MapReduce程序1)Hive处理的数据存储在HDFS2)Hive分析数据底层的实现是MapReduce3)执行程序运行在Yarn上Hive的优点操作接口采用类SQL语...原创 2020-05-09 09:15:24 · 440 阅读 · 0 评论