云计算技术 实验八 数据仓库Hive的安装和使用

这篇具有很好参考价值的文章主要介绍了云计算技术 实验八 数据仓库Hive的安装和使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考资料为:

 

教材代码-林子雨编著《大数据基础编程、实验和案例教程(第2版)》教材所有章节代码_厦大数据库实验室博客

1.实验学时

4学时

2.实验目的

  • 熟悉Hive的安装
  • 熟悉Hive的基本用法

3.实验内容

(一)完成Hive的安装和配置Mysql接口。

先进行hive安装包的安装。

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

然后修改文件名和文件权限;

云计算技术 实验八 数据仓库Hive的安装和使用

之后加入环境变量的路径:

云计算技术 实验八 数据仓库Hive的安装和使用

加入:

云计算技术 实验八 数据仓库Hive的安装和使用

然后输入命令使得配置立即生效。

之后进入对应文件夹修改文件名:

云计算技术 实验八 数据仓库Hive的安装和使用

然后创建一个新的文件.xml

云计算技术 实验八 数据仓库Hive的安装和使用

输入信息:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
    <description>password to use against metastore database</description>
  </property>
</configuration>

云计算技术 实验八 数据仓库Hive的安装和使用

之后配置MySQL:

先把压缩包压解,之后将压缩包复制到对应文件夹内;

云计算技术 实验八 数据仓库Hive的安装和使用

 云计算技术 实验八 数据仓库Hive的安装和使用

先安装MySql数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

关闭然后重新启动数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

成功进入数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

进入sql的shell命令

云计算技术 实验八 数据仓库Hive的安装和使用

测试几个功能:

查看sql当前字符格式:

云计算技术 实验八 数据仓库Hive的安装和使用

临时设置编码格式:

云计算技术 实验八 数据仓库Hive的安装和使用

通过修改配置文件来进行编码格式的永久修改:

云计算技术 实验八 数据仓库Hive的安装和使用

在下面加上character_set_server=utf8即可

这里要注意,需要修改文件权限才可以进行修改,添加代码的操作。

云计算技术 实验八 数据仓库Hive的安装和使用

之后进入mysql查看发现已经修改utf8(character_set_server)成功:

云计算技术 实验八 数据仓库Hive的安装和使用

之后是mysql数据库的基本操作:

显示数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

使用use命令打开数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

使用下面的命令显示数据库中的表:

云计算技术 实验八 数据仓库Hive的安装和使用云计算技术 实验八 数据仓库Hive的安装和使用

显示user表中的记录:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

创建数据库aaa:

云计算技术 实验八 数据仓库Hive的安装和使用

创建表:

创建表并使得建立表person,表中有id、xm(姓名)、xb(性别)、csny(出生年月)等信息。

云计算技术 实验八 数据仓库Hive的安装和使用

打印对应的信息:

云计算技术 实验八 数据仓库Hive的安装和使用

增加对应的记录:

云计算技术 实验八 数据仓库Hive的安装和使用

由于设置了id自增,所以对应的增加的信息会自动的加入到下一个列表之中。

使用select命令查看插入是否成功:

云计算技术 实验八 数据仓库Hive的安装和使用

修改数据库中的信息:

云计算技术 实验八 数据仓库Hive的安装和使用

删除信息:

云计算技术 实验八 数据仓库Hive的安装和使用

删除对应的数据库以及表可以使用命令drop database+对应库名

drop table+对应表格

配置完成mysql数据库之后,开始配置接入hive数据库。

然后将mysql接入hive数据仓库:

云计算技术 实验八 数据仓库Hive的安装和使用

然后配置允许mysql接入hive数据仓库:

云计算技术 实验八 数据仓库Hive的安装和使用

然后可以开始启动hive数据仓库:

不过启动之前先要启动hadoop。

云计算技术 实验八 数据仓库Hive的安装和使用

启动完成之后就可以启动hive数据仓库:

发现出现了问题:

云计算技术 实验八 数据仓库Hive的安装和使用

这时可以使用架构升级软件来进行版本的提升适配:

但是还是出现了报错,这个时候需要修改对应的版本号来进行错误清除。

查看发现对应的hadoop和hive两个的版本号是不一样的。这个时候就可以将两个guava版本修改成一样的就可以了。

云计算技术 实验八 数据仓库Hive的安装和使用云计算技术 实验八 数据仓库Hive的安装和使用

修改之后,再次启动hive。

不过还是报错。

