【生态对接】Tableau工具对接DLI

举报
yd_256036135 发表于 2024/03/19 17:25:57 2024/03/19
【摘要】 由于Tableau已经与阿里MaxCompute的jdbc做了生态对接,但是tableau生态是不支持dli jdbc的,所以我们需要做生态适配,本文通过Apache kyuubi来拉通dli与tableau之间的链接

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.设置KyuubiZooKeeperDLI配置信息

/opt/apache-kyuubi-1.7.0-bin/conf/kyuubi-defaults.conf

5.启动服务

启动kyuubish /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi start

停止kyuubish /opt/apache-kyuubi-1.7.0-bin/bin/kyuubi stop

重启kyuubish /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

DialectSQL92

填好之后点击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报表切换数据源后,有些字段索引失效,有红叹号

点击字段,选择替换索引,重新建立索引



【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。