Hive 复习
hive分为CLI(command line)(用的比较多)
JDBC/ODBC-ThriftServer
hiveServer(hive -service hiveserver),JDBC访问,一个客户端连接数,需要建立pool池,内存损耗极大,容易内存溢出(数据量太大不用)
web gui(基本不用)
Metastore (存储字段信息和数据存储HDFS的信息)
Complier(编译器):对sql查询语句进行语意分析并通过metastore中查找表和分区的元信息,生成执行计划。
Optimizer(优化器):优化HQL
Executor(执行器):对生成的执行计划进行执行
hive -e ‘select * from dual’ 命令行执行(不进入hive command line) -i “文件名”(add jar进行UDF的预先加载)
hive -f .sql(执行文件 不支持传递参数)
通过hive -e的封装成hiveF 可以传递无数参数
hive优化
架构层面:
1 合理利用结果集(查询后结果加以利用,常用复杂或者低效统计统一给出,避免上层作业过多计算)
2 合理利用表分区(静态分区和动态分区)
HQL语法层面
执行计划
Hive参数层面(全局)
太暴力,很少用,有时候会起到不错效果
技巧
分表(把大数据的表脱离一些数据独立成别的表)
Hadoop 负载主要是 CPU负载和IO负载
两者可以相互转化ex:压缩(把IO转化为CPU)
Hive 复习的更多相关文章
- 二十五、Hadoop学记笔记————Hive复习与深入
Hive主要为了简化MapReduce流程,使非编程人员也能进行数据的梳理,即直接使用sql语句代替MapReduce程序 Hive建表的时候元数据(表明,字段信息等)存于关系型数据库中,数据存于HD ...
- 1 复习ha相关 + weekend110的hive的元数据库mysql方式安装配置(完全正确配法)(CentOS版本)(包含卸载系统自带的MySQL)
本博文的主要内容是: .复习HA相关 .MySQL数据库 .先在MySQL数据库中建立hive数据库 .hive的配置 以下是Apache Hadoop HA的总结.分为hdfs HA和yarn HA ...
- 【转】Hive 基础之:分区、桶、Sort Merge Bucket Join
Hive 已是目前业界最为通用.廉价的构建大数据时代数据仓库的解决方案了,虽然也有 Impala 等后起之秀,但目前从功能.稳定性等方面来说,Hive 的地位尚不可撼动. 其实这篇博文主要是想聊聊 S ...
- 60分钟内从零起步驾驭Hive实战学习笔记
本博文的主要内容是: 1. Hive本质解析 2. Hive安装实战 3. 使用Hive操作搜索引擎数据实战 SparkSQL前身是Shark,Shark强烈依赖于Hive.Spark原来没有做SQL ...
- hive权威安装出现的不解错误!(完美解决)两种方法都可以
以下两种方法都可以,推荐用方法一! 方法一: 步骤一: yum -y install mysql-server 步骤二:service mysqld start 步骤三:mysql -u root - ...
- Hive分区和桶
SMB 存在的目的主要是为了解决大表与大表间的 Join 问题,分桶其实就是把大表化成了“小表”,然后 Map-Side Join 解决之,这是典型的分而治之的思想.在聊 SMB Join 之前,我们 ...
- Hive中知识点
hive的最新学习资料:http://www.cnblogs.com/qingyunzong/p/8707885.html hive的参数设置大全:https://cwiki.apache.org/c ...
- 041 SparkSql的回顾与复习
在前面学完了SparkCore后,又学了SparkSQL,在继续加深学习之前,一定的复习还是很重要的.这里大体写一下,加深自己对SparlSQL的理解. 1.SparkSQL 首先是SaprkSQL与 ...
- 【转载】全栈工程师-Hadoop, HBase, Hive, Spark
学习参考这篇文章: http://www.shareditor.com/blogshow/?blogId=96 机器学习.数据挖掘等各种大数据处理都离不开各种开源分布式系统, hadoop用于分布式存 ...
随机推荐
- WP8.1 Study2:MapControl控件的应用
总的界面布局如下:
- SQL学习心得(转)
http://www.cnblogs.com/lyhabc/p/3732942.html
- Integer 和int
获取Integer对象有两种方式:Integer x = 100:或者Integer x = new Integer(100): Integer x = 100:等价于Integer x = Inte ...
- (转)MyEclipse设置注释格式
原文:http://xinghaifeng2006.iteye.com/blog/1243565 MyEclipse设置注释格式(转载) 博客分类: Java基础知识 Windo ...
- windows程序设计笔记
2014.05.06 新建一个visual C++ -- 常规 -- 空白 的项目,用.c后缀名指定这是一个用C语言来写的windows项目.和C语言的hellworld程序做了一个比较,按照wind ...
- VS调试Ajax
VS调试Ajax: 1.ashx在后台处理程序中设定断点 2.触发AJAX 3.F12打开浏览器调试,搜索找到ajax调用的JS,设置断点,在浏览器中单步调试,会自动进入后台处理程序,然后就可以调试后 ...
- UI基础:UIActionSheet和UIAlterView
iOS中有两个弹出视图的控件,分别是UIActionSheet和UIAlterView.效果图如下: 主要代码如下: - (void)viewDidLoad { [super viewDi ...
- 【转】IoC/DIP其实是一种管理思想
原文转自:http://blogread.cn/it/article/6487?f=wb 关于IoC的的概念提出来已经很多年了,其被用于一种面象对像的设计.我在这里再简单的回顾一下这个概念.我先谈技术 ...
- Smart210学习记录-------Linux设备驱动结构
cdev结构体 1 struct cdev { 2 struct kobject kobj; /* 内嵌的 kobject 对象 */ 3 struct module *owner; /*所属模块*/ ...
- 如何修改WAMP数据库上传文件的大小及上传时间限制
一个文件如果几十兆的话,上传时可能出错,因为执行时间不够, 比如我遇到的ECshop的数据库文件就是 40多M 第一次执行失败. 所以索性一次性把所有东西都设置好.在php.ini(apache中的P ...