Doris配置外表以及多个Hive外表的配置

1.场景分析

以Clickhouse、Doris、Starrocks等为代表的mpp分析数据库正在快速的兴起,以其高效查询、跨库整合能力收到广大技术人员的喜爱。本文主要浅显介绍下作者在使用Doris时,通过建立catlog进行跨库查询。

废话不多少,直接上代码

2.相关配置

sql 复制代码
#Tidb外表,jdbc方式连接,如果没有服务器权限可以直接在driver_url上填写jar包的maven地址
#如果报connect timeout,建议直接找运维将jar包手动放在服务器本地
CREATE CATALOG TiDB_catalog PROPERTIES (
    "type"="jdbc",
    "user"="xxxx",
    "password"="xxx",
    "jdbc_url" = "jdbc:mysql://xxx:4000",
    "driver_url" = "https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.28/mysql-connector-java-8.0.28.jar",
    "driver_class" = "com.mysql.cj.jdbc.Driver"
);
#mysql外表,jdbc方式连接,如果有服务器权限包的maven地址
#需将 Jar 包预先存放在 FE 和 BE 部署目录的 jdbc_drivers/ 目录下。系统会自动在这个目录下寻找。该目录的位置,也可以由 fe.conf 和 be.conf 中的 jdbc_drivers_dir 配置修改。
#本地绝对路径。如 file:///path/to/mysql-connector-java-5.1.47.jar。需将 Jar 包预先存放在所有 FE/BE 节点指定的路径下。
CREATE CATALOG mysql_catalog PROPERTIES (
    "type"="jdbc",
    "user"="xxx",
    "password"="xxx",
    "jdbc_url" = "jdbc:mysql://xxxx:3306",
    "driver_url" = "mysql-connector-java-8.0.28.jar",
    "driver_class" = "com.mysql.cj.jdbc.Driver"
);
#psql外表,jdbc方式连接,如果没有服务器权限可以直接在driver_url上填写jar包的maven地址
CREATE CATALOG postgresql_catalog PROPERTIES (
    "type"="jdbc",
    "user"="xxx",
    "password"="xxx",
    "jdbc_url" = "jdbc:postgresql://xxxx:5432/xxxx",
    "driver_url" = "https://repo1.maven.org/maven2/org/postgresql/postgresql/42.5.1/postgresql-42.5.1.jar",
    "driver_class" = "org.postgresql.Driver"
);
#hive外表,不用再复制配置文件到相应的问题,当然自己手动xml配置文件到指定位置也可
CREATE CATALOG hive_old PROPERTIES (
    'type'='hms',
    'hive.metastore.uris' = 'thrift://xxx:9083,thrift://xxx:9083',
    'hadoop.username' = 'hadoop',
    'dfs.nameservices'='xxx',
    'dfs.ha.namenodes.mycluster'='nn1,nn2',
    'dfs.namenode.http-address.mycluster.nn1'='xxx:9870',
    'dfs.namenode.http-address.mycluster.nn2'='xxx:9870',
    'dfs.namenode.rpc-address.mycluster.nn1'='xxx:8020',
    'dfs.namenode.rpc-address.mycluster.nn2'='xxx:8020',
    'dfs.client.failover.proxy.provider.mycluster'='org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider',
    'fs.defaultF'='hdfs://xxx',
    'ha.zookeeper.quorum'='xxx:2181,xxx:2181,xxx:2181',
    'javax.jdo.option.ConnectionURL'='jdbc:mysql://xxx:3306/metastore?useSSL=false&createDatabaseIfNotExist=true&characterEncoding=UTF-8',
    'javax.jdo.option.ConnectionDriverName'='com.mysql.jdbc.Driver',
    'javax.jdo.option.ConnectionUserName'='xxx',
    'javax.jdo.option.ConnectionPassword'='xxxx',
    'hive.metastore.warehouse.dir'='/user/hive/warehouse',
    'hive.server2.thrift.bind.host'='xxx',
    'hive.server2.zookeeper.namespace'='hiveserver2_zk',
    'hive.zookeeper.quorum'='xxxx:2181,xxx:2181,xxxx:2181',
    'hive.zookeeper.client.port'='2181'
);

3.注意事项

腾讯的TCHouse-D (腾讯改版doris)已经配置了jar包,无需自己手动配置

腾讯官网介绍:https://cloud.tencent.com/document/product/1387/100593

Doris官网介绍:https://doris.apache.org/zh-CN/docs/1.2/lakehouse/external-table/jdbc

相关推荐
2401_cf1 小时前
为什么hadoop不用Java的序列化?
java·hadoop·eclipse
学地理的小胖砸5 小时前
【Python 操作 MySQL 数据库】
数据库·python·mysql
数据库幼崽5 小时前
MySQL 8.0 OCP 1Z0-908 121-130题
数据库·mysql·ocp
betazhou6 小时前
基于Linux环境实现Oracle goldengate远程抽取MySQL同步数据到MySQL
linux·数据库·mysql·oracle·ogg
喝醉的小喵8 小时前
【mysql】并发 Insert 的死锁问题 第二弹
数据库·后端·mysql·死锁
付出不多8 小时前
Linux——mysql主从复制与读写分离
数据库·mysql
钊兵8 小时前
hivesql是什么数据库?
大数据·hive
RestCloud9 小时前
产品更新丨谷云科技 iPaaS 集成平台 V7.5 版本发布
数据仓库·系统安全·api·数字化转型·ipaas·数据集成平台·集成平台
源远流长jerry9 小时前
MySQL的缓存策略
数据库·mysql·缓存
RestCloud9 小时前
数据清洗(ETL/ELT)原理与工具选择指南:企业数字化转型的核心引擎
数据仓库·数据安全·etl·数据集成·elt·集成平台