云计算技术 实验八 数据仓库Hive的安装和使用

这里的报错意思是hadoop现在在安全模式下,这个时候无法创建文件!!!

这个时候需要关闭hadoop的安全模式!!!!

云计算技术 实验八 数据仓库Hive的安装和使用

关闭之后,就可以重新启动hive,之后就可以重新进入hive进行编程。

云计算技术 实验八 数据仓库Hive的安装和使用

 (二)了解Hive的基本数据类型。列出各种数据类型。

这里的hive基本数据类型有多种。

TINYINT

1B(8b)有符号整数

1

SMALLINT

2B(16b)有符号整数

1

INT

4B(32b)有符号整数

1

BIGINT

8B(64b)有符号整数

1

FLOAT

4B(32b)单精度浮点数

1.0

BOUBLE

8B(64b)双精度浮点数

1.0

STRING

字符串,可以指定字符串

“smu”

TIMESTAMP

整数、浮点数或者字符串

127383728193

BINARY

字节数组

[0,1,0,1,0,1]

BOOLEAN

布尔类型:true/false

true

同时还有Hive支持的集合数据类型:

ARRAY

一组有序字段,字段类型必须相同

Array(1,2)

MAP

一组无序的键值对,键的类型必须是原子的,值可以是任何数据类型,同一个映射的健和值的类型必须相同

Map(‘a’,1,2)

STRUCT

一组命名的字段,字段的类型可以不同

Struct(‘a’,1,1,0)

(三)完成Hive的基本操作,参考8.3节。

然后开始hive的编程基本操作

1.首先是创建数据库hive:,创建的指令与mysql数据库相似:

云计算技术 实验八 数据仓库Hive的安装和使用

2.创建表:需要在创建好的hive数据库中才创建一个表:

云计算技术 实验八 数据仓库Hive的安装和使用

在hive中创建一个表的同时,还可以指定对应的路径进行表的创建。

云计算技术 实验八 数据仓库Hive的安装和使用

当然,还可以在外部创建一个表,创建的这个表可以读取路径/usr/local/data下以”.”分割的数据。

云计算技术 实验八 数据仓库Hive的安装和使用

然后在hive数据库中创建分区表uerl,这个表通过复制usr表得到:

云计算技术 实验八 数据仓库Hive的安装和使用

3.创建视图:

云计算技术 实验八 数据仓库Hive的安装和使用

之后是删除操作:

1.删除数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

这里的意思是说这个库中有其他的信息,需要将这些信息删除之后才可以删除库。

可以在代码中加入if exists代码,如果不存在也不会产生异常

当然,也可以在代码后面加上caseade,这样删除当前数据库和数据库中的表。

云计算技术 实验八 数据仓库Hive的安装和使用

2.删除表:

如果删除内部表,那么所有的信息都会被删除,如果是外部表,那么只会删除元数据而不会删除实际数据。

云计算技术 实验八 数据仓库Hive的安装和使用

3.删除视图:

云计算技术 实验八 数据仓库Hive的安装和使用

之后是修改数据库中的元素的操作:

1.修改数据库:

先创建一个数据库,然后在数据库中设置键值对属性进行操作。

云计算技术 实验八 数据仓库Hive的安装和使用

2.修改表:

重命名:

云计算技术 实验八 数据仓库Hive的安装和使用

为usr增加分区:

云计算技术 实验八 数据仓库Hive的安装和使用

删除分区:

云计算技术 实验八 数据仓库Hive的安装和使用

将usr表中的name修改为username,并且将name放在age之后

云计算技术 实验八 数据仓库Hive的安装和使用

在usr分区字段前面增加一个新的列sex:

云计算技术 实验八 数据仓库Hive的安装和使用

删除usr表中的所有字段之后重新定义字段:

云计算技术 实验八 数据仓库Hive的安装和使用

描述对应的属性信息:

云计算技术 实验八 数据仓库Hive的安装和使用

3.修改视图:

首先创建一个a的表,然后将视图继承于这个表:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

然后修改视图

云计算技术 实验八 数据仓库Hive的安装和使用

之后是查看数据库、表、视图:

1.查看数据库:

云计算技术 实验八 数据仓库Hive的安装和使用

2.查看表和视图:

云计算技术 实验八 数据仓库Hive的安装和使用

描述数据库、表、视图:

1.描述数据库基本信息:

云计算技术 实验八 数据仓库Hive的安装和使用

查看数据库详细信息:

云计算技术 实验八 数据仓库Hive的安装和使用

