最新历史版本 :配置Hadoop Hive数据源 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

FineDataLink 版本
功能变动
4.0.4.2-
4.0.29新建数据连接时,Hadoop Hive (HDFS) Hadoop Hive数据源,合并为Hadoop Hive
4.1.3

数据写入 Hive 数据库时,支持创建、写入分区

4.1.13.2
  • 「HDFS设置」支持配置高可用 HDFS 地址和 HDFS 用

  • 支持写入 Hive 压缩表

1.2 应用场景

Hadoop 是个很流行的分布式计算解决方案,Hive 是建立在 Hadoop 上的数据仓库基础构架。

FineDataLink 支持连接 Hadoop Hive ,进行定时任务读写

2. 使用须知编辑

1)4.0.29 之前版本,建议使用 Hadoop Hive 数据连接读取数据库数据,详情请参见:历史版本;为保证写入性能,建议使用 Hadoop Hive (HDFS) 数据连接。

2)4.0.29 及之后版本,若只是读取 Hadoop Hive 数据库数据,新建数据连接时,无需配置「HDFS 设置」;若需要写入数据到 Hadoop Hive 数据库,需要配置「HDFS 设置」。详情请参见本文第四章内容。

3. 准备工作编辑

3.1 前提条件

详情请参见:前提条件

3.2 版本和驱动

下载驱动,并将其上传至 FineDataLink,如何上传可参见:驱动管理 2.1 节。

支持的数据库版本驱动包下载 日志jar下载
hive_1.1

Hive1.1.zip

日志jar.rar

在上传驱动包时,需要解压「日志jar」文件和驱动一起上传至 FineDataLink

Hadoop_Hive_1.2;hive2.3;hive2.1.2;hive2.1.1;hive3.3.1

Hadoop Hive.rar 

3.3 收集连接信息

在连接数据库之前,请收集以下信息:

  • 数据库所在服务器的 IP 地址和端口号。

  • 数据库的名称。

  • 若是用户名密码认证,需要收集用户名和密码;若是 Kerberos 认证,需要收集客户端 principal 和 keytab 密钥路径。

  • HDFS 文件系统地址(IP 地址和端口号)(若只是读取 Hadoop Hive 数据库中的数据,无需准备该信息;若需要向Hadoop Hive 数据库中写入数据,为保证写入性能,需要准备该信息)。注:同时需要保证 FineDataLink 所在服务器能访问 HDFS 文件系统端口,例如 HDFS 文件系统默认端口为 8020,且服务器开启了防火墙,则需要参考下文开放 8020 端口。

Windows 系统开放端口步骤请参见:Windows服务器设置出入站规则 

Linux 系统开放端口步骤请参见:Linux防火墙使用及配置

  • 若需要写入 Hive 压缩表,4.1.13.2 及之后的版本可以配置数据连接 URL,示例为:jdbc:hive2://192.168.101.119:10000/hive?hive.exec.compress.output=true;mapred.output.compression.codec=com.hadoop.compression.lzo.LzopCodec;hive.stats.autogather=false

4. 具体连接步骤编辑

1)管理员登录 FDL 工程,点击「管理系统>数据连接>数据连接管理」,选中某个文件夹后,新建数据连接。如下图所示:

11.png

2)设置数据连接名称(可同时修改数据连接所在目录)。如下图所示:

1729135606504802.png

3)可根据数据源分类、支持形式、适配模块、数据源名称筛选数据库。如下图所示:

13.png

4)切换驱动为「自定义」选择 3.2 节上传的驱动,并输入 3.3 节收集的连接信息。如下图所示:

1729146257546309.png

设置项介绍如下表所示:

设置项
说明
认证方式

认证方式可选择两种:用户名密码、Kerberos

Kerberos 认证方式详情可参见:数据连接 Kerberos 认证

使用 Kerberos 认证需要注意以下事项:

  • 连接前请检查 /etc/hosts 中的机器名对应 IP 是否为局域网 IP

  • 检查 /etc/hostname 中机器名设置和 /etc/hosts 中是否配置一致

  • 检查 FineDataLink 所在机器 hosts 配置的 IP+ 机器名是否正确

  • 本地连接时需要配置 /etc/hosts 文件,添加远端映射:IP+机器名,例如:192.168.5.206  centos-phoenix

HDFS 设置

1)若只是读取 Hadoop Hive 数据库中的数据,无需配置该设置项

2)若需要向 Hadoop Hive 数据库中写入数据,为保证写入性能,需要配置该设置项

为 Hadoop HDFS文件系统处于活跃状态的节点地址

格式为 "hdfs://ip:port"。

例如:hdfs://192.168.101.119:8020

确定 HDFS 地址中 IP 和端口的方法请参见:确认HDFS地址中的IP和端口

4.1.13.2 以及之后的版本支持填写多个地址,多个地址用逗号隔开,例如:hdfs://ip1:port1,hdfs://ip2:port2,hdfs://ip3:port3

HDFS 用户名当Hive的认证方式选择「用户名密码」时:
  • 支持配置 HDFS 用户,填写后,使用配置的用户名作为连接 HDFS 的用户

  • 如果留空,默认使用启动 Tomcat 时的服务器用户,连接 HDFS 进行读写

5)点击「测试连接」,若连接成功则「保存」该连接。如下图所示:

19.png

5. 使用数据源编辑

可以在数据同步数据转换中使用数据源进行数据读取和写入。

4.1.3 及之后版本,数据写入 Hive 数据库时,支持创建、写入分区表。详情请参见:读取、创建、写入分区表