每个人都有每个人的生活方式。每个人都有每个人要走的路,每条路不一定适合每个人,这就像每个人穿内裤一样,不在乎外表多么花俏,最重要的是适合自己,人生的十字路口又很多,选择了,就义无反顾的走下去,不要回头,因为回头你得不到你想要的答案!
————————————————前言:送给为了自己目标努力的你!
开始今天的学习
DDL: Data Definition Language
create delete drop alter关键字开头的

Database
HDFS上的一个文件夹
默认自带一个default数据库
默认数据库存放位置:/user/hive/warehouse
位置是由参数决定的:hive.metastore.warehouse.dir
Hive所有参数的查询:https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties
在Hive里面查看指定配置参数的语法:
set key;
你要设置参数: set key=value;

CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name
[COMMENT database_comment]
[LOCATION hdfs_path]
[WITH DBPROPERTIES (property_name=property_value, …)];

CREATE DATABASE IF NOT EXISTS d5_hive;
非default的存放路径:${hive.metastore.warehouse.dir}/dbname.db

CREATE DATABASE IF NOT EXISTS d5_hive_2
COMMENT ‘this is ruozedata d5’
WITH DBPROPERTIES (‘creator’=‘ruoze’, ‘date’=‘20181020’);

ALTER (DATABASE|SCHEMA) database_name SET DBPROPERTIES (property_name=property_value, …); – (Note: SCHEMA added in Hive 0.14.0)

ALTER (DATABASE|SCHEMA) database_name SET OWNER [USER|ROLE] user_or_role; – (Note: Hive 0.13.0 and later; SCHEMA added in Hive 0.14.0)

ALTER (DATABASE|SCHEMA) database_name SET LOCATION hdfs_path; – (Note: Hive 2.2.1, 2.4.0 and later)

DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE];

cascade: hibernate/jpa
1对多的时候,你删除1的一端是否删除多的一端

create table xx(id int);

数值类型:int bigint float double
字符串: string <= date time
20181020

t:date time - stringwhere flag=true  0

Hive构建在Hadoop之上
hive创建表,然后数据是存储在HDFS之上
文件:zhangsan,20,m,beijing
表: name age gender location

所以创建表的时候要指定分隔符(默认分隔符是\001 ^A)
空格、制表符(\t)

CREATE TABLE ruoze_emp (
empno int,
ename string,
job string,
mgr int,
hiredate string,
sal double,
comm double,
deptno int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
;

load data local inpath ‘/home/hadoop/data/emp.txt’ overwrite into table ruoze_emp;

$$$$$

row_format
DELIMITED [FIELDS TERMINATED BY char [ESCAPED BY char]] [COLLECTION ITEMS TERMINATED BY char]
[MAP KEYS TERMINATED BY char] [LINES TERMINATED BY char]
[NULL DEFINED AS char] – (Note: Available in Hive 0.13 and later)
| SERDE serde_name [WITH SERDEPROPERTIES (property_name=property_value, property_name=property_value, …)]

desc xxx
desc formatted ruoze_emp;

内部表和外部表
MANAGED_TABLE

create table ruoze_emp_managed as select * from ruoze_emp;
创建了一张内部表:HDFS MySQL 都有数据
删除表

CREATE EXTERNAL TABLE ruoze_emp_external (
empno int,
ename string,
job string,
mgr int,
hiredate string,
sal double,
comm double,
deptno int
)ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
LOCATION ‘/ruoze_emp_external’
;

DML : Data Manipulation Language

LOAD DATA [LOCAL] INPATH ‘filepath’ [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 …)]

create table ruoze_dept(
deptno int,
dname string,
loc string
)ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’;

LOAD DATA LOCAL INPATH ‘/home/hadoop/data/dept.txt’ INTO TABLE ruoze_dept;

LOAD DATA INPATH ‘/data/dept.txt’ INTO TABLE ruoze_dept;

Standard syntax:
INSERT OVERWRITE TABLE tablename1 [PARTITION (partcol1=val1, partcol2=val2 …) [IF NOT EXISTS]] select_statement1 FROM from_statement;
INSERT INTO TABLE tablename1 [PARTITION (partcol1=val1, partcol2=val2 …)] select_statement1 FROM from_statement;

INSERT OVERWRITE TABLE ruoze_emp_test select empno,ename from ruoze_emp;

INSERT OVERWRITE TABLE ruoze_emp_test
select empno,job,ename,mgr,hiredate,sal,comm,deptno from ruoze_emp;

