实验五 熟悉 Hive 的基本操作

实验环境:
1.操作系统:CentOS 7。
2.Hadoop 版本:3.3.0。
3.Hive 版本:3.1.2。
4.JDK 版本:1.8。
实验内容与完成情况:

(1)创建一个内部表 stocks,字段分隔符为英文逗号,表结构如表 A-6 所示。

create table if not exists stocks ( `exchange` string, `symbol` string, `ymd` string, `price_open` float, `price_high` float, `price_low` float, `price_close` float, `volume` int, `price_adj_close` float ) row format delimited fields terminated by ',';

在这里插入图片描述

打开数据库
在这里插入图片描述

(2)创建一个外部分区表 dividends(分区字段为 exchange 和 symbol),字段分隔符为英 文逗号,表结构如表 A-7 所示。

create external table if not exists dividends ( `ymd` string, `dividend` float ) partitioned by(`exchange` string ,`symbol` string) row format delimited fields terminated by ',';

在这里插入图片描述
在这里插入图片描述

(3)从 stocks.csv 文件向 stocks 表中导入数据。

load data local inpath '/test/data/stocks/stocks.csv' overwrite into  table stocks;

在这里插入图片描述

(4) 创建一个未分区的外部表 dividends_unpartitioned,并从 dividends.csv 向其中导入数 据,表结构如表 A-8 所示。

create external table if not exists dividends_unpartitioned ( `exchange` string , `symbol` string, `ymd` string, `dividend` float ) row format delimited fields terminated by ','; load data local inpath '/test/data/dividends/dividends.csv' overwrite into table dividends_unpartitioned;

在这里插入图片描述

(5)通过对 dividends_unpartitioned 的查询语句,利用 Hive 自动分区特性向分区表 dividends 各个分区中插入对应数据。

