本文节选自《Netkiller Database 手札》 5.26. Spring boot with Apache Hive 5.26.1. Maven <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.springframew
访问Hive有两种方式:HiveServer2和Hive Client,Hive Client需要Hive和Hadoop的jar包,配置环境。HiveServer2使得连接Hive的Client从Yarn和HDFS集群中独立出来,不需要每个节点都配置Hive和Hadoop的jar包和一系列环境。
1 Org.apache.hadoop.hive.service.ThriftHive
Fayson在前面的《0459-如何使用SQuirreL通过JDBC连接CDH的Hive(方式一)》简单的介绍了SQuirreL SQL Client的安装、注册Hive Driver以及使用。前一篇文章中使用的JDBC驱动是Hive默认的,本篇文章Fayson使用Cloudera官网提供的Hive JDBC驱动注册访问。
我们来看看强大的 Zeppelin 能够给 Hive 带来什么吧。首先需要安装 Hive 和 Zeppelin。具体请参考如下两篇文章:
流处理是通过在数据运动时对数据应用逻辑来创造商业价值。很多时候,这涉及组合数据源以丰富数据流。Flink SQL 执行此操作并将您应用于数据的任何函数的结果定向到接收器中。业务用例,例如欺诈检测、广告印象跟踪、医疗保健数据丰富、增加财务支出信息、GPS 设备数据丰富或个性化客户通信,都是使用Hive表来丰富数据流的很好的例子。 因此,Hive 表与 Flink SQL 有两种常见的用例:
此次博主为大家带来的是Hive项目实战系列的第二部分。 一 启动hive .1 启动hiveserver2服务 [bigdata@hadoop002 hive]$ bin/hiveserver2 2 启动beeline [bigdata@hadoop002 hive]$ bin/beeline Beeline version 1.2.1 by Apache Hive beeline> 3 连接hiveserver2 beeline> !connect jdbc:hive2://hadoop002
CDH平台中的安全,认证(Kerberos/LDAP)是第一步,授权(Sentry)是第二步。如果要启用授权,必须先启用认证。但在CDH平台中给出了一种测试模式,即不启用认证而只启用Sentry授权。但强烈不建议在生产系统中这样使用,因为如果没有用户认证,授权没有任何意义形同虚设,用户可以随意使用任何超级用户登录HiveServer2或者Impala,并不会做密码校验。注:本文档仅适用于测试环境。
最近热心网友推荐了很多Hadoop平台的SQL客户端工具,Fayson在前面的文章《0459-如何使用SQuirreL通过JDBC连接CDH的Hive(方式一)》、《0463-如何使用SQuirreL通过JDBC连接CDH的Hive(方式二)》和《0465-如何使用SQuirreL访问Kerberos环境下的Hive》,简单的介绍了SQuirreL SQL Client的安装、注册Hive Driver以及使用。本篇文章Fayson主要介绍另外一款工具DBeaver的安装及使用。
在大数据领域,Hive作为一种数据仓库解决方案,为用户提供了一种SQL接口来查询和分析存储在Hadoop集群中的数据。为了更灵活地与Hive进行交互,我们可以使用Hive JDBC(Java Database Connectivity)驱动程序。本文将深入探讨Hive JDBC的使用,为读者提供在大数据环境中进行数据交互的技术指导。
大数据的生态包含各种各样的组件,hive是其中之一,hive主要是作为数据仓库的工具,简化相关人员的代码工作,只要编写简单的SQL就可以实现mapreduce效果。
在之前的文章中,Fayson 在《CDH6.3的新功能》 中提到Impala 的 Automatic Invalidate/Refresh Metadata 新功能,本文主要介绍如何配置Impala基于事件自动同步HMS元数据。
延续数据仓库之Hive快速入门 - 离线&实时数仓架构一文,本文将介绍一下Hadoop/Hive自带的权限控制,权限控制是大数据平台非常重要的一部分,关乎数据安全。
本文介绍了Apache Zeppelin中Hive解释器的弃用和JDBC解释器的引入,并提供了相关的配置方法和依赖信息。同时,还提供了一个示例来展示如何使用JDBC解释器连接Hive数据库。
如果您有本地集群,则需要知道如何为 Hive Metastore (HMS) 设置后端数据库。设置包括安装受支持的数据库、配置属性、指定 Metastore 位置。您还可以配置可选的连接参数。
如今的企业内部一般都有多个系统用于数据存储和数据处理。这些不同的系统各自服务于不同的应用场景或案例。除了传统的RDBMS如Oracle DB,Teradata或PostgreSQL之外,团队可能还使用了Apache Kafka用作流式处理,使用Apache Druid来保存时序数据,使用Apache Phoenix进行快速索引查找。此外,他们可能还使用了云存储服务或HDFS来批量存储数据。
如果想通过 JDBC 来访问 HiveServer2,需要开启 HiveServer2 服务,具体请参阅 如何启动HiveServer2。
在前面Fayson的文章《Hadoop SQL客户端工具之Dbeaver安装及使用》介绍了DBeaver的安装以及访问非Kerberos环境下的Hive。本篇文章Fayson主要介绍如何使用DBeaver访问Kerberos环境下的Hive。
该文介绍了如何使用HiveServer2将HiveServer作为服务供其他程序连接,包括如何安装配置HiveServer2,如何创建和删除数据库,如何创建和删除表,如何插入数据,并提供了示例。同时介绍了如何连接到HiveServer2,包括使用JDBC和Thrift连接,以及连接时需要注意的问题。
Hive的元数据默认使用derby作为存储DB,derby作为轻量级的DB,在开发、测试过程中使用比较方便,但是在实际的生产环境中,还需要考虑易用性、容灾、稳定性以及各种监控、运维工具等,这些都是derby缺乏的。
sqoop job --meta-connect jdbc:hsqldb:hsql://ip:port/sqoop --list
文章作者:foochane 原文链接:https://foochane.cn/article/2019062501.html
$ beeline -u "jdbc:hive2://hostname.domain.cn:10000/default;principal=hive/_HOST@domain.com;" Connecting to jdbc:hive2://hostname.domain.cn:10000/default;principal=hive/_HOST@domain.com; Connected to: Apache Hive (version release-1.2.1-EDH-1.1.2) Driver: Hive JDBC (version release-1.2.1-EDH-1.1.2) Transaction isolation: TRANSACTION_REPEATABLE_READ Beeline version release-1.2.1-EDH-1.1.2 by Apache Hive 0: jdbc:hive2://hostname.domain.cn:10000> show databases;
/extwarehouse/student_hive数据目录不存,在创建外部表时自动生成,且数据目录属主为hive。
我们在启动hiveserver2服务以后,会发现光标静止不动,这不是执行完了的标志,是等待在等待,我们可以通过下图看出来:
Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,是一个可以对Hadoop中的大规模存储的数据进行查询和分析存储的组件,Hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行,使用成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析。
MetaSore 是 Hive 元数据存储的地方。Hive 数据库、表、函数等的定义都存储在 Metastore 中。根据系统配置方式,统计信息和授权记录也可以存储在此处。Hive 或者其他执行引擎在运行时使用此数据来确定如何解析,授权以及有效执行用户查询。
SQuirreL SQL Client是一个使用Java写的访问各种数据库客户端工具,使用JDBC统一了数据库的访问接口,通过SQuirreL SQL Client提供的统一用户界面操作任何支持JDBC访问的数据库。本篇文章Fayson主要介绍使用SQuirreL工具访问CDH集群中Hive。
Fayson在前面的文章也介绍了几款SQL客户端工具用来访问CDH集群的Hive和Impala,本篇文章Fayson再介绍一款Oracle的SQL客户端工具SQL Developer,使用该工具访问Kerberos环境下的Hive。
3 复制hive-default.xml.template,得到一份hive-site.xml
同样,这部也属于收藏夹吃灰系列。看在写了辣么多字儿,险些把PP坐出ZC的份儿上,各位看官来个三连呗!
wget http://mirrors.hust.edu.cn/apache/hive/hive-0.12.0/hive-0.12.0.tar.gz
Sqoop 的lib中缺少Hive 的jar包,从Hive 中找的缺少的jar包到Sqoop中即可
SparkSQL模块从Hive框架衍生发展而来,所以Hive提供的所有功能(数据分析交互式方式)都支持,文档:http://spark.apache.org/docs/2.4.5/sql-distributed-sql-engine.html。
Doris支持多源数据目录(Multi-Catalog)功能,旨在能够更方便对接外部数据目录,以增强Doris的数据湖分析和联邦数据查询能力。Multi-Catalog 功能在原有的元数据层级上,新增一层Catalog,构成 Catalog -> Database -> Table 的三层元数据层级。其中,Catalog 可以直接对应到外部数据目录。目前支持的外部数据目录包括:Apache Hive, Apache Iceberg 以及标准的JDBC接口(如MySQL)等
Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
首先需要准备好Java运行环境和Hadoop环境,Hadoop搭建可以参考如下文章:
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github: https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 前面Fayson介绍了《如何在CDH中启用Spark Thrift》和《如何在Kerberos环境下的CDH集群部署Spark1.6 Thrift及spark-sql客户端》,本篇文章Fayson主要介绍如何使用Java JDBC连接非Kerberos和Kerberos环境下Sp
作为管理员,您需要了解运行 Hive 查询的 Hive 默认授权是不安全的,以及您需要做什么来保护您的数据。您需要了解您的安全选项:设置 Ranger 或基于存储的授权 (SBA),它基于模拟和 HDFS 访问控制列表 (ACL),或这些方法的组合。
本文档主要讲述如何在启用Kerberos的CDH集群中安装配置及使用Sentry。
本文节选自《Netkiller Java 手札》 摘要: spring boot 1.5.6 + hive 2.3.0 + hadoop 2.5.0 + hbase 1.3.1 5.29. Spring boot with Apache Hive 5.29.1. Maven <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </
spark SQL经常需要访问Hive metastore,Spark SQL可以通过Hive metastore获取Hive表的元数据。从Spark 1.4.0开始,Spark SQL只需简单的配置,就支持各版本Hive metastore的访问。注意,涉及到metastore时Spar SQL忽略了Hive的版本。Spark SQL内部将Hive反编译至Hive 1.2.1版本,Spark SQL的内部操作(serdes, UDFs, UDAFs, etc)都调用Hive 1.2.1版本的class。
HIVE的UDF以及JDBC编程 一、UDF UDF是用来对HIVE函数库进行扩展的,可以利用java代码进行自定义的功能需求。 1、步骤 1.新建java工程。 2.导入HIVE相关包,jar包在HIVE安装程序的lib目录下,只需要拷贝jar包即可。 3.创建类继承UDF类。 4.自己编写一个名为evaluate方法,返回值和参数任意,但是方法名字必须是evluate。 为了能让mapreduce处理,String要用Text处理。 5.将写好的类
1. 数据准备 1 # 本地数据准备 2 [yun@mini01 hive]$ pwd 3 /app/software/hive 4 [yun@mini01 hive]$ ll /app/software/hive/t_access_times.dat 5 -rw-rw-r-- 1 yun yun 153 Jul 17 16:15 /app/software/hive/t_access_times.dat 6 [yun@mini01 hive]$ cat /app/software/hive/
Metastore HA解决方案被设计用来处理metastore服务故障。当一个部署的metastore宕机时,metastore服务可能持续相当长的时间不可用,直到服务被重新拉起。为了避免这种服务中断情况,需要部署Hive Metastore HA模式。Cloudera建议Metastore的每个实例在单独的集群主机上运行,突出高可用作用
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
该文介绍了如何使用HiveServer2和HiveServer1来连接Hive数据库。其中,HiveServer2是Hive 2.0版本后引入的,提供了多租户支持、认证和授权、以及基于Zookeeper的动态服务发现机制。而HiveServer1是Hive 1.x版本中的Server组件,使用Java编写的Thrift API来提供Hive功能。在配置HiveServer2时,需要配置HiveServer2的地址、端口、Thrift协议、以及Zookeeper集群的信息。通过HiveServer2,可以实现多租户、资源隔离、访问控制、日志审计等功能。在安全性方面,HiveServer2提供了用户、角色、数据库和表级别的访问控制,并且支持SSL/TLS和Kerberos安全协议。在性能方面,HiveServer2采用了分桶表和列存存储,可以大幅提高查询性能。此外,HiveServer2还支持通过插件来扩展功能,例如支持自定义函数、存储格式、数据类型等。总之,HiveServer2提供了更加安全、高效、易用的数据库服务,适用于各种规模的企业应用。
领取专属 10元无门槛券
手把手带您无忧上云