第2节 hive基本操作:6、7、8】的更多相关文章

第1节 hive安装:6.hive的基本操作:7.创建数据库的语法:8.hive当中创建内部表的语法. hive的基本操作: 创建数据库与创建数据库表操作 创建数据库操作:create database if not exists xxx; 创建数据库表的操作: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name 创建表的三个关键字段 [(col_name data_type [COMMENT col_comment], ...)] 定义我们的列…
3.2. hive查询语法 3.2.1.SELECT https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select 基本的Select操作 ü  语法结构 SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list [HAVING condit…
分桶表 将数据按照指定的字段进行分成多个桶中去,说白了就是将数据按照字段进行划分,可以将数据按照字段划分到多个文件当中去 开启hive的桶表功能 set hive.enforce.bucketing=true; 设置reduce的个数 set mapreduce.job.reduces=3; 创建桶表 create table course (c_id string,c_name string,t_id string) clustered by(c_id) into 3 buckets row…
外部分区表综合练习: 需求描述:现在有一个文件score.csv文件,存放在集群的这个目录下/export/servers/scoredatas/month=201806,这个文件每天都会生成,存放到对应的日期文件夹下面去,文件别人也需要公用,不能移动.需求,创建hive对应的表,并将数据加载到表中,进行数据统计分析,且删除表之后,数据不能删除 需求实现: 数据准备: hdfs dfs -mkdir -p /scoredatas/month=201806 hdfs dfs -put score.…
外部表: 外部表说明: 外部表因为是指定其他的hdfs路径的数据加载到表当中来,所以hive表会认为自己不完全独占这份数据,所以删除hive表的时候,数据仍然存放在hdfs当中,不会删掉 管理表和外部表的使用场景: 每天将收集到的网站日志定期流入HDFS文本文件.在外部表(原始日志表)的基础上做大量的统计分析,用到的中间表.结果表使用内部表存储,数据通过SELECT+INSERT进入内部表. 操作案例 分别创建老师与学生表外部表,并向表中加载数据 创建老师表: create external t…
第3节 hive高级用法:16.hive当中常用的几种数据存储格式对比:17.存储方式与压缩格式相结合:18.总结 hive当中的数据存储格式: 行式存储:textFile sequenceFile 都是行式存储 列式存储:orc parquet 可以使我们的数据压缩的更小,压缩的更快 数据查询的时候尽量不要用select * 只选取我们需要的字段即可 hive的数据存储格式:用的比较多的一种行式存储 : textfile 用的比较多的列式存储: orc parquet 其中orc底层有自带的一…
第1节 hive安装: 2.数据仓库的基本概念: 3.hive的基本介绍: 4.hive的基本架构以及与hadoop的关系以及RDBMS的对比等 5.hive的安装之(使用mysql作为元数据信息存储) 课程内容:hive1.数据仓库的基本概念 了解2.hive基本概念 hive的安装部署 搞定3.hive的基本操作 建库建表操作 掌握 搞定 hive的基本语法 掌握 搞定 4.hive的shell参数 了解5.hive的函数 内置函数 了解 自定义函数 自定义udf函数 搞定 6.hive的数…
hive基本操作 hive的数据类型 1)基本数据类型 TINYINT,SMALLINT,INT,BIGINT FLOAT/DOUBLE BOOLEAN STRING 2)复合类型 ARRAY:一组有序字段.字段的类型必须相同,例Array(1,2) MAP:一组无序的键/值对.键的类型必须是原子的,值可以是任何类型,同一个映射的键的类型必须相同,值得类型也必须相同.例Map('a',1,'b',2) STRUCT:一组命名的字段.字段类型可以不同.例Struct('a',1,1,0) hive…
数据的倾斜: 主要就是合理的控制我们的map个数以及reduce个数 第一个问题:maptask的个数怎么定的???与我们文件的block块相关,默认一个block块就是对应一个maptask 第二个问题:reduceTask的个数怎么定的???是我们自己手动设置的,爱设几个设几个,没人管你 第三个问题:是不是maptask的个数越多越好:不一定:有时候有些小文件,都要启动一个maptask,分配资源的时间超过了数据处理的时间 减少mapTask的个数:设置map端的小文件合并:使用combin…
阅读本文章可以带着下面问题:1.与传统数据库对比,找出他们的区别2.熟练写出增删改查(面试必备) 创建表:hive> CREATE TABLE pokes (foo INT, bar STRING);         Creates a table called pokes with two columns, the first being an integer and the other a string 创建一个新表,结构与其他一样hive> create table new_table…