INSERT OVERWRITE LOCAL DIRECTORY ‘/tmp/ruoze’
ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
SELECT empno,ename FROM ruoze_emp;
操作
[root@hadoop001 ~]# su - hadoop
Last login: Mon Nov 19 23:26:37 CST 2018 on pts/1
-bash: /home/hadoop/.bash_profile: line 14: syntax error near unexpected token newline' -bash: /home/hadoop/.bash_profile: line 14:
[hadoop@hadoop001 ~]$ cd app
[hadoop@hadoop001 app]$ ll
total 417656
drwxr-xr-x 16 hadoop hadoop 4096 Nov 19 09:02 hadoop-2.6.0-cdh5.7.0
-rw-rw-r-- 1 hadoop hadoop 311585484 Apr 1 2016 hadoop-2.6.0-cdh5.7.0.tar.gz
drwxr-xr-x 10 hadoop hadoop 4096 Mar 24 2016 hive-1.1.0-cdh5.7.0
-rw-rw-r-- 1 hadoop hadoop 116082695 Apr 1 2016 hive-1.1.0-cdh5.7.0.tar.gz
[hadoop@hadoop001 app]$ cd hive-1.1.0-cdh5.7.0
[hadoop@hadoop001 hive-1.1.0-cdh5.7.0]$ ll
total 440
drwxr-xr-x 3 hadoop hadoop 4096 Mar 24 2016 bin
drwxr-xr-x 2 hadoop hadoop 4096 Nov 19 23:22 conf
drwxr-xr-x 3 hadoop hadoop 4096 Mar 24 2016 data
drwxr-xr-x 6 hadoop hadoop 4096 Mar 24 2016 docs
drwxr-xr-x 4 hadoop hadoop 4096 Mar 24 2016 examples
drwxr-xr-x 7 hadoop hadoop 4096 Mar 24 2016 hcatalog
drwxr-xr-x 4 hadoop hadoop 12288 Nov 19 20:45 lib
-rw-r–r-- 1 hadoop hadoop 23169 Mar 24 2016 LICENSE
-rw-r–r-- 1 hadoop hadoop 397 Mar 24 2016 NOTICE
-rw-r–r-- 1 hadoop hadoop 4048 Mar 24 2016 README.txt
-rw-r–r-- 1 hadoop hadoop 376416 Mar 24 2016 RELEASE_NOTES.txt
drwxr-xr-x 3 hadoop hadoop 4096 Mar 24 2016 scripts
[hadoop@hadoop001 hive-1.1.0-cdh5.7.0]$ cd conf
[hadoop@hadoop001 conf]$ hive
which: no hbase in (/home/hadoop/app/hive-1.1.0-cdh5.7.0/bin:/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/bin:/usr/java/jdk1.7.0_80/bin:/usr/java/jdk1.7.0_80/bin:/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin)

