/*hive 学习笔记*/
/*--------------------------------------------------------------------2018.7.22-------------------------------------------------------------------------------*/
/*hive基础知识:
hadoop组成部分:
mapreduce:一种计算模型,该模型将大型数据处理任务分解成很多个,可以在服务器集群上并行执行的任务。这些任务的计算结果可以合并在一起来计算最终的结果。
分布式文件系统HDFS
HiveQL/HQL:hive查询语言,用来查询存储在hadoop集群中的数据,将大多数的查询转换为MapReduce任务。
hive不是一个完整的数据库,不支持记录级别的更新、插入或者删除操作,但是用户可以通过查询生成新表或者将查询结果导入到文件中;hive不支持OLTP(联机事务处理)
所需的关键功能,而更接近成为一个OLTP(联机分析技术)工具。*/
/*hive基本数据类型:
TINYINT 1byte 有符号整数
SAMLLINT 2byte 有符号整数
INT 4byte 有符号整数
BIGINT 8byte 有符号整数
BOOLEAN 布尔类型,true或者false
FLOAT 单精度浮点数
DOUBLE 双精度浮点数
STRING 字符序列,可以指定字符集。可以使用单引号或者双引号
TIMESTAMP 整数,浮点数或者字符串
BINARY 字节数组*/
/*hive集合数据类型:
STRUCT 和C语言中的struct或者对象类似,都可以通过“点”符号访问元素内容。例如,如果某个列的数据类型是struct{first string,last string},那么第1个元素可以通过
字段名.first来引用
MAP map是一组键-值对元祖集合,使用数组表示法(例如['key'])可以访问元素。例如,如果某个列的数据类型是map,其中键->值对是'first'->'john'和'last'->'doe',那么
可以通过字段名['last']获取最后1个元素
ARRAY 数组是一组具有相同类型的名称的变量的集合。这些变量称为数组的元素,每个数组元素都有一个编号,编号从0开始。例如,数组值为['john','doe'],那么第2个元素可
以通过数组名[1]进行引用*/
/*eg:hive使用这些数据类型的表结构声明语句,这是一张虚构的人力资源应用程序中的员工表*/
hive> CREATE TABLE employees(
name STRING,
salary FLOAT,
subordinates ARRAY<STRING>,
deductions MAP<STRING,FLOAT>,
address STRUCT<street:STRING,city:STRING,state:STRING,zip:INT>
);
/*hive中默认的按记录和字段分割符:
\n 对于文本文件来说,每行都是一条记录,因此换行符可以分隔记录
^A(ctrl+A) 用于分隔字段(列)。在create table语句中可以使用八进制编码
hive学习笔记
最新推荐文章于 2024-04-24 09:00:13 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)