hive表中导入数据 多种方法详细说明

文章中对hive表中导入数据 方法目录

 方式一:通过load方式加载数据

 方式二:直接向分区表中插入数据

 方式三:查询语句中创建表并加载数据(as select)

 方式四:创建表时通过location指定加载数据路径

    1. 创建表,并指定在hdfs上的位置

     2. 上传数据到hdfs上

    3. 查询数据

方式五:export导出 与 import导入 hive表数据(内部非分区表操作)


准备数据

-- 创建 db_myhive_5
create database db_myhive_5;

use db_myhive_5;

-- 创建表
create table tb_score(
    s_id string,
    c_id string,
    score int
)
partitioned by (month string)
row format delimited fields terminated by '\t';

 方式一:通过load方式加载数据

load data local inpath '/export/data/hive_data/score.txt' overwrite into table tb_score partition(month='202006');

 方式二:直接向分区表中插入数据

通过insert into方式加载数据

create table score3 like tb_score;

insert into table score3 partition(month ='202007') values ('001','002','100');

通过查询方式加载数据

create table score4 like score;

insert overwrite table score4 partition(month = '202006') select s_id,c_id,s_score from tb_score;

例子

需求1: 创建新库 myhive6, 切换库 myhive6

需求2: 创建t_score_1(s_id, c_id, score) 按月指定分区 month, 指定字段分隔符为 '\t'

需求3: 通过 load data 方式加载文件中数据

需求4: 创建表  t_score_2 依据 表 t_score_1的结构

需求5: 通过insert into 添加一行数据

需求6: 创建表  t_score_3 依据 表 t_score_1的结构

需求7: 通过 select 添加n条记录

实现

-- 需求1: 创建新库 myhive6, 切换库 myhive6

create database myhive6;

use myhive6;

-- 需求2: 创建t_score_1(s_id, c_id, score) 按月指定分区 month, 指定字段分隔符为 '\t'

create table t_score_1(

    s_id string,

    c_id string,

    score int

)

partitioned by (month string)

row format delimited fields terminated by '\t';

-- 需求3: 通过 load data 方式加载文件中数据

load data local  inpath '/export/data/hive_data/f_score.csv' overwrite into table t_score_1 partition (month='202101');

-- 需求4: 创建表  t_score_2 依据 表 t_score_1的结构

create table t_score_2 like t_score_1;

-- 需求5: 通过insert into 添加一行数据

insert into t_score_2 partition(month='202002') values('01', '02', 66);

select * from t_score_2;

-- 需求6: 创建表  t_score_3 依据 表 t_score_1的结构

create table t_score_3 like t_score_1;

-- 需求7: 通过 select 添加n条记录

insert overwrite table t_score_3 partition(month='202003') select s_id, c_id, score from t_score_1;

select * from t_score_3;

 方式三:查询语句中创建表并加载数据(as select)

将查询的结果保存到一张表当中去

create table score5 as select * from score;

 方式四:创建表时通过location指定加载数据路径
    1. 创建表,并指定在hdfs上的位置

create external table score6 (s_id string,c_id string,s_score int) 

row format delimited

fields terminated by '\t' 

location '/myscore6';

     2. 上传数据到hdfs上

hdfs dfs -mkdir -p /myscore6

hdfs dfs -put score.txt /myscore6;

    3. 查询数据

select * from score6;

例子

1 创建表 t_score_6(s_id, c_id, score), 指定分隔符为'\t', 指定保存位置为 '/hivedatas/t_score_6';

2 将分数信息文件 上传到 hdfs的目录下  '/hivedatas/t_score_6'

3 查看表中的数据

​​​​​​​实现

-- 1 创建表 t_score_6(s_id, c_id, score), 指定分隔符为'\t', 指定保存位置为 '/hivedatas/t_score_6';

create table t_score_6(

    s_id string,

    c_id string,

    score int

)

row format delimited fields terminated by '\t'

location '/hivedatas/t_score_6';

-- 2 将分数信息文件 上传到 hdfs的目录下  '/hivedatas/t_score_6'

-- hdfs dfs -put 文件 /hivedatas/t_score_6

-- 3 查看表中的数据

select * from t_score_6;

方式五:export导出  import导入 hive表数据内部非分区操作

create table teacher2 like teacher;

export table teacher to  '/export/teacher';

import table teacher2 from '/export/teacher'

注意: import 导入时结尾不要增加 分号;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/701618.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

真值表,主析取范式,主合取范式,栈,哈希表