select t2.`year`,symbol,t2.avg_price from ( select *,row_number() over(partition by t1.`year` order by t1.avg_price desc) as `rank`

在这里插入图片描述

(6)查询 IBM 公司(symbol=IBM)从 2000 年起所有支付股息的交易日(dividends 表中有对应 记录)的收盘价(price_close)。

select s.ymd,s.symbol,s.price_close from stocks s LEFT SEMI JOIN dividends d ON s.ymd=d.ymd and s.symbol=d.symbol where s.symbol='IBM' and year(ymd)>=2000

在这里插入图片描述

(7)查询苹果公司(symbol=AAPL)2008 年 10 月每个交易日的涨跌情况,涨显示 rise,跌显 示 fall,不变显示 unchange。

select ymd, case when price_close-price_open>0 then 'rise' when price_close-price_open

在这里插入图片描述

(8)查询 stocks 表中收盘价(price_close)比开盘价(price_open)高得最多的那条记录的交易所 (exchange)、股票代码(symbol)、日期(ymd)、收盘价、开盘价及二者差价。

select `exchange`,symbol,ymd,price_close-price_open as `diff` from ( select * from stocks order by price_close-price_open desc limit 1 )t;

在这里插入图片描述

(9)从 stocks 表中查询苹果公司(symbol=AAPL)年平均调整后收盘价(price_adj_close) 大 于 50 美元的年份及年平均调整后收盘价。

select year(ymd) as `year`, avg(price_adj_close) as avg_price from stocks where `exchange`='NASDAQ' and symbol='AAPL' group by year(ymd) having avg_price > 50

在这里插入图片描述

(10)查询每年年平均调整后收盘价(price_adj_close)前三名的公司的股票代码及年平均调整 后收盘价。

select t2.`year`,symbol,t2.avg_price from ( select *,row_number() over(partition by t1.`year` order by t1.avg_price desc) as `rank` from ( select year(ymd) as `year`, symbol, avg(price_adj_close) as avg_price from stocks group by year(ymd),symbol )t1 )t2 where t2.`rank`<=3;

在这里插入图片描述

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

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

相关文章

SkyWalking分布式链路追踪学习

为什么要用分布式链路追踪 实际生产中&#xff0c;面对几十个、甚至成百上千个的微服务实例&#xff0c;如果一旦某个实例发生宕机&#xff0c;如果不能快速定位、提交预警&#xff0c;对实际生产造成的损失无疑是巨大的。所以&#xff0c;要对微服务进行监控、预警&#xff0…

【owt-server】切换node和npm版本

fix : - npm v9.7.1 is known not to run on Node.js v10.21.0.npm 版本与node版本不匹配 npm v9.7.1 is known not to run on Node.js v10.21.0.root@k8s-master-2K4G:~/clash# npm init ERROR: npm v9.7.1 is known not to run on Node.js v10.21.0. This version of npm s…

颜色+情感的英语表达还有这些,零基础学英语口语去哪里,柯桥有推荐的吗?

当我们探讨关于"blue"&#xff08;蓝色&#xff09;的多义性时&#xff0c;我们会发现英语中有许多其他词汇也有类似的双关意义。 既可以表示一种颜色或物理属性&#xff0c;又可以代表一种情感或心理状态。 这种现象在语言中很常见&#xff0c;反映了语言的丰富性和…

信息化发展70

两化融合与智能制造 “坚持自主可控、安全高效&#xff0c;推进产业基础高级化、产业链现代化&#xff0c;保持制造业比重基本稳定&#xff0c;增强制造业竞争优势&#xff0c;推动制造业高质量发展”是工业发展的重要战略。“深入实施智能制造和绿色制造工程&#xff0c;发展…

如何将图片转为ico格式

这里主要是记录一个网站&#xff0c;如果你有更好的办法欢迎留言~ ico简介 ICO&#xff08;Icon&#xff09;是一种用于表示图标的文件格式&#xff0c;常用于Windows操作系统中。ICO格式的图片通常用于表示应用程序、文件夹、网站等的图标。 ICO文件可以包含多个图标&#x…

星际争霸之小霸王之小蜜蜂(十五)--剧将终场

系列文章目录 星际争霸之小霸王之小蜜蜂&#xff08;十四&#xff09;--资本家的眼泪 星际争霸之小霸王之小蜜蜂&#xff08;十三&#xff09;--接着奏乐接着舞 星际争霸之小霸王之小蜜蜂&#xff08;十二&#xff09;--猫有九条命 星际争霸之小霸王之小蜜蜂&#xff08;十一…

什么是RESTful API?它的设计原则是什么?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 什么是RESTful API&#xff1f;RESTful API的设计原则示例 ⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感…

C语言 cortex-A7核 UART总线 实验

一、C 1&#xff09;uart4.h #ifndef __UART4_H__ #define __UART4_H__ #include "stm32mp1xx_rcc.h" #include "stm32mp1xx_gpio.h" #include "stm32mp1xx_uart.h&quo…

汽车三高试验离不开的远程试验管理平台-TFM

一 背景 众所周知&#xff0c;车辆在量产之前都要经过长时间的耐久性试验和多种汽车适应性或法规试验。道路试验就是在汽车上装设测试仪表和施加模拟载荷&#xff0c;并按实际使用条件来进行测试。此外&#xff0c;在实际试验场地和试验时间上也是有一定规定的。企业根据不同的…

2024年考研倒计时三个月不到,快来获取公共科目和统考科目大纲

今天是2023年9月28日&#xff0c;距离2024年的考研还有不到三个月的时间&#xff0c;最后阶段该如何复习最有效呢&#xff1f; 很多学霸的经验是&#xff1a;在掌握了教材基础知识的前提下&#xff0c;对照着大纲进行查漏补缺。这种对照考试大纲进行复习和备考的方法不只是适合…

澳大利亚新版《2023年消费品(36个月以下儿童玩具) 安全标准》发布 旨在降低危险小零件的伤害

2023年9月4日&#xff0c;澳大利亚政府发布了新的儿童玩具强制性安全标准《2023年消费品(36个月以下儿童玩具)安全标准》&#xff08;Consumer Goods (Toys for Children up to and including 36 Months of Age) Safety Standard 2023&#xff09;。该强制性标准旨在尽可能地降…

数据中心智能母线监控解决方案

安科瑞 崔丽洁 01概述 安科瑞智能母线监控产品分为交流和直流母线监控两类&#xff0c;包括始端箱监测模块、插接箱监测模块以及触摸屏&#xff0c;另外还可以搭配母线槽连接器红外测温模块用于监测母线槽的运行温度&#xff0c;确保母线槽配电安全。 02应用场景 AMB系列母线监…

R语言中的数据重塑

文章目录 介绍reshape2::melt()的用法实例reshape2::dcast()的用法实例tidyr::gather()的用法tidyr::spread()的用法介绍 tidyverse系列包中的函数操作都是针对简洁数据框进行的,对于不是简洁的数据,实现需要进行数据重塑。数据重塑主要包括长宽表的转换、拆分/合并列、方形…

Day05-循环高级和数组

循环高级 1.无限循环 概念&#xff1a; 又叫死循环。循环一直停不下来。 for格式&#xff1a; for(;;){System.out.println("循环执行一直在打印内容"); } 解释&#xff1a; 初始化语句可以空着不写&#xff0c;表示循环之前不定义任何的控制变量。 条件判断…

JVM调优工具详解及调优实战

前置启动程序 事先启动一个web应用程序&#xff0c;用jps查看其进程id&#xff0c;接着用各种jdk自带命令优化应用 Jmap 此命令可以用来查看内存信息&#xff0c;实例个数以及占用内存大小 ​ ​ jmap -histo 14660 #查看历史生成的实例 jmap -histo:live 14660 #查看…

ITSM和ITIL有什么区别?

ITIL是最广泛接受的ITSM方法&#xff0c;是用于管理组织IT运营和服务的最佳实践和建议的框架。它是由英国政府的中央计算机和电信局&#xff08;CCTA&#xff09;在1980年代中期委托创建的。基于ITIL框架构建的ITSM流程为更好的IT服务和改善业务铺平了道路。总而言之&#xff0…

SVM(下):如何进行乳腺癌检测?

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ &#x1f434;作者&#xff1a;秋无之地 &#x1f434;简介&#xff1a;CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作&#xff0c;主要擅长领域有&#xff1a;爬虫、后端、大数据…

在 Vue 项目中添加字典翻译工具(二)

封装字段翻译组件&#xff0c;可以格式化字典、枚举、字段 优点&#xff1a; 使用简单&#xff0c;一次配置多次使用&#xff0c;缓存降低后端请求次数&#xff0c;扩展性强 没有缓存时造成单页面多次请求解决方法&#xff1a;axios添加缓存请求&#xff0c;防止多次请求&#…

Prometheus-监控Mysql进阶用法(1)(安装配置)

阿丹&#xff1a; 在开发和生产环境中有可能会出现慢mysql等问题&#xff0c;那么这里就需要我们优秀的程序员来进行监控和解决&#xff0c;那么如何借助云原生的监控系统来完成这个操作呢&#xff1f; 环境描述&#xff1a; 使用一台空白的阿里云服务器2核4G。 服务器基本安装…

泛函分析(一)

目录 1.数学基本概念 2.泛函概念和应用 2.1常用知识点 2.2泛函数解决的问题 2.3核函数 3.应用 参考文献 1.数学基本概念 2.泛函概念和应用 2.1常用知识点 算子&#xff1a;无限维空间到无限维空间的变换称为。泛函数&#xff1a;就是函数的函数&#xff0c;即一般函数自…