2.描述表和视图:

查看表usr和视图的基本信息:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

查看详细信息:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

然后是查看usr列中的id信息:

云计算技术 实验八 数据仓库Hive的安装和使用

然后是向表中装载数据:

首先打开hive库,然后写入路径中的数据:

云计算技术 实验八 数据仓库Hive的安装和使用

 云计算技术 实验八 数据仓库Hive的安装和使用

将HDFS路径下的数据文件装入表中并且覆盖原来数据:

云计算技术 实验八 数据仓库Hive的安装和使用

导出数据:

首先创建一个新的分区表,然后创建一个新的表,让这个新的表继承这个分区表,

然后向新的分区表装载信息。

云计算技术 实验八 数据仓库Hive的安装和使用

   云计算技术 实验八 数据仓库Hive的安装和使用

然后导出信息:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

可以选择追加原有数据:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

(四)在hive中实现wordcount。

创建一个input文件作为输入:

云计算技术 实验八 数据仓库Hive的安装和使用

进入这个文件夹之后创建两个文件:

云计算技术 实验八 数据仓库Hive的安装和使用

然后进入hive界面编写实现wordcount算法:

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

云计算技术 实验八 数据仓库Hive的安装和使用

之后使用select语句查看结果:

云计算技术 实验八 数据仓库Hive的安装和使用

4.思考题

(一)为什么要设计Hive?

1.在使用hive的时候,可以比mapreduce使用更少的代码量,在mapreduce中需要实现产生jar包,但是在使用hive的时候不需要使用jar包。用户不用实现具体的细节。

2. 大多数数据仓库应用程序都是使用关系数据库进行实现的,并使用SQL作为查询语言。Hive降低了将这些应用程序转移到Hadoop系统上的难度

3. 另外,相比其他工具,Hive更便于开发人员将基于SQL的应用程序转移到Hadoop中如果没有Hive,那么开发者将面临一个艰巨的挑战,如何将他们的SQL应用程序移植到Hadoop上。

(二)在hive中实现wordcount和直接写java程序有什么区别和相似?

相似:

使用的时候与直接在java程序中一样先要创建两个测试文件,也是需要进入到相同的目录和路径之下。

不同:

实现wordcount时hive已经将sql封装成mapreduce,简化了编写mapreduce的时间,相当于执行了两次mapreduce。但是使用java编写的时候,将会调用各种包,之前还需要进行各种包的导入以及代码的编写,远远没有wordcount便利简洁。

5.实验结论或体会

1.实验的时候,需要事先安装好mysql,下载的时候如果速度太慢,可以更换对应的下载网站。

2.在安装好hive并且想要启动的时候,有可能会报错。这里需要注意,可以使用架构升级软件来进行版本的提升适配:

但是还是出现了报错,这个时候需要修改对应的版本号来进行错误清除。

查看发现对应的hadoop和hive两个的版本号是不一样的。这个时候就可以将两个guava版本修改成一样的就可以了。

云计算技术 实验八 数据仓库Hive的安装和使用云计算技术 实验八 数据仓库Hive的安装和使用

修改之后,再次启动hive。

不过还是报错。

云计算技术 实验八 数据仓库Hive的安装和使用

这里的报错意思是hadoop现在在安全模式下,这个时候无法创建文件!!!

这个时候需要关闭hadoop的安全模式!!!!

云计算技术 实验八 数据仓库Hive的安装和使用

关闭之后,就可以重新启动hive,之后就可以重新进入hive进行编程。

云计算技术 实验八 数据仓库Hive的安装和使用

3.建议每次使用hive的时候,启动hadoop的时候需要启动hadoop的安全模式。进行删除数据库的时候,需要匹配对应的路径才可以。

4.需要注意路径有中文符号的问题。文章来源地址https://www.toymoban.com/news/detail-460704.html

