[Hive的基本概念之---数据库 ]

这篇具有很好参考价值的文章主要介绍了[Hive的基本概念之---数据库 ]。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言: 

Hive的一些基本概念:

数据库(Database)

服务器创建hive数据库指令:

Spring Boot中集成Hive数据库

在application.properties或application.yml文件中配置Hive JDBC连接属性,例如:

在application.properties或application.yml文件中配置MyBatis属性,例如:

创建Mapper接口和映射文件,例如:

在Spring Boot的配置类中,使用@MapperScan注解注册Mapper接口,然后调用对应方法 例如:

Hive数据库在服务器配置事项:

在hive-site.xml文件中,需要配置以下属性:


前言: 

   记录笔记一手

Hive是一个基于Hadoop的数据仓库工具,可以将结构化数据映射到Hadoop的分布式文件系统上,并提供类SQL查询的功能。以下是Hive的一些基本概念:

  1. 数据库(Database)
  2. Hive中的数据库类似于关系型数据库中的数据库,用于存储表和其他元数据。每个数据库都有一个唯一的名称,可以通过USE语句来切换数据库。
  3. 表(Table)
  4. Hive中的表类似于关系型数据库中的表,用于存储数据。每个表都有一个唯一的名称和一组列定义,可以通过CREATE TABLE语句来创建表。
  5. 分区(Partition)
  6. Hive中的分区是指将表按照某个列的值进行划分,每个分区对应一个子目录,用于存储该分区的数据。分区可以提高查询效率,可以通过ALTER TABLE语句来添加、删除和修改分区。
  7. 存储格式(Storage Format)
  8. Hive中的存储格式指数据在Hadoop分布式文件系统上的存储方式,常见的存储格式包括文本格式、序列化格式、列式存储格式等。可以通过CREATE TABLE语句的STORED AS子句来指定存储格式。
  9. 数据类型(Data Type)
  10. Hive中支持的数据类型包括基本数据类型、复合数据类型和集合数据类型等。常见的数据类型包括INT、BIGINT、STRING、BOOLEAN、ARRAY、MAP等。
  11. 查询语句(Query)
  12. Hive中的查询语句类似于SQL语句,可以使用SELECT、FROM、WHERE、GROUP BY、ORDER BY等关键字进行查询。Hive支持类SQL查询语句的语法,但是与SQL语言有一些差异,例如Hive中不支持UPDATE和DELETE语句。

Hive的一些基本概念:

Hive是一个基于Hadoop的数据仓库工具,可以将结构化数据映射到Hadoop的分布式文件系统上,并提供类SQL查询的功能。以下是Hive的一些基本概念:

数据库(Database)

  • Hive中的数据库类似于关系型数据库中的数据库,用于存储表和其他元数据。每个数据库都有一个唯一的名称,可以通过USE语句来切换数据库。Hive中的数据库并不是物理上的存储结构,而是一种逻辑上的组织方式。在Hive中,每个数据库都对应一个目录,该目录下存储了该数据库中的所有表和其他元数据。

服务器创建hive数据库指令:

在Hive中,可以通过CREATE DATABASE语句来创建数据库,例如:


CREATE DATABASE mydb;
在创建数据库时,可以指定数据库的名称和数据库的位置,例如:


CREATE DATABASE mydb LOCATION '/user/hive/mydb';
在Hive中,可以通过SHOW DATABASES语句来查看所有的数据库,例如:


SHOW DATABASES;

在Hive中,可以通过USE语句来切换数据库,例如:


USE mydb;
在切换数据库后,可以通过SHOW TABLES语句来查看该数据库中的所有表,例如:

SHOW TABLES;

DROP DATABASE mydb;  删除数据库;,删除数据库时会同时删除该数据库中的所有表和其他元数据,因此需要谨慎操作。

Spring Boot中集成Hive数据库

<dependency>
    <groupId>org.apache.hive</groupId>
    <artifactId>hive-jdbc</artifactId>
    <version>3.1.2</version>
</dependency>

在application.properties或application.yml文件中配置Hive JDBC连接属性,例如:

spring.datasource.url=jdbc:hive2://localhost:10000/default
spring.datasource.driver-class-name=org.apache.hive.jdbc.HiveDriver
spring.datasource.username=username
spring.datasource.password=password

在application.properties或application.yml文件中配置MyBatis属性,例如:

