当前位置: 首页 > article >正文

HIVE数据加载

load 加载数据

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

LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)] [INPUTFORMAT 'inputformat' SERDE 'serde'] (3.0 or later)

(1)load data:表示加载数据。

(2)local:表示从本地加载数据到Hive表;否则从HDFS加载数据到Hive表。

(3)inpath:表示加载数据的路径。

(4)overwrite:表示覆盖表中已有数据,否则表示追加。

(5)into table:表示加载到哪张表。

(6)partition:表示上传到指定分区。

(1)加载本地文件到hive

hive (default)>

load data local inpath "/home/data/demo.txt"  overwrite into table hive.demo;

(2) 加载HDFS文件到hive中

hive (default)>

hadoop fs -put /home/data/demo.txt  /user/data

;

hive (default)>

load data  inpath "/user/data/demo.txt"  overwrite into table hive.demo;

insert 插入数据

1)基本模式插入数据

hive (default)>

 insert overwrite table hive.demo._insert

select

    id,

    name

from hive.demo;

hive (default)> insert into table  hive.demo._insert values(1,'wanger'),(2,'zhaoliusan')

;

注意:insert导出时,hive会自动创建导出目录,但是由于是overwrite,所以导出路径一定要写准确,否则存在误删数据的可能。

2)根据查询结果插入数据

hive (default)> insert overwrite table hive.demo2

select

    id,

    name

from hive.demo

;

根据查询结果创建表(查询的结果会添加到新创建的表中)。

hive (default)>

create table if not exists hive.demo3

as select id, name from hive.demo

;

 Import&Export

export命令能够导出一张表或分区的数据和元数据信息到一个输出位置,而且导出数据能够被移动到另外一个hadoop集群或hive实例,而且能够经过import命令导入数据。一般用在数据迁移的场景。

具体语法:

EXPORT TABLE tablename [PARTITION (part_column="value"[, ...])]

  TO 'export_target_path' [ FOR replication('eventid') ]

IMPORT [[EXTERNAL] TABLE new_or_original_tablename [PARTITION (part_column="value"[, ...])]]

  FROM 'source_path'

  [LOCATION 'import_target_path']

数据到指定Hive表中

注意:先用export导出后,再将数据导入。并且因为export导出的数据里面包含了元数据,因此import要导入的表不可以存在,否则报错。

导出到HDFS

-- 导出stu1.emp1到hdfs下的/user/data/export/emp

export table stu1.emp1  to '/user/data/export/emp';

-- 将/user/data/export/emp文件导入到stu1.emp2

import table stu1.emp2  from '/user/data/export/emp';

Export和Import主要用于两个Hadoop平台集群之间Hive表迁移,不能直接导出到本地。


http://www.kler.cn/a/568594.html

相关文章:

  • LeetCode 202. 快乐数 java题解
  • uniapp 中引入使用uView UI
  • 前端文件分片上传深度解析:从原理到实践
  • 大模型微调入门(Transformers + Pytorch)
  • YOLOv8目标检测推理流程及C++代码
  • 5分钟看懂Deepseek开源周之六:Deepseek-V3/R1推理系统设计----揭开深度求索模型系统设计和运营成本之谜
  • 河南理工XCPC萌新选拔赛
  • 蓝桥杯备赛-前缀和-可获得的最小取值
  • fiscoBcos中手动部署webase-front
  • 《白帽子讲 Web 安全》之移动 Web 安全
  • 分布式微服务系统架构第92集:智能健康监测设备Java开发方案
  • 【Java项目】基于SpringBoot的地方废物回收机构管理系统
  • centos 下dockers部署surveyking-docker开源考试系统
  • 算法分析 —— 《栈》
  • Android6到Android15版本新增的功能和api
  • 2025-03-01 学习记录--C/C++-C语言 整数类型对比
  • Github 2025-03-02 php开源项目日报Top10
  • AUTOSAR简介
  • 【图文详解】什么是微服务?什么是SpringCloud?
  • Python请求微店商品详情数据API接口