利用栈对表达式求值 根据运算符的各运算符的优先顺序,确定入栈操作 if(compare(s2.top(),s[i])-1)栈内的优先级小,栈外的运算符入栈if(compare(s2.top(),s[i])0)栈内的优先级与栈外的优先级相同,栈内运算符出栈if(compare(s2.top(),s[i]1)栈…

人工智能机器视觉、大数据与向量数据库的交融之路

文章目录 人工智能机器视觉、大数据与向量数据库的交融之路引言计算机视觉发展现状与趋势技术演进历程回顾当前的主要发展方向 大数据与计算机视觉的相互关系数据驱动下的CV技术进步向量数据库在图像检索与分析中的作用 具体应用案例剖析如何利用大数据和向量数据库解决CV难题代…

设计模式-创建型模式-建造者模式

建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一种对象创建型模式。 建造者模式一步一步地创建一个复杂的对象,它允许用户只通过指定复杂对象…

LeetCode 1393.股票的资本损益

Stocks 表: ---------------------- | Column Name | Type | ---------------------- | stock_name | varchar | | operation | enum | | operation_day | int | | price | int | ---------------------- (stock_name, day) 是这张表的主键(具有唯一值的列的组合) …

windows 中, bash: conda: command not found(已解决)

git bash 中运行conda命令,出现这种错误,原因是你没有在git bash中 配置conda,导致git bash无法找到conda 那就配置一下,找到你的conda的安装位置下的bash.sh文件,一般在安装位置(我的安装在C盘的自定义路径…

RocketMQ生产环境常见问题分析与总结

RocketMQ生产环境常见问题分析与总结 如何保证消息不丢失 消息丢失场景 对于跨网络的节点可能会丢消息,因为MQ存盘都会先写入OS的PageCache中,然后再让OS进行异步刷盘,如果缓存中的数据未及时写入硬盘就会导致消息丢失 生产端到Broker端Brok…

nc开发刚导入项目eclipse出现莫名其妙的错误,红叉,感叹号,文件missing

解决类出现红叉 解决感叹号,文件missing 其他问题 右上角的视图,要选择java,如果是javaEE也会有一些文件没有展示出来。

2024全国水科技大会暨土壤和地下水污染防治与修复技术创新论坛(七)

论坛召集人:李 辉 上海大学环境与化学工程学院教授 一、会议背景 十四五”时期,我国生态文明建设进入以减污降碳协同增效为重点战略方向,促进经济社会发展全面绿色转型,实现生态环境质量改善由量变到质变的关键时期。聚焦土壤与地…

挑战杯 基于机器学习与大数据的糖尿病预测

文章目录 1 前言1 课题背景2 数据导入处理3 数据可视化分析4 特征选择4.1 通过相关性进行筛选4.2 多重共线性4.3 RFE(递归特征消除法)4.4 正则化 5 机器学习模型建立与评价5.1 评价方式的选择5.2 模型的建立与评价5.3 模型参数调优5.4 将调参过后的模型重…

三、OpenAI之Function Calling实战

黑8决心将对 OpenAI API 的学习应用到更多实际场景中,以展示新时代技术的巨大潜力。在接下来的日子里,他不断探索和尝试,将 API 中的各种功能融入到不同的生活场景中,取得了一系列令人瞩目的成果。 首先,他将 OpenAI …

Chrome插件(二)—Hello World!

本小节将指导你从头到尾创建一个基本的Chrome插件,你可以认为是chrome插件开发的“hello world”! 以下详细描述了各个步骤: 第一步:设置开发环境 确保你拥有以下工具: 文本编辑器:如Visual Studio Cod…

Django学习记录04——靓号管理整合

1.靓号表 1.1 表结构 1.2 靓号表的构造 class PrettyNum(models.Model): 靓号表 mobile models.CharField(verbose_name"手机号", max_length11)# default 默认值# null true,blank true 允许为空price models.IntegerField(verbose_name"价…

EasyRecovery易恢复软件数据恢复方面表现优势有哪些?

EasyRecovery易恢复软件在数据恢复方面表现优异。它支持多种设备的数据恢复,如硬盘、光盘、U盘/移动硬盘、数码相机等,并且能够恢复包括文档、图片、视频、音频等各种类型的文件。无论是误删除、格式化、分区丢失还是硬件故障导致的数据丢失,…

mysql 运行参数优化

mysql 运行参数优化 InnoDB设置 1.innodb_buffer_pool_size —— 默认值为 128M. 这是最主要的优化选项,因为它指定 InnoDB 使用多少内存来加载数据和索引(dataindexes). 针对专用MySQL服务器,建议指定为物理内存的 50-80%这个范围. 例如,拥有64GB物理内存的机器,缓存池应该设…

设计模式学习笔记 - 面向对象 - 3.面向对象比面向过程有哪些优势?面向过程真的过时了吗?

简述 在过往的工作中,我发现很多人搞不清面向对象和面向过程的区别,总认为使用面向对象编程语言来开发,就是在面向面向对象编程了。而实际上,他们只是在用面向对象编程语言,编写面向过程风格的代码而已,并…

目标跟踪之KCF详解

High-Speed Tracking with Kernelized Correlation Filters 使用内核化相关滤波器进行高速跟踪 大多数现代跟踪器的核心组件是判别分类器,其任务是区分目标和周围环境。为了应对自然图像变化,此分类器通常使用平移和缩放的样本补丁进行训练。此类样本集…

目标检测新SOTA:YOLOv9 问世,新架构让传统卷积重焕生机

在目标检测领域,YOLOv9 实现了一代更比一代强,利用新架构和方法让传统卷积在参数利用率方面胜过了深度卷积。 继 2023 年 1 月 YOLOv8 正式发布一年多以后,YOLOv9 终于来了! 我们知道,YOLO 是一种基于图像全局信息进行…

YoloV8改进策略:主干网络改进|MogaNet——高效的多阶门控聚合网络

文章目录 摘要1、简介2、相关工作2.1、视觉Transformers2.2、ViT时代的卷积网络3、从多阶博弈论交互的角度看表示瓶颈4、方法论4.1、MogaNet概述4.2、多阶门控聚合4.3、通过通道聚合进行多阶特征重新分配4.4、实现细节5、实验5.1、ImageNet分类5.2、密集预测任务5.3、消融实验和…

Linux信号详解

文章目录 一、Linux信号1. 信号的概念2. 信号的定义3. 系统定义的信号 二、信号产生的方式1.通过键盘产生2. 通过系统调用3. 软件条件4. 硬件异常 三、信号处理函数1. OS发送信号的实质2. 指令发送信号3. signal()4. sigaction() 四、信号屏蔽机制1. 信号处理方式2.信号集操作函…

更改QTabWidget的选项卡的位置

选项卡位置函数: QTabWidget::setTabPosition(QTabWidget::North); //默认为上面 上北下南 参数: QTabWidget::North //上面 QTabWidget::South); //下面 QTabWidget::West //左侧 QTabWidget::East)//右侧 选项卡外观函数: QTabWidget::setT…