Logging initialized using configuration in jar:file:/home/hadoop/app/hive-1.1.0-cdh5.7.0/lib/hive-common-1.1.0-cdh5.7.0.jar!/hive-log4j.properties
WARNING: Hive CLI is deprecated and migration to Beeline is recommended.
hive (default)> show databases;
OK
default
Time taken: 1.219 seconds, Fetched: 1 row(s)
hive (default)>
> CREATE DATABASE d5_hive;
OK
Time taken: 0.588 seconds
hive (default)> show databases;
OK
d5_hive
default
Time taken: 0.095 seconds, Fetched: 2 row(s)
hive (default)> CREATE DATABASE IF NOT EXISTS d5_hive_2
> COMMENT ‘this is ruozedata d5’
> WITH DBPROPERTIES (‘creator’=‘ruoze’, ‘date’=‘20181020’);
OK
Time taken: 0.192 seconds
hive (default)> show databases;
OK
d5_hive
d5_hive_2
default
Time taken: 0.067 seconds, Fetched: 3 row(s)
hive (default)> desc database d5_hive_2
> desc database d5_hive_2;
FAILED: ParseException line 2:0 missing EOF at ‘desc’ near ‘d5_hive_2’
hive (default)> desc database d5_hive_2;
OK
d5_hive_2 this is ruozedata d5 hdfs://hadoop001:9000/user/hive/warehouse/d5_hive_2.db hadoop USER
Time taken: 0.072 seconds, Fetched: 1 row(s)
hive (default)> use d5_hive;
OK
Time taken: 0.029 seconds
hive (d5_hive)> show databases;
OK
d5_hive
d5_hive_2
default
Time taken: 0.047 seconds, Fetched: 3 row(s)
hive (d5_hive)> create table x(id int)
> ;
OK
Time taken: 0.446 seconds
hive (d5_hive)> show databases;
OK
d5_hive
d5_hive_2
default
Time taken: 0.055 seconds, Fetched: 3 row(s)
hive (d5_hive)> drop database d5_hive_2;
OK
Time taken: 1.301 seconds
hive (d5_hive)> show databases;
OK
d5_hive
default
Time taken: 0.071 seconds, Fetched: 2 row(s)
hive (d5_hive)> drop database d5_hive
> ;
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. InvalidOperationException(message:Database d5_hive is not empty. One or more tables exist.)
hive (d5_hive)> drop database d5_hive cascade;
OK
Time taken: 7.571 seconds
hive (d5_hive)> show databases;
OK
default
Time taken: 0.091 seconds, Fetched: 1 row(s)
hive (d5_hive)> use default;
OK
Time taken: 0.047 seconds
hive (default)> CREATE TABLE ruoze_emp (
> empno int,
> ename string,
> job string,
> mgr int,
> hiredate string,
> sal double,
> comm double,
> deptno int
> )
> ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
> ;
OK
Time taken: 0.349 seconds
hive (default)> show databases;
OK
default
Time taken: 0.127 seconds, Fetched: 1 row(s)
hive (default)> show tables;
OK
ruoze_emp
Time taken: 0.08 seconds, Fetched: 1 row(s)
hive (default)> select * from ruoze_emp;
OK
Time taken: 0.645 seconds
hive (default)> load data local inpath ‘/home/hadoop/data/emp.txt’ overwrite into table ruoze_emp;
Loading data to table default.ruoze_emp
Table default.ruoze_emp stats: [numFiles=1, numRows=0, totalSize=700, rawDataSize=0]
OK
Time taken: 1.598 seconds
hive (default)> select * from ruoze_emp;
OK
7369 SMITH CLERK 7902 1980-12-17 800.0 NULL 20
7499 ALLEN SALESMAN 7698 1981-2-20 1600.0 300.0 30
7521 WARD SALESMAN 7698 1981-2-22 1250.0 500.0 30
7566 JONES MANAGER 7839 1981-4-2 2975.0 NULL 20
7654 MARTIN SALESMAN 7698 1981-9-28 1250.0 1400.0 30
7698 BLAKE MANAGER 7839 1981-5-1 2850.0 NULL 30
7782 CLARK MANAGER 7839 1981-6-9 2450.0 NULL 10
7788 SCOTT ANALYST 7566 1987-4-19 3000.0 NULL 20
7839 KING PRESIDENT NULL 1981-11-17 5000.0 NULL 10
7844 TURNER SALESMAN 7698 1981-9-8 1500.0 0.0 30
7876 ADAMS CLERK 7788 1987-5-23 1100.0 NULL 20
7900 JAMES CLERK 7698 1981-12-3 950.0 NULL 30
7902 FORD ANALYST 7566 1981-12-3 3000.0 NULL 20
7934 MILLER CLERK 7782 1982-1-23 1300.0 NULL 10
8888 HIVE PROGRAM 7839 1988-1-23 10300.0 NULL NULL
Time taken: 0.196 seconds, Fetched: 15 row(s)
hive (default)>
hive (default)> show tables;
OK
ruoze_emp
ruoze_emp2
ruoze_emp3
ruoze_emp_managed
Time taken: 0.02 seconds, Fetched: 4 row(s)
hive (default)> CREATE EXTERNAL TABLE ruoze_emp_external (
> empno int,
> ename string,
> job string,
> mgr int,
> hiredate string,
> sal double,
> comm double,
> deptno int
> )ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
> LOCATION ‘/ruoze_emp_external’
> ;
OK
hive (default)>
>
> create table ruoze_dept(
> deptno int,
> dname string,
> loc string
> )ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’;
OK
Time taken: 0.342 seconds
hive (default)>
> select * from ruoze_dept;
OK
Time taken: 0.32 seconds
hive (default)> LOAD DATA LOCAL INPATH ‘/home/hadoop/data/dept.txt’ INTO TABLE ruoze_dept;
Loading data to table default.ruoze_dept
Table default.ruoze_dept stats: [numFiles=1, totalSize=79]
OK
Time taken: 0.735 second
hive (default)> select * from ruoze_dept;
OK
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
Time taken: 0.208 seconds, Fetched: 4 row(s)
hive (default)>
结束语:每一次含苞的绽放,都需要经过漫长的等待,每一次绽放的开始,都要尽展其光芒,不怕前方的路有多长,就怕你心中没有光芒,相信自己,出发吧,少年!
—————————————————送给在路上奔跑的你!

