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 |
|
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 | 在上传驱动包时,需要解压「日志jar」文件和驱动一起上传至 FineDataLink | |
Hadoop_Hive_1.2;hive2.3;hive2.1.2;hive2.1.1;hive3.3.1 |
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 工程,点击「管理系统>数据连接>数据连接管理」,选中某个文件夹后,新建数据连接。如下图所示:
2)设置数据连接名称(可同时修改数据连接所在目录)。如下图所示:
3)可根据数据源分类、支持形式、适配模块、数据源名称筛选数据库。如下图所示:
4)切换驱动为「自定义」选择 3.2 节上传的驱动,并输入 3.3 节收集的连接信息。如下图所示:
设置项介绍如下表所示:
设置项 | 说明 |
---|---|
认证方式 | 认证方式可选择两种:用户名密码、Kerberos Kerberos 认证方式详情可参见:数据连接 Kerberos 认证 使用 Kerberos 认证需要注意以下事项:
|
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的认证方式选择「用户名密码」时:
|
5)点击「测试连接」,若连接成功则「保存」该连接。如下图所示: