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

【大数据技术基础 | 实验十一】Hive实验:新建Hive表

在这里插入图片描述

文章目录

    • 一、实验目的
    • 二、实验要求
    • 三、实验原理
    • 四、实验环境
    • 五、实验内容和步骤
      • (一)启动Hive
      • (二)创建表
      • (三)显示表
      • (四)显示表列
      • (五)更改表
      • (六)删除表(或列)
    • 六、实验结果
    • 七、实验心得


一、实验目的

  1. 学会创建Hive的表;
  2. 显示Hive中的所有表;
  3. 显示Hive中表的列项;
  4. 修改Hive中的表并能够删除Hive中的表。

二、实验要求

  1. 要求实验结束时;
  2. 每位学生均能够完成Hive的DDL操作;
  3. 能够在Hive中新建,显示,修改和删除表等功能。

三、实验原理

Hive没有专门的数据存储格式,也没有为数据建立索引,用户可以非常自由的组织Hive中的表,只需要在创建表的时候告诉Hive数据中的列分隔符和行分隔符,Hive就可以解析数据。

Hive中所有的数据都存储在HDFS中,Hive中包含以下数据模型:表(Table),外部表(External Table),分区(Partition),桶(Bucket)。

Hive中Table和数据库中Table在概念上是类似的,每一个Table在Hive中都有一个相应的目录存储数据。例如,一个表pvs,它在HDFS中的路径为:/wh/pvs,其中,wh是在hive-site.xml中由${hive.metastore.warehouse.dir}指定的数据仓库的目录,所有的Table数据(不包括External Table)都保存在这个目录中。

四、实验环境

  • 云创大数据实验平台:
    在这里插入图片描述
  • Java 版本:jdk1.7.0_79
  • Hadoop 版本:hadoop-2.7.1
  • Hive 版本:hive-1.2.1

五、实验内容和步骤

点击一键搭建,将实验环境搭建完成。具体部署Hive详细步骤参考:【大数据技术基础 | 实验十】Hive实验:部署Hive

(一)启动Hive

我们在master虚拟机上首先进入hive的bin目录下,然后执行hive命令即可启动:

cd /usr/cstor/hive/
bin/hive

在这里插入图片描述

(二)创建表

默认情况下,新建表的存储格式均为Text类型,字段间默认分隔符为键盘上的Tab键。

创建一个有两个字段的pokes表,其中第一列名为foo,数据类型为INT,第二列名为bar,类型为STRING。

hive> CREATE TABLE pokes (foo INT, bar STRING) ;

在这里插入图片描述

创建一个有两个实体列和一个(虚拟)分区字段的invites表。

hive> CREATE TABLE invites (foo INT, bar STRING) PARTITIONED BY (ds STRING) ;

在这里插入图片描述

注意:分区字段并不属于invites,当向invites导入数据时,ds字段会用来过滤导入的数据。

(三)显示表

显示所有的表。

hive> SHOW TABLES ;

在这里插入图片描述

显示表(正则查询),同MySQL中操作一样,Hive也支持正则查询,比如显示以.s结尾的表。

hive> SHOW TABLES '.*s';

在这里插入图片描述

(四)显示表列

hive> DESCRIBE invites;

在这里插入图片描述

(五)更改表

修改表events名为3koobecaf (自行创建任意类型events表):

hive> CREATE TABLE events (foo INT, bar STRING) ;
hive> ALTER TABLE events RENAME TO 3koobecaf;
hive> SHOW TABLES ;

在这里插入图片描述

将pokes表新增一列(列名为new_col,类型为INT):

hive> ALTER TABLE pokes ADD COLUMNS (new_col INT);
hive> DESCRIBE pokes;

在这里插入图片描述

将invites表新增一列(列名为new_col2,类型为INT),同时增加注释“a comment”:

hive> ALTER TABLE invites ADD COLUMNS (new_col2 INT COMMENT 'a comment');
hive> DESCRIBE invites;

在这里插入图片描述

替换invites表所有列名(数据不动):

