大数据Hive安装与设置

打印 上一主题 下一主题

主题 869|帖子 869|积分 2617

前言

Hive 是一个构建在 Hadoop 之上的数据仓库工具,用于数据的提取、转换和加载(ETL),并提供了一种类 SQL 的查询语言(HiveQL),使用户能够轻松查询和分析大规模数据集。以下是对 Hive 的一些关键点的具体介绍:
根本概念



  • HiveQL: Hive 提供的查询语言雷同于 SQL,支持常用的查询功能,如选择、过滤、聚合和连接等。
  • : Hive 使用表来存储数据,表的数据可以存储在 Hadoop HDFS 中。Hive 支持不同的表类型:

    • 管理表(Managed Tables):当删除表时,表的数据也会被删除。
    • 外部表(External Tables):数据存储在外部位置(如 HDFS),删除表时数据不会被删除。

  • 分区: Hive 允许对表进行分区,分区可以帮助提高查询性能。数据可以按某个列进行分区,使得查询时只扫描干系的分区。
  • : 在分区的根本上,Hive 还支持桶(Bucketing),数据可以在分区内进一步分散到多个文件中。桶的数量由 CLUSTERED BY 子句界说。
架构

Hive 的架构主要由以下几个部分组成:


  • Hive Metastore: 用于存储 Hive 表的结构和元数据(如表名、字段名、数据类型等)。Metastore 是 Hive 的焦点部分,使用关系型数据库(如 MySQL、PostgreSQL 等)来存储这些元数据。
  • Driver: Hive 的驱动程序接收 HiveQL 查询并将其编译为 MapReduce 作业。
  • Compiler: HiveQL 查询会被编译成多个 MapReduce 任务,便于在 Hadoop 上执行。
  • Execution Engine: 执行编译后的 MapReduce 作业并处理结果。
主要特性



  • 扩展性: Hive 支持用户自界说函数(UDF),用户可以根据必要扩展 Hive 的功能。
  • 数据存储: Hive 可以与多种数据存储体系集成,如 HDFS、HBase、Amazon S3 等。
  • 兼容性: Hive 兼容多种数据格式,包括文本、Parquet、ORC、Avro 等,支持结构化和半结构化数据。
使用场景

Hive 适用于批量处理和数据分析的场景,例如:


  • 大数据处理和分析。
  • 数据仓库和报表生成。
  • 数据发掘和机器学习的前处理。
安装设置

上传Hive

上传方式可通过当地拖拽文件上传,也可通过连接xftp来拖拽至xshell下令行里实现

解压Hive

将Hive 3.1.2的安装包解压到/root/software 目录下
(如若没有目录则需创建)
  1. mkdir software/
复制代码
  1. tar -zxvf apache-hive-3.1.2-bin.tar.gz -C software
复制代码

解压完毕
设置环境变量

在“/etc/profile”文件中设置Hive环境变量 HIVE_HOME和PATH的值,并让设置文件立刻生效;
  1. vim /etc/profile
复制代码

输入以下参数值
  1. export HIVE_HOME=/root/software/apache-hive-3.1.2-bin
  2. export PATH=$PATH:$HIVE_HOME/bin
复制代码

wq生存并退出
刷新设置

  1. source /etc/profile
复制代码

修改设置文件

切换到$HIVE_HOME/conf目录下,将hive-env.sh.template复制一份并重命名为hive-env.sh
  1. cd $HIVE_HOME/conf
复制代码

  1. cp hive-env.sh.template hive-env.sh
复制代码

使用vim编辑器进行编辑,在文件中设置HADOOP_HOME、 HIVE_CONF_DIR以及HIVE_AUX_JARS_PATH参数的值,将原有 值删除并将前面的解释符#去掉
  1. vim hive-env.sh
复制代码

插入参数值
  1. #将原有的#注释符去掉
  2. HADOOP_HOME=/root/software/hadoop-3.3.0
  3. export HIVE_CONF_DIR=/root/software/apache-hive-3.1.2-bin/conf
  4. export HIVE_AUX_JARS_PATH=/root/software/apache-hive-3.1.2-bin/lib
复制代码

wq生存并退出
MySQL驱动包

上传MySQL驱动包

将mysql-connector-java-5.1.47-bin.jar上传至/root/software目录下

解压MySQL驱动包

  1. tar -zxvf mysql-connector-java-5.1.47.tar.gz
复制代码

进入解压完的目录
  1. cd mysql-connector-java-5.1.47/
复制代码

将mysql-connector-java-5.1.47-bin.jar拷贝到$HIVE_HOME/lib目录下
  1. cp mysql-connector-java-5.1.47-bin.jar $HIVE_HOME/lib
复制代码


拷贝完成
设置文件

创建文件

进入$HIVE_HOME/conf
  1. cd $HIVE_HOME/conf
复制代码

在$HIVE_HOME/conf目录下创建一个名为hive-site.xml的文件
  1. touch hive-site.xml
复制代码

编辑文件

并使用vim编辑器进行编辑如下内容
           设置参数                  描述                  参数值       
           javax.jdo.option.ConnectionURL                  连接元数据库的链接信息                  jdbc:mysql://master:3306/hivedb                 ?createDatabaseIfNotExist=true&                 amp;useSSL=false&useUnicode                 =true&characterEncoding=UTF                 -8      
           javax.jdo.option.ConnectionDriverName                 连接数据库驱动                  com.mysql.jdbc.Driver      
           javax.jdo.option.ConnectionUserName                  连接数据库用户名称                 root      
           javax.jdo.option.ConnectionPassword                 连接数据库用户密码      123456
  1. vim hive-site.xml
复制代码


wq生存退出
接着登录到mysql
  1. mysql -u root -p123456
复制代码
初始化元数据

使用schematool下令,通过指定元数据库类型为“mysql”,来初始化源数据库的元数据
初始化Hive元数据库(修改为接纳MySQL存储元数据)

  1. bin/schematool -dbType mysql -initSchema -verbose
复制代码

出现红框以内的内容就是初始化乐成
在Hive客户端下创建管理表

启动Hive CLI

起首,启动Hive下令行界面
  1. hive
复制代码

这将进入Hive的下令行模式,你将看到雷同以下提示符
  1. hive>
复制代码
创建名为student的管理表

字段数据类型
idint
namestring


  • id(整数类型)
  • name(字符串类型)
表的结构如上:
使用以下SQL语句
  1. CREATE TABLE student (
  2.   id INT,
  3.   name STRING
  4. );
复制代码

执行此下令后,Hive会在默认数据库下创建一个管理表student
查看表

创建表后,你可以通过以下下令查看刚创建的表
  1. SHOW TABLES;
复制代码
你会看到输出如下,表示表已乐成创建

查看表结构

也可以查看表的具体结构
输入以下下令
  1. DESCRIBE student;
复制代码

使用insert语句插入测试数据

插入数据

假设我们想插入id为1,name为"John Doe"的记录,可输入以下SQL下令
  1. INSERT INTO TABLE student VALUES (1, 'John Doe');
复制代码

确认数据是否插入

我们可以查询表里的内容来确认数据有没有正确插入乐成
  1. SELECT * FROM student;
复制代码

插入乐成

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

篮之新喜

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表