到了这里,关于云计算技术 实验八 数据仓库Hive的安装和使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据仓库hive的安装说明

    1.按照下面语句顺序依次输入,安装mysql         $sudo apt-get install mysql-server         $sudo apt-get install mysql-client         $sudo apt-get install libmysqlclient-dev 2.连接MySQL数据库 (1)进入mysql         $sudo mysql -u root –p (2)使用mysql         use mysql; (3)修改mysql用户密

    2024年03月10日
    浏览(37)
  • 【数据库技术】金管局计算机岗位——数据仓库(⭐⭐⭐⭐)

    考点导读:这个考点近几年都有考到。内容主要包括数据仓库的概念、功能、特点、与数据库的区别、架构与ETL操作等,属于能力拓展的知识内容,出题的可能性极大,注意理解掌握。 数据仓库(Data Warehouse),是为了企业所有级别的决策制定计划过程,提供所有类型数据类型

    2024年02月06日
    浏览(41)
  • 云计算技术 实验五 Hbase的安装和基础编程

    参考资料为: 教材代码-林子雨编著《大数据基础编程、实验和案例教程(第2版)》教材所有章节代码_厦大数据库实验室博客 1 . 实验学时 4学时 2 . 实验目的 熟悉Hbase的安装和配置。 熟悉Hbase的相关命令。 实现Hbase的Java编程调用。 3.实验内容 (一) 安装Hbase,能够查询Hba

    2024年02月11日
    浏览(30)
  • 云计算技术 实验九 Spark的安装和基础编程

    1 . 实验学时 4学时 2 . 实验目的 熟悉Spark Shell。 编写Spark的独立的应用程序。 3 . 实验内容 (一)完成Spark的安装,熟悉Spark Shell。 首先安装spark: 将下好的压缩文件传入linux,然后进行压解: 之后移动文件,修改文件权限: 然后是配置相关的文件: Vim进入进行修改: 然后是

    2024年02月05日
    浏览(38)
  • 云计算技术 实验一 安装docker系统并熟悉docker命令

    环境为windows11,虚拟机为16.04。 需要使用厦门大学林子雨老师的实验镜像进行实验,使用的操作系统为VirtualBox。 VirtualBox下载地址为:Downloads – Oracle VM VirtualBox 镜像为:大数据Linux实验环境虚拟机镜像文件_厦大数据库实验室博客 如若系统之前安装过docker,则可以完全卸载干

    2024年02月05日
    浏览(25)
  • 云计算技术 实验三 安装Hadoop系统并熟悉hadoop命令

    参考资料为: 教材代码-林子雨编著《大数据基础编程、实验和案例教程(第2版)》教材所有章节代码_厦大数据库实验室博客 1 . 实验学时 4学时 2 . 实验目的 熟悉Hadoop系统的安装 掌握Hadoop系统的两种安装方式 掌握Hadoop系统的基本命令 3 . 实验内容 安装虚拟机和Linux环境。

    2024年02月07日
    浏览(32)
  • 一文通览腾讯云大数据ES、数据湖计算、云数据仓库产品新版本技术创新

    目录 零:前言 一、Elasticsearch 1.1、Elasticsearch的现状 1.2、腾讯云Elasticsearch是什么? 2.1、行业问题 2.2、存算分离核心优势 2.3、存算分离关键技术-物理复制 2.4、存算分离关键技术-混合存储 三、Elasticsearch Serverless  3.1、行业问题 3.2、什么是Elasticsearch Serverless  3.3、Elasticsea

    2024年02月08日
    浏览(31)
  • 大数据平台安装实验: ZooKeeper、Kafka、Hadoop、Hbase、Hive、Scala、Spark、Storm

    ​ 在大数据时代,存在很多开源的分布式数据采集、计算、存储技术,本实验将在熟练掌握几种常见Linux命令的基础上搭建几种常用的大数据采集、处理分析技术环境。 相关安装包下载: 链接:https://pan.baidu.com/s/1Wa2U3qstc54IAUCypcApSQ 提取码:lcd8 Hadoop大数据平台所需工具、软件

    2023年04月09日
    浏览(80)
  • 云计算安全实验-MapReduce安装与简单使用

    一、安装Hadoop 1. 创建Hadoop用户 创建用户命令如下: sudo useradd -m hadoop -s /bin/bash 接着为 hadoop 用户设置密码 sudo passwd hadoop 然后为 hadoop 用户增加管理员权限: sudo adduser hadoop sudo 切换用户为hadoop登录 su hadoop 2.更新apt和安装Vim编辑器 首先更新 apt: sudo apt-get update 接着安装 Vim

    2024年03月19日
    浏览(38)
  • 数据仓库实验一:数据仓库建立实验

        通过本实验,掌握在Sql Server(2012 或 2008 R2以上版本)中通过 Analysis Services 建立数据仓库的方法。包括如何在 BI Development Studio 的 Analysis Services 项目中定义数据源、数据源视图、维度、属性、层次结构和多维数据集,如何查看多维数据集的维度,理解并掌握 OLAP 分析的

    2024年04月14日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包