【生态对接】Tableau工具对接DLI
1、部署方案
本文旨在根据Tableau+ZooKeeper+Kyuubi实现Kyuubi高可用方案(基础方案,其他特殊需求如鉴权等需定制开发)
2、准备环境
Kyuubi部署Linux节点 |
X86 欧拉SP10(备注:此处使用Kyuubi支持的操作系统即可) |
Tableau部署环境 |
Windows Server 2022标准版64位(备注:此处使用Tableau支持的Windows版本即可) |
JDK版本 |
1.8.0_332 |
Kyuubi版本 |
1.7.0 |
Zookeeper版本 |
3.6.3 |
Tableau版本 |
2023.3(20233.23.1017.0948) |
3、部署Kyuubi服务
1.Kyuubi包 |
https://kyuubi.apache.org/zh/ |
2.使用root用户将Kyuubi安装包上传至要部署kyuubi服务的/opt目录下,并解压缩 |
tar -zxf apache-kyuubi-1.7.0-bin.tar.gz
|
3.设置Java环境变量 |
修改kyuubi服务kyuubi-env.sh文件,添加JAVA_HOME环境变量如下: vim /opt/apache-kyuubi-1.7.0-bin/conf/kyuubi-env.sh export JAVA_HOME=/opt/Bigdata/common/runtime0/jdk1.8.0_332/
|
4.设置Kyuubi、ZooKeeper、DLI配置信息 |
/opt/apache-kyuubi-1.7.0-bin/conf/kyuubi-defaults.conf |
5.启动服务 |
启动kyuubi:sh /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi start 停止kyuubi:sh /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi stop 重启kyuubi:sh /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi restart 查询kyuubi状态:sh /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi status
|
6.其他节点部署 |
重复上述步骤 |
7.查看Kyuubi是否注册成功 |
1.登录MRS 主oms节点,切换omm用户 2.执行如下命令切换到客户端安装目录,并且登录zk客户端。 3.切换客户端安装目录: cd $BIGDATA_HOME/client/ 4.登录zk客户端: source bigdata_env sh $BIGDATA_HOME/client/ZooKeeper/zookeeper/bin/zkCli.sh -server ${ ZooKeeper角色实例所在节点业务IP }: ${ clientPort } 5. 执行 ls /kyuubi 命令查看注册在zk上的kyuubi实例信息 |
4. tableau添加hive JDBC驱动包
1.hive JDBC驱动包 |
2. 将hive JDBC驱动包拷贝至C:\Program Files\Tableau\Drivers目录下 |
5. Tableau连接Kyuubi服务
打开Tableau, 选择Other Databases配置JDBC数据源 备注: 多活填写说明如下 URL:jdbc:hive2://{zk1_ip}:{zk1_port},{zk2_ip}:{zk2_port},{zk3_ip}:{zk3_port}/dliProd;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=dliiProd Dialect:SQL92 填好之后点击Sign in按钮登录Tableau
|
6.常见问题
问题1 |
解决方案 |
提取数据sql,查看kyuubi日志,经过tableau包装出现了中文字符“自定义 SQL 查询”引发语法报错 |
需要修改数据源,自定义sql查询,为英文名称 |
问题2 |
解决方案 |
Dli突然无法连接,内存溢出 |
配置kyuubi配置文件增加GC的配置,增加内存 |
问题3 |
解决方案 |
测试环境,生产环境mrs隔离 |
测试/生产环境通过namespace进行隔离,在配置文件中配置,同事连接的url需要根据环境修改: 查看zk中的注册情况 1.切换客户端安装目录: cd $BIGDATA_HOME/client/ 2.登录zk客户端: source bigdata_env sh $BIGDATA_HOME/client/ZooKeeper/zookeeper/bin/zkCli.sh -server ${ ZooKeeper角色实例所在节点业务IP }: ${ clientPort } 3. 执行 ls /namespace 命令查看注册在zk上的kyuubi实例信息 |
|
问题4 |
解决方案 |
字段注释带数字,导致语法无法解析 |
自定义sql修改带数字的sql,需要客户侧配合修改报表对应sql,本次上线工作簿不涉及,测试环境验证 |
Tableau会对业务自定义sql进行包装,此问题会导致dli执行失败 |
问题5 |
解决方案 |
自定义SQL带日期过滤条件筛选失败 |
是jdbc拼接的sql有误,实时拉取报表有问题,目前阿里实时也有问题,所以未修改,统一使用数据提取的方式问题可解决 |
|
问题6 |
解决方案 |
Tableau报表切换数据源后,有些字段索引失效,有红叹号 |
点击字段,选择替换索引,重新建立索引 |
|
- 点赞
- 收藏
- 关注作者
评论(0)