mybatis.mapper-locations=classpath:mapper/*.xml

其中,mapper-locations是MyBatis映射文件的路径。

创建Mapper接口和映射文件,例如:

public interface MyMapper {
    @Select("SELECT * FROM mytable")
    List<MyEntity> findAll();
}

<mapper namespace="com.example.mapper.MyMapper">
    <resultMap id="MyEntityMap" type="com.example.entity.MyEntity">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="age" property="age"/>
    </resultMap>
    <select id="findAll" resultMap="MyEntityMap">
        SELECT * FROM mytable
    </select>
</mapper>

MyMapper接口定义了一个findAll()方法,使用@Select注解指定SQL查询语句。映射文件中定义了一个resultMap和一个select标签,用于将查询结果映射到MyEntity实体类中。

在Spring Boot的配置类中,使用@MapperScan注解注册Mapper接口,然后调用对应方法 例如:

@Configuration
@MapperScan("com.example.mapper")
public class MyConfig {
}

@Autowired
private MyMapper myMapper;

public void queryHive() {
    List<MyEntity> result = myMapper.findAll();
    // 处理查询结果
}

使用@Autowired注解注入MyMapper接口,然后使用myMapper.findAll()方法执行SQL查询语句,最后使用List类型的result变量来保存查询结果。

需要注意的是,Hive的JDBC驱动与其他关系型数据库的JDBC驱动有一些差异,例如Hive不支持事务和索引等特性

Hive数据库在服务器配置事项:

用MySQL来存储Hive元数据时,需要进行以下配置

  • 安装MySQL 
  • 创建Hive元数据数据库 
  1. 首先需要安装MySQL数据库,可以从MySQL官网下载安装包,也可以使用Linux发行版自带的MySQL软件包。

在MySQL中创建一个数据库,用于存储Hive的元数据,例如:

CREATE DATABASE metastore;

在MySQL中创建一个用户,用于访问Hive元数据数据库,例如:

CREATE USER 'hiveuser'@'localhost' IDENTIFIED BY 'hivepassword';

在上述MySQL语句中,'hiveuser'是要创建的MySQL用户的用户名,'localhost'表示该用户只能从本地主机访问MySQL数据库,IDENTIFIED BY 'hivepassword'表示该用户的密码为hivepassword。

需要注意的是,创建MySQL用户和授权访问权限的操作需要具有MySQL的管理员权限,因此需要使用具有管理员权限的MySQL用户来执行这些操作。

将Hive元数据数据库的访问权限授予Hive元数据用户,例如:

GRANT ALL PRIVILEGES ON metastore.* TO 'hiveuser'@'localhost';

配置Hive-site.xml文件:

在Hive的conf目录下,有一个hive-default.xml.template文件,将其复制一份并重命名为hive-site.xml,然后根据需要进行配置。需要注意的是,hive-site.xml文件中的配置项会覆盖hive-default.xml.template文件中的默认配置项。

  1. 仅在hive-site.xml文件中配置需要修改的属性,不要修改其他属性。这样可以避免不必要的冲突。

  2. 在hive-site.xml文件中,使用标签覆盖hive-default.xml.template文件中的默认配置项,而不是直接修改默认配置项。这样可以避免不必要的冲突。

  3. 在修改hive-site.xml文件之前,先备份原始文件,以便在出现问题时可以恢复到原始状态。

  4. 在修改hive-site.xml文件之前,先仔细阅读Hive的官方文档和相关的教程,了解每个配置项的含义和影响,避免不必要的错误。

在hive-site.xml文件中,需要配置以下属性:

 文章来源地址https://www.toymoban.com/news/detail-639318.html

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost/metastore?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>hiveuser</value>
  <description>username to use against metastore database</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>hivepassword</value>
  <description>password to use against metastore database</description>
</property>

其中,ConnectionURL属性指定了连接MySQL数据库的URL,ConnectionDriverName属性指定了MySQL JDBC驱动的类名,ConnectionUserName和ConnectionPassword属性指定了连接MySQL数据库的用户名和密码。

 

在终端中输入hive命令,启动Hive服务,例如:

hive 

启动成功后,就可以使用Hive的命令行界面来创建数据库、表等对象了。 然后就可以用上面服务器创建hive数据库指令:

 

 

 

不写了 费脑 我淦

到了这里,关于[Hive的基本概念之---数据库 ]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • HIVE 表 DLL 基本操作(一)——第1关:Create/Alter/Drop 数据库

    第1关:Create/Alter/Drop 数据库 任务描述 本关任务:根据编程要求对数据库进行相关操作。 相关知识 为了完成本关任务,你需要掌握: 1.如何创建数据库; 2.如何修改数据库; 3.如何删除数据库。 Create 创建数据库 数据库本质上是一个目录或命名空间,用于解决表命名冲突。

    2024年02月03日
    浏览(53)
  • Hive数据库系列--Hive文件格式/Hive存储格式/Hive压缩格式

    本篇主要讲解一下Hive的文件格式,官方文档见《 https://cwiki.apache.org/confluence/display/Hive/FileFormats》、《 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-StorageFormatsStorageFormatsRowFormat,StorageFormat,andSerDe》 HIve的文件存储格式常见的有四种:textfile 、sequencefile、or

    2024年01月22日
    浏览(41)
  • 【数据库学习】hive

    Hadoop 的数据仓库处理工具,数据存储在Hadoop 兼容的文件系统(例如,Amazon S3、HDFS)中。hive 在加载数据过程中不会对数据进行任何的修改,只是将数据移动到HDFS 中hive 设定的目录下。 hive 的最佳使用场合是大数据集的批处理作业,例如,网络日志分析。 只允许查,不允许修

    2024年01月15日
    浏览(49)
  • hive数据库操作,hive函数,FineBI可视化操作

    1.1、创建数据库 1.2、查看数据库详细信息 数据库本质上就是在HDFS之上的文件夹。 默认数据库的存放路径是HDFS的:/user/hive/warehouse内 1.3、创建数据库并指定hdfs存储位置 使用location,可以指定数据库在HDFS的存储路径。 1.4、删除数据库 删除一个空数据库,如果数据库下

    2024年02月04日
    浏览(45)
  • 【大数据笔记】java jdbc连接hive数据库;java hive连接kerberos

    1、pom.xml配置         dependency             groupIdorg.apache.hive/groupId             artifactIdhive-jdbc/artifactId             scope2.1.1/scope         /dependency 2、驱动 org.apache.hive.jdbc.HiveDriver 3、用传统改的Class.forName,然后DriverManager去拿。 二、java hive连接kerberos

    2024年01月19日
    浏览(45)
  • 数据库:Hive转Presto(二)

    继续上节代码,补充了replace_func函数,        

    2024年02月07日
    浏览(36)
  • 大数据开发之Hive(基本概念、安装、数据类型、DDL数据定义、DML数据操作)

    1.1.1 Hive产生背景 HDFS来存储海量的数据、MapReduce来对海量数据进行分布式并行计算、Yarn来实现资源管理和作业调度。但是面对海量的数据和负责的业务逻辑,开发人员要编写MR对数据进行统计分析难度极大,所以就产生了Hive这个数仓工具。Hive可以帮助开发人员将SQL语句转化

    2024年01月17日
    浏览(45)
  • Dbeaver连接Hive数据库操作指导

    背景:由于工作需要,当前分析研究的数据基于Hadoop的Hive数据库中,且Hadoop服务端无权限进行操作且使用安全模式,在研究了Dbeaver、Squirrel和Hue三种连接Hive的工具,在无法绕开useKey认证的情况下,只能使用DBeaver工具进行远程连接。 【Hadoop环境】:Hive版本:3.1.0 KrbClient版本

    2024年02月09日
    浏览(45)
  • DataGrip连接hive数据库详细步骤

    1.如图所示,找到APache Hive并点击进入  2.点击图中框选位置 3.进入驱动后,手动添加hive的驱动jar包,hive-2.3.3驱动jar包免费下载地址(https://download.csdn.net/download/weixin_60315309/86830829?spm=1001.2014.3001.5501) 4.添加jar包后进行应用 5.应用成功后配置主机名与用户名(主机名为hive服务

    2024年02月15日
    浏览(39)
  • linux下hive远程数据库模式安装

    Apache Hive是一个分布式、容错的数据仓库系统,能够支持大规模的分析。Hive元数据仓库(HMS)提供了一个中央的元数据存储库,可轻松分析数据以做出明智的数据驱动决策,因此它是许多数据湖架构的关键组件。Hive建立在Apache Hadoop之上,支持在S3、adls、gs等存储上通过HDFS访问。

    2023年04月13日
    浏览(43)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包