hive> ALTER TABLE invites REPLACE COLUMNS (foo INT, bar STRING, baz INT COMMENT 'baz replaces new_col2');
hive> DESCRIBE invites;

在这里插入图片描述

(六)删除表(或列)

删除invites表bar和baz两列:

hive> ALTER TABLE invites REPLACE COLUMNS (foo INT COMMENT 'only keep the first column');
hive> DESCRIBE invites;

在这里插入图片描述

删除pokes表:

hive> DROP TABLE pokes;
hive> SHOW TABLES ;

在这里插入图片描述

六、实验结果

实验结果见实验步骤每步的运行结果。

七、实验心得

  通过本次Hive的DDL操作实验,我深刻体验到了Hive在大数据处理中的灵活性和强大功能。在实验中,我成功创建了不同类型的表,如普通表和分区表,并掌握了显示表、显示表列、修改表和删除表等基本的DDL操作。这些操作不仅让我对Hive的数据定义语言有了更深入的理解,也为我今后在大数据处理中提供了实用的技能。

  此外,我还深刻体会到了Hive与Hadoop之间的紧密集成关系。Hive利用Hadoop的分布式存储和计算能力,能够高效地处理大规模数据集。这种集成关系不仅提高了数据处理效率,也为我提供了更多的数据处理和分析手段。

  总的来说,本次Hive的DDL操作实验让我对Hive有了更深入的理解和实践经验。我将把这次实验中学到的知识和技能应用到今后的学习和工作中,不断提高自己的数据处理和分析能力。同时,我也期待在未来的课程中能够学习更多关于大数据处理和分析的知识和技能。

相关文章:

【大数据技术基础 | 实验十一】Hive实验:新建Hive表

