039 hive中关于数据库与表等的基本操作
一:基本用法
1.新建数据库

2.删除数据库

3.删除非空的数据库

4.指定数据库的位置
LOCATION:指定数据库的位置,不会在系统的默认文件下。

5.在指定数据库中新建表(验证在指定的数据库中可以建表)

6.在页面上观看表
可以看到在指定的目录下有一张新建的表。
但是,没有看到指定的数据库。

7.新建表

8.删除一张表
drop table if exists student;

9.清空一张表

10.加载数据
1)从本地加载

2)从HDFS上加载

3)区别:
移动。

11.查询

12.描述一张表
一张表的一些信息。

13.查看方法

14.描述方法

二:hive的参数的用法
1.到指定的数据库

2.命令行执行SQL

3.执行文件里的sql

4.启动时指定hive的陪置

5.查看当前的配置,更可以更改配置

三.hive shell中常用的操作
1.访问本地文件系统

2.访问hdfs

四.hive中表的使用
1.创建表的三种方式
1)第一种方式:普通方式

2)第二种方式:as select ,子查询方式
特点:将子查询的数据和结构复制给新的表。

3)第三种方式:like
特点:复制表的结构。

2.表的类型
1)新建员工表

2)新建部门表

3)默认表的类型:管理表
4)问题:文件还有一份,多人使用时,可以通过location指定创建多张表

看在HDFS中的效果

没有加载数据,但是依旧可以使用emp的数据,因为使用的目录。

如果这时候删除掉emp1:
这时,会删除掉元数据的信息,同时删除在HDFS中表的两个文件夹emp与emp1,但是hive中还保留着emp。
5)解决方案
使用外部表。
3.创建外部表
这时,在HDFS上依旧只有一张dept的元数据表。
两个地方:external,location。

4.EXCERANL新建的是外部表
可以看描述信息。

5.外部表的好处
这时,删掉dept_ext,dept表的元数据依然还在。
6.管理表与外部表的区别
管理表的删除操作:先删除元数据,然后删除表的文件夹
外部表的删除操作:只删除元数据
五:分区表
1.分区表需求
当前的web服务器上的log文件,需求是对前一天日志进行分析:
20161019.log
20161020.log
20161021.log
20161022.log
第一种: /logs/20161019.log
20161020.log
20161021.log
20161022.log
select * from logs where date='20161022';
这种情况是:先加载再过滤,其实意思是,这些数据会全部加载到mapreduce,然后才选择自己需要的数据。
第二种: /logs/20161019/20161019.log
/20161020/20161020.log
select * from logs where date='20161022';
这种情况是:会直接加载加载相应的文件到mapreduce。
2.新建分区表
其中,by后面的字段是一个逻辑字段,在表中是没有的。

这时,HDFS上出现字段。这个情况是必须加载完数据才会出现的情况,不然没有分区的字段值。

3.分区表查询
分区表的全部查询:
select * from emp;
然后可以根据字段进行过滤:
select * from emp where date='20161021';
为啥可以这么做?因为,在全部的查询中,会发现多了一个date的字段,所以可以作为条件进行过滤。
4.多级分区

5.多级分区的效果

039 hive中关于数据库与表等的基本操作的更多相关文章
- hive中关于数据库与表等的基本操作
一:基本用法 1.新建数据库 2.删除数据库 3.删除非空的数据库 4.指定数据库的位置 LOCATION:指定数据库的位置,不会在系统的默认文件下. 5.在指定数据库中新建表(验证在指定的数据库中可 ...
- Hive中的数据库、表、数据与HDFS的对应关系
1.hive数据库 我们在hive终端,查看数据库信息,可以看出hive有一个默认的数据库default,而且我们还知道hive数据库对应的是hdfs上面的一个目录,那么默认的数据库default到底 ...
- Hive中的数据库(Database)和表(Table)
在前面的文章中,介绍了可以把Hive当成一个"数据库",它也具备传统数据库的数据单元,数据库(Database/Schema)和表(Table). 本文介绍一下Hive中的数据库( ...
- SQL Server中查询数据库及表的信息语句
/* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...
- SQL中查看数据库各表的大小
SQL中查看数据库各表的大小 编写人:CC阿爸 2014-6-17 在日常SQL数据库的操作中,如何快速的查询数据库中各表中数据的大小. 以下有两种方法供参考: 第一种: create table # ...
- impala不能查询hive中新增加的表问题
使用Cloudera Manager部署安装的CDH和Impala,Hive中新增加的表,impala中查询不到,其原因是/etc/impala/conf下面没有hadoop和hive相关的 ...
- hive中与hbase外部表join时内存溢出(hive处理mapjoin的优化器机制)
与hbase外部表(wizad_mdm_main)进行join出现问题: CREATE TABLE wizad_mdm_dev_lmj_edition_result as select * from ...
- hive中使用正則表達式不当导致执行奇慢无比
业务保障部有一个需求,须要用hive实时计算上一小时的数据.比方如今是12点,我须要计算11点的数据,并且必须在1小时之后执行出来.可是他们用hive实现的时候发现就单个map任务执行都超过了1小时, ...
- 在hive中查询导入数据表时FAILED: SemanticException [Error 10096]: Dynamic partition strict mode requires at least one static partition column. To turn this off set hive.exec.dynamic.partition.mode=nonstrict
当我们出现这种情况时 FAILED: SemanticException [Error 10096]: Dynamic partition strict mode requires at least ...
随机推荐
- 20155334 2016-2017-2 《Java程序设计》第五周学习总结
20155334 2016-2017-2 <Java程序设计>第五周学习总结 教材学习内容总结 第八章:异常处理 Java中所有错误都会被打包为对象,在编程的时候会遇到因各种原因而导致的错 ...
- Maven打包编译找不到com.sun.crypto.provider.SunJCE类
Maven配置 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>mav ...
- 下拉框combobox用法&级联餐单
如果下来内容不用后台取数据,直接写死的话不用url属性,直接用data即可: <input id="orderstate" name="orderstate&quo ...
- Java垃圾回收机制复习
一.如何确定某个对象是“垃圾” 二.典型的垃圾收集算法 三.典型的垃圾收集器 JVM(HotSpot) 7种垃圾收集器的特点及使用场景 https://www.cnblogs.com/chengxuy ...
- 卷积神经网络(CNN)学习笔记1:基础入门
卷积神经网络(CNN)学习笔记1:基础入门 Posted on 2016-03-01 | In Machine Learning | 9 Comments | 14935 Vie ...
- Web下文件上传下载的路径问题
工程结构
- python3字符串与文本处理
每个程序都回涉及到文本处理,如拆分字符串.搜索.替换.词法分析等.许多任务都可以通过内建的字符串方法来轻松解决,但更复杂的操作就需要正则表达式来解决. 1.针对任意多的分隔符拆分字符串 In [1]: ...
- js导出excel表格中较长数字串会变成科学计数法问题
在做项目中,遇到导出excel表格时,银行账户号数字过长,导出的数字串变为计数法形式,如下图: 网上搜到解决方法,粘贴到这以供学习.不断更新. 原博地址:http://www.cnblogs.com/ ...
- python实现简单登陆流程
登陆流程图: 代码实现: #-*- coding=utf-8 -*- import os,sys,getpass ''' user.txt 格式 账号 密码 是否锁定 错误次数 jack 123 un ...
- CentOS 6.5环境实现corosync+pacemaker实现DRBD高可用
DRBD (Distributed Replicated Block Device)分布式复制块设备,它是 Linux 平台上的分散式储存系统,通常用于高可用性(high availability, ...