doris通过外部表同步数据

一、doris 1.2.5版本支持

参考:https://pn7oj6yotr.feishu.cn/docx/CUfldzlYqo8nyDxHyrzc1fZGnVg 4.4小节

Doris 可以创建外部表。创建完成后,可以通过 SELECT 语句直接查询外部表的数据,也可以通过 INSERT INTO SELECT 的方式导入外部表的数据。

Doris 外部表目前支持的数据源包括:MySQL,Oracle,Hive,PostgreSQL,SQLServer,Iceberg,ElasticSearch

4.4.1 整体语法

复制代码
CREATE [EXTERNAL] TABLE table_name ( 
 col_name col_type [NULL | NOT NULL] [COMMENT "comment"] 
) ENGINE=HIVE
[COMMENT "comment"] 
PROPERTIES ( 
-- 我要映射的hive表在哪个库里面
-- 映射的表名是哪一张
-- hive的元数据服务地址
 'property_name'='property_value', 
 ... 
); 
复制代码

4.4.2 使用示例

完成在 Doris 中建立 Hive 外表后,除了无法使用 Doris 中的数据模型(rollup、预聚合、物化视图等)外,与普通的 Doris OLAP 表并无区别

在Hive 中创建一个测试用表:

复制代码
CREATE TABLE `hive_doris` ( 
 `id` int, 
 `name` string, 
 `age` int
) stored as orc;

insert into doris_table values (1,'zss',18);
insert into doris_table values (2,'lss',20);
insert into doris_table values (3,'ww',25);

Doris 中创建外部表

复制代码
CREATE EXTERNAL TABLE `hive_user_info` ( 
 `id` int, 
 `name` varchar(10), 
 `age` int 
) ENGINE=HIVE 
PROPERTIES ( 
'hive.metastore.uris' = 'thrift://linux01:9083', 
'database' = 'test', 
'table' = 'hive_doris' 
);
  • 直接 查询 外部

外部表创建好后,就可以直接在doris中对这个外部表进行查询了

直接查询外部表,无法利用到doris自身的各种查询优化机制!

复制代码
select * from hive_user_info;
复制代码
  • 将数据从外部表导入内部表
复制代码

数据从外部表导入内部表后,就可以利用doris自身的查询优势了!

假设要导入的目标内部表为: doris_user_info (需要提前创建好哦!!)

复制代码
复制代码
CREATE TABLE IF NOT EXISTS doris_user_info
(
    id INT,
    name VARCHAR(50),
    age TINYINT
)
unique key(id)
DISTRIBUTED BY HASH(id) BUCKETS 3;

-- 就是用sql查询,从外部表中select出数据后,insert到内部表即可
insert into doris_user_info
select
 *
from hive_user_info;
复制代码

注意:

Hive 表 Schema 变更不会自动同步,需要在 Doris 中重建 Hive 外表。

当前 Hive 的存储格式仅支持 Text,Parquet 和 ORC 类型

二、doris 2.1.7 不支持hive外部表

调研过程:

1、使用agc用户,进入hive , use default;建表,插入数据

复制代码
  2、doris中创建外部表
相关推荐
大厂技术总监下海15 分钟前
用户行为分析怎么做?ClickHouse + 嵌套数据结构,轻松处理复杂事件
大数据·数据结构·数据库
大厂技术总监下海20 分钟前
大数据生态的“主动脉”:RocketMQ 如何无缝桥接 Flink、Spark 与业务系统?
大数据·开源·rocketmq
2501_9336707928 分钟前
2026年中专大数据专业可考取的证书
大数据
oMcLin41 分钟前
如何在Ubuntu 22.04 LTS上优化PostgreSQL 14集群,提升大数据查询的响应速度与稳定性?
大数据·ubuntu·postgresql
信创天地1 小时前
核心系统去 “O” 攻坚:信创数据库迁移的双轨运行与数据一致性保障方案
java·大数据·数据库·金融·架构·政务
zhyf1191 小时前
Max395(ubuntu24.04)AMD显卡GLM-4.7-UD-IQ1-M量化模型部署手册
大数据·elasticsearch·搜索引擎
小北方城市网1 小时前
微服务接口设计实战指南:高可用、易维护的接口设计原则与规范
java·大数据·运维·python·微服务·fastapi·数据库架构
武子康2 小时前
大数据-210 如何在Scikit-Learn中实现逻辑回归及正则化详解(L1与L2)
大数据·后端·机器学习
xiaobaishuoAI2 小时前
全链路性能优化实战指南:从瓶颈定位到极致优化
大数据·人工智能·科技·百度·geo
乾元2 小时前
如何把 CCIE / HCIE 的实验案例改造成 AI 驱动的工程项目——从“实验室能力”到“可交付系统”的完整迁移路径
大数据·运维·网络·人工智能·深度学习·安全·机器学习