文章目录 一、实验目的二、实验要求三、实验原理四、实验环境五、实验内容和步骤(一)启动Hive(二)创建表(三)显示表(四)显示表列(五)更改表(六&am…...

【yarn】yarn rest api每日job数量分析

一、说明 # 无法制定时间范围!!! yarn application -list 官方文档 rest返回内容(官网案例): {app":{"id":"application_1324057493980_0001","user":"user1&q…...

蓝桥杯单片机第十一届省赛(第一场)

主函数代码 #include<iic.h> #include<intrins.h>sfr P40xc0; sbit R3P3^2; sbit R4P3^3; sbit C4P3^4; sbit C3P3^5;unsigned char code led_nodot[]{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; unsigned char code led_dot[]{0x40,0x79,0x24,0x30,0x…...

hive复杂数据类型Array Map Struct 炸裂函数explode

1、Array的使用 create table tableName( ...... colName array<基本类型> ...... ) 说明&#xff1a;下标从0开始&#xff0c;越界不报错&#xff0c;以null代替 arr1.txtzhangsan 78,89,92,96 lisi 67,75,83,94 王五 23,12 新建表&#xff1a; create table arr1(n…...

FIFO架构专题-FIFO是什么

目录 简介&#xff1a; FIFO参数&#xff1a; 1.宽度WIDTH&#xff08;一次位数&#xff09; 2.深度DEEPTH&#xff08;存多少次&#xff09; FIFO的分类&#xff1a; 同步FIFO 异步FIFO 读写位宽不同的FIFO FIFO信号介绍 写时钟 写数据 写使能 读时钟 读数据 读…...

Pythony——多线程简单爬虫实现

简单爬虫实现 import requests from bs4 import BeautifulSoup# 生成要爬取的网页地址列表&#xff0c;这里是博客园的分页地址&#xff0c;从第1页到第50页 urls [f"https://www.cnblogs.com/#p{i}" for i in range(1, 50 1)]# 生产者函数——负责下载网页内容 d…...

如何修改 a 链接的样式

在CSS中&#xff0c;你可以使用选择器来针对HTML中的特定元素&#xff08;例如<a>标签&#xff0c;也就是链接&#xff09;进行修改样式。以下是一些常见的修改<a>链接样式的方法&#xff1a; 移除下划线&#xff1a; a { text-decoration: none; } 修改链接的…...

第6章 详细设计-6.5 软硬件接口文档设计

6.5 软硬件接口文档设计 一般的产品都包含硬件和软件两部分&#xff0c;产品设计阶段需要确保硬件开发人员和软件开发的沟通准确、高效。所以需要一份书面的文档来承载软件和硬件之间的沟通细节。以下面的细水雾除尘设备为例进行讲解&#xff0c;涉及软件和硬件的接口&#xff…...

【pyspark学习从入门到精通14】MLlib_1

目录 包的概览 加载和转换数据 在前文中&#xff0c;我们学习了如何为建模准备数据。在本文中&#xff0c;我们将实际使用这些知识&#xff0c;使用 PySpark 的 MLlib 包构建一个分类模型。 MLlib 代表机器学习库。尽管 MLlib 现在处于维护模式&#xff0c;即它不再积极开发…...

C++全局构造和初始化

片段摘自程序员的自我修养—链接、装载与库.pdf 11.4 程序在进入main之前&#xff0c;需要对全局对象进行构造初始化。 glibc全局对象进行构造初始化 gibc启动程序时会经过.init段&#xff0c;退出程序时会经过.finit段。这两个段中的代码最终拼接成_init()和_finit(),这两个…...

安全见闻-泷羽sec课程笔记

编程语言 C语言&#xff1a;一种通用的、面向过程的编程语言&#xff0c;广泛应用于系统软件和嵌入式开发。 C:在C语言基础上发展而来&#xff0c;支持面向对象编程&#xff0c;常用于尊戏开发、高性能计算等领域。 Java:一种广泛使用的面问对象编程语言&#xff0c;具有跨平台…...

游戏引擎学习第17天

视频参考:https://www.bilibili.com/video/BV1LPUpYJEXE/ 回顾上一天的内容 1. 整体目标&#xff1a; 处理键盘输入&#xff1a;将键盘输入的处理逻辑从平台特定的代码中分离出来&#xff0c;放入更独立的函数中以便管理。优化消息循环&#xff1a;确保消息循环能够有效处理 …...

【FFmpeg】FFmpeg 内存结构 ③ ( AVPacket 函数简介 | av_packet_ref 函数 | av_packet_clone 函数 )

文章目录 一、av_packet_ref 函数1、函数原型2、函数源码分析3、函数使用代码示例 二、av_packet_clone 函数1、函数原型2、函数源码分析 FFmpeg 4.0 版本源码地址 : GitHub : https://github.com/FFmpeg/FFmpeg/tree/release/4.0GitCode : https://gitcode.com/gh_mirrors/ff…...

【学习笔记】量化概述

Quantize量化概念与技术细节 题外话&#xff0c;在七八年前&#xff0c;一些关于表征的研究&#xff0c;会去做表征的压缩&#xff0c;比如二进制嵌入这种事情&#xff0c;其实做得很简单&#xff0c;无非是找个阈值&#xff0c;然后将浮点数划归为零一值&#xff0c;现在的Qu…...

同步互斥相关习题10道 附详解

PV操作 2016 某系统允许最多10个进程同时读文件F&#xff0c;当同时读文件F的进程不满10个时&#xff0c;欲读该文件的其他文件可立即读&#xff0c;当已有10个进程在读文件F时读&#xff0c;其他欲读文件F的进程必须等待&#xff0c;直至有进程读完后退出方可去读 在实现管…...

【Python · PyTorch】卷积神经网络 CNN(LeNet-5网络)

【Python PyTorch】卷积神经网络 CNN&#xff08;LeNet-5网络&#xff09; 1. LeNet-5网络※ LeNet-5网络结构 2. 读取数据2.1 Torchvision读取数据2.2 MNIST & FashionMNIST 下载解包读取数据 2. Mnist※ 训练 LeNet5 预测分类 3. EMnist※ 训练 LeNet5 预测分类 4. Fash…...

Git 拉取指定分支创建项目

一 背景 因为项目过大&#xff0c;只需要部分分支的代码即可。 二 实现 方法一&#xff1a;使用 --single-branch 参数 git clone 支持只拉取指定分支&#xff0c;而不是整个库的所有分支&#xff1a; git clone --branch <branch_name> --single-branch <reposi…...

CF862B Mahmoud and Ehab and the bipartiteness(二分图的性质)

思路&#xff1a;一个二分图是由两个集合组成的&#xff0c;同一个集合中的节点间不能连边&#xff0c;所以一个二分图最多有cnt[1]*cnt[2]条边&#xff0c;题目给出一个树的n-1条边&#xff0c;要我们添加最多的边数使他成为二分图&#xff0c;添加的边数就是cnt[1]*cnt[2]-n1…...

React Native 全栈开发实战班 :数据管理与状态之React Hooks 基础

在 React Native 应用中&#xff0c;数据管理与状态管理是构建复杂用户界面的关键。React 提供了多种工具和模式来处理数据流和状态管理&#xff0c;包括 React Hooks、Context API 以及第三方状态管理库&#xff08;如 Redux&#xff09;。本章节将详细介绍 React Hooks 的基础…...

传奇996_22——自动挂机

登录钩子函数中执行 callscript(actor, "../QuestDiary/主界面基础按钮/主界面基础按钮QM", "基础按钮QM")基础按钮QM执行了已下代码 #IF Equal <$CLIENTFLAG> 1 #ACT goto PC端面板加载#IF Equal <$CLIENTFLAG> 2 #ACT goto 移动端面板加载…...

faiss 提供了多种索引类型

faiss 多种索引类型 在 faiss 中&#xff0c;IndexFlatL2 是一个简单的基于 L2 距离&#xff08;欧几里得距离&#xff09;进行索引的索引类型&#xff0c;但实际上&#xff0c;faiss 提供了多种索引类型&#xff0c;支持不同的度量方式和性能优化&#xff0c;您可以根据需求选…...

比rsync更强大的文件同步工具rclone

背景 多个复制&#xff0c;拷贝&#xff0c;同步文件场景&#xff0c;最大规模的是每次几千万规模的小文件需要从云上对象存储中拉取到本地。其他的诸如定期数据备份&#xff0c;单次性数据备份。 rsync是单线程的&#xff0c;开源的mrsync是多线程的&#xff0c;但适用范围没…...

《业务流程--穿越从概念到实践的丛林》读后感一:什么是业务流程

1.1 流程和业务流程概念辨析 业务流程建模标准(BPMN)对于业务流程的定义:一个业务流程由为了配合一个组织性或技术环境而一系列活动组成。这些活动共同实现一个业务目标。 业务流程再造最有名的倡导者托马斯.H.达文波特对于流程和业务流程的定义:流程是一组结构化且可度量的…...

解决docker mysql命令行无法输入中文

docker启动时&#xff0c;设置支持中文 docker run --name mysql-container -e MYSQL_ROOT_PASSWORDroot -d mysql:5.7 --character-set-serverutf8mb4 --collation-serverutf8mb4_unicode_ci --default-time-zone8:00 进入docker时&#xff0c;指定LANG即可 docker exec -it …...

基于Java Springboot城市公交运营管理系统

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术&#xff1a;Html、Css、Js、Vue、Element-ui 数据库&#xff1a;MySQL 后端技术&#xff1a;Java、Spring Boot、MyBatis 三、运行环境 开发工具&#xff1a;IDEA/eclipse 数据…...

Lc70--319.两个数组的交集(二分查找)---Java版

1.题目描述 2.思路 用集合求交集&#xff0c;因为集合里面的元素要满足不重复、无序、唯一。使得集合在去重、查找和集合操作&#xff08;如交集、并集、差集等&#xff09;中非常高效和方便。 3.代码实现 class Solution {public int[] intersection(int[] nums1, int[] nu…...

亿咖通科技应邀出席微软汽车行业智享会,分享ECARX AutoGPT全新实践

11月14日&#xff0c;全球出行科技企业亿咖通科技&#xff08;纳斯达克股票代码&#xff1a;ECX&#xff09;应邀于广州参加由微软举行的汽车行业智享会&#xff0c;揭晓了亿咖通科技对“AI定义汽车”时代的洞察与技术布局&#xff0c;分享了亿咖通科技汽车垂直领域大模型ECARX…...

Python教程:运算符重载

在Python中&#xff0c;运算符重载是通过定义特殊方法&#xff08;也称为魔术方法&#xff09;来实现的&#xff0c;这些特殊方法允许类的实例像内置类型那样使用运算符。 Python提供了一系列这样的特殊方法&#xff0c;用于重载各种运算符。 以下是一些常见的运算符重载特殊…...

AWTK VSCode 实时预览插件端口冲突的解决办法

AWTK XML UI 预览插件&#xff1a;在 vscode 中实时预览 AWTK XML UI 文件&#xff0c;在 Copilot 的帮助下&#xff0c;可以大幅提高界面的开发效率。 主要特色&#xff1a; 真实的 UI 效果。可以设置主题&#xff0c;方便查看在不同主题下界面的效果。可以设置语言&#xf…...

【MySQL系列】深入理解MySQL中的存储、排序字符集

前言 在创建数据库时&#xff0c;我们经常会需要填写数据库的所用字符集、排序规则&#xff0c;字符集和排序规则是两个非常重要的概念&#xff0c;它们决定了数据库如何存储和比较字符串数据。在 MySQL 中&#xff0c;常用的存储字符集有 utf8、utf8mb4&#xff0c;而排序字符…...

怎么看网站有没有做推广/厨师培训学校

鐵鍋燉腯鱻 项目&#xff1a;小鱼记账 团队成员项目燃尽图冲刺情况描述站立式会议照片各成员情况团队成员 学号姓名git地址博客地址031602240许郁杨 &#xff08;组长&#xff09;https://github.com/EventideXhttp://www.cnblogs.com/S031602240/181600333杨心逸https://githu…...

中贸网做的网站/湘潭营销型网站建设

修改表结构 --修改数据表 ALTER TABLE 表名 SQL代码的书写不考虑顺序&#xff0c;但是批量执行代码需要要考虑好先执行哪些&#xff0c;后执行哪些 在修改数据表结构时&#xff0c;必须要明确&#xff1a;修改的字段中是否存在数据&#xff0c;例如&#xff1a;如果需要更改…...

自己做网站怎么做/竞价培训

文件上传是很常见的实用功能。本文演示如何用Express实现文件上传功能。例程本例需要两个文件及一个目录test39.js&#xff1a;主程序&#xff1b;index.html&#xff1a;用于上传文件的前端页面&#xff1b;temp_folder&#xff1a;存放被上传的文件。test39.js&#xff1a;va…...

平凉市住房和城乡建设局网站/百度明星人气榜入口

文章目录一、信号量&#xff08;Semaphore)1.用信号量实现临界区的互斥访问2.信号量的实现二、管程&#xff08;Moniter&#xff09;Hansen 管程与 Hoare 管程互斥无法解决同步问题。所以引入信号量、管程的概念。一、信号量&#xff08;Semaphore) 信号量可以分为两种&#xf…...

怎样查找网站域名/厦门网站搜索引擎优化

屏幕方面。与Mate30 Pro一样&#xff0c;它也是采用一块6.53英寸的OLED屏幕&#xff0c;分辨率为1176X2400。这些硬件都是一样的。 华为手机爆降1500太给力了&#xff1a;https://www.huawei.com/ 华为Mate30 Pro更多使用感受和评价&#xff1a;https://www.huawei.com/30 华为…...

做网站玩玩/公众号seo排名优化

Hive的数据模型之外部表 外部表(External Table)- 指向已经在HDFS中存在的数据&#xff0c;可以创建Partition- 它和内部表在元数据的组织上是相同的&#xff0c;而实际数据的存储则有较大的差异。- 外部表侄有一个过程&#xff0c;加载数据和创建表同时完成&#xff0c;并不会…...