【HIVE 之 DDL,DML】相关推荐

  1. 【Hive】hive基本操作 ddl dml

    文章目录 1. ddl 操作 1.1库操作 1.1.1 创建库 1.1.2 查看库 1.1.3 切换库 1.1.4 删除库 1.2 表操作 1.2.1 创建表 1.2.1.0 建表语法及解释 1.2. ...

  2. 大数据开发实战:Hive表DDL和DML

    1.Hive 表 DDL 1.1.创建表 Hive中创建表的完整语法如下: CREATE [EXTERNAL] TABLE [IF NOT EXISTS]  table_name [ (col_nam ...

  3. Hive数据据类型 DDL DML

    Hive的基本数据类型 DDL DML: 基本数据类型 Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符 ...

  4. hive表ddl导出_Flink 1.11 与 Hive 批流一体数仓实践

    简介:Flink 从 1.9.0 开始提供与 Hive 集成的功能,随着几个版本的迭代,在最新的 Flink 1.11 中,与 Hive 集成的功能进一步深化,并且开始尝试将流计算场景与Hive 进行 ...

  5. ORA-38301:can not perform DDL/DML over objects in Recycle Bin

    一个智障操作,drop一个用户,下面的东西比较多,删得比较慢,然后shell突然关了. 就导致了,删不掉,又不能创建新的用户.出版本要得比较急,就先创建新的用户测试去了. 今天要弄个东西,又想起这个事 ...

  6. Hive之DDL数据操作

    Hive之DDL数据操作 目录 数据导入 数据导出 清除表中数据 1. 数据导入 1. 向表中装载数据(Load) 语法 hive> load data [local] inpath '/opt ...

  7. Hive之DDL数据定义

    Hive之DDL数据定义 目录 创建数据库 查询数据库 修改数据库 删除数据库 创建表 分区表 修改表 删除表 1. 创建数据库 创建一个数据库,数据库在HDFS上的默认存储路径是/user/hive ...

  8. MySQL 的DDL DML DQL DCL细节解析 知道这些就够了

    SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL 1.数据定义语言DDL(Data Definition Language) 对象: 数据库和表 ...

  9. 第 1 行出现错误: ORA-00604: 递归 SQL 级别 1 出现错误 ORA-38301: 无法对回收站中的对象执行 DDL/DML

    第 1 行出现错误: ORA-00604: 递归 SQL 级别 1 出现错误 ORA-38301: 无法对回收站中的对象执行 DDL/DML 由于删除表空间时 出了点问题 最后一直没发删除表空间 先断 ...

  10. consistent read一致性读,DDL DML DCL

    一致性读的概念consistent read mysql 的读操作是快照读,也就是说,在读操作执行的时候是某一个时刻的数据内容,不管其他的事务在做什么,原始数据会依据undo log 进行重新组织.一 ...

最新文章

  1. C++函数指针 学习笔记
  2. EqualLogic全攻略视频[(四)高级管理]
  3. 这5部不容错过的超高评价纪录片,带你领略地球的魅力!
  4. Spring Boot自定义横幅生成
  5. org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException:
  6. 我的ELK搭建笔记(阿里云上部署)
  7. 加载osgb数据转换不能用_在ArcGIS Pro中OSGB数据转换及发布服务流程
  8. 使用基于JSON的实体在C#中缓存远程数据
  9. PHP tcp短链接,示例:建立TCP链接
  10. 2021-09-06LS是交替最小二乘(alternating least squares)的简称,用交替最小二乘求解的一个协同推荐算法。
  11. Windows 注册表清理
  12. mcal rtm_RTM的完整形式是什么?
  13. 华硕主板装系统蓝屏_装xp系统蓝屏,电脑安装xp系统蓝屏怎么办
  14. java根据业务排序利用Comparator.comparing自定义排序规则
  15. HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/linux-64/tqdm-4.64.0-py39h06
  16. js new Date() 当前时间/指定时间转换为时间戳
  17. Linux Centos8踩坑
  18. Class::DBI模块简介
  19. Dell Inspiron 15R - QQ语音时麦克风没有声音的设置办法
  20. 拆解B站内容运营新思路,UP主如何在内卷严重赛道中“求同存异”

热门文章

  1. 跋山涉水 —— 深入 Redis 字典遍历
  2. Nginx+Tomcat搭建高性能负载均衡集群
  3. type=xhr的500错误
  4. 使用Chrome快速实现数据的抓取(三)——JQuery
  5. 数字后端基本概念介绍<Blockage Link>
  6. mysql setautocommit_MySql 中的setAutoCommit方法
  7. echarts 柱状图如何不顶格_echarts柱状图如何中间对齐而不是底部对齐?
  8. oracle 12g 无监听,Oracle 12.2监听无法启动解决一例
  9. perl oracle ppm,Perl图形化包管理工具PPM学习使用笔记
  10. 思杰VDI外篇XDDC安装