2024.4.24

本文详细阐述了数据仓库与数据库的区别,包括它们在设计目的、数据存储和处理方式上的差异。同时介绍了数据库操作,如创建、查看、删除数据库及表,以及数据加载和导出的方法。
摘要由CSDN通过智能技术生成

一、数据仓库和数据库

1、数仓和数据库的区别
       操作型处理(数据库),叫 联机 事务 处理 OLTP (On-Line Transaction Processing) ,也可以称 面向用户 交易的 处理系统,它是针对具体业务在数据库联机的日常操作,通常进行 增删改查 操作。用户较为关心操作的响应时间、数 据的安全性、完整性和并发支持的用户数等问题。传统的数据库系统作为数据管理的主要手段,主要用于操作型处理。
       分析型处理(数据仓库) ,叫 联机 分析 处理 OLAP (On-Line Analytical Processing), 也可以称为 面向专业分析 人员进行数据分析,通常进行 查询分析 操作 ,一般针对某些主题的历史数据进行分析,支持管理决策。
数据仓库的出现,并不是要取代数据库,主要区别如下:
(1)数据库是面向事务的设计,数据仓库是面向主题设计的。
(2)数据库一般存储业务数据,数据仓库存储的一般是历史数据。
(3)数据库是为捕获数据而设计,数据仓库是为分析数据而设计
(4)数据库设计是尽量避免冗余,一般针对某一业务应用进行设计,比如一张简单的User表,记录用户名、密码等简单 数据即可,符合业务应用,但是不符合分析。
数据仓库在设计是有意引入冗余,依照分析需求,分析维度、分析指标进行设计。
2、数仓的分层架构

二、数据库操作

• 创建数据库
create database if not exists myhive;
use myhive;

查看数据库详细信息 

desc database myhive;
创建数据库并指定hdfs存储位置
create database myhive2 location '/myhive2';
删除一个空数据库,如果数据库下面有数据表,那么就会报错
drop database myhive;
强制删除数据库,包含数据库下面的表一起删除
drop database myhive2 cascade;

三、数据表操作

 1、表操作语法和数据类型
(1)创建表的语法
(2)数据类型
2、内部表和外部表区别
内部表(MANAGED_TABLE)
             • 分区表
             • 分桶表
外部表(EXTERNAL_TABLE)
             • 分区表
             • 分桶表
3、内部表

创建内部表

create table [if not exists] 内部表名(
字段名 字段类型 , ...
)...;

复制表结构

 CREATE TABLE 表名 like 存在的表名;

复制表结构和数据

 CREATE TABLE 表名 as select语句;

删除内部表

drop table 内部表名;

查看表格式化信息

desc formatted 表名;
truncate清空内部表数
 truncate table 内部表名;
4、外部表

创建外部表
create external table [if not exists] 内部表名(
字段名 字段类型 , ...
)...;
复制表结构
 CREATE EXTERNAL TABLE 表名 like 存在的表名;

删除外部表

drop table 外部表名;

查看表格式化信息

desc formatted 表名;

注意: 外部表不能使用truncate关键字清空数据

5、查看/修改表

•查看建表语句

show create table 表名;

•内部表转外部表

alter table stu set tblproperties('EXTERNAL'='TRUE');

•外部表转内部表

alter table stu set tblproperties('EXTERNAL'='FALSE');
6、映射表
7、数据加载和导出

加载数据的语法
• LOAD DATA [ LOCAL ] INPATH 'filepath' [ OVERWRITE ] INTO TABLE 表名 ;
• INSERT INTO|OVERWRITE TABLE 表名 SELECT...
注意: 使用LOAD语句:
数据来源本 地, 地数据文件 会保留 本质 地文件 上传
HDF S据来 H DF S, 加载后 文件 存在, 本质 是在H DF S 上进行 文件 移动
导出数据的语法
• INSERT OVERWRITE [local] directory ‘ path [format delimited] SELECT...;
• hive -f/-e 执行语句或者脚本 > 文件名
8、分区表
9、分桶表
10、复杂类型操作 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值