starrocks创建mysql外部表

一.starrocks为什么需要需要建立mysql外部表

StarRocks 支持以外部表 (External Table) 的形式,接入其他数据源。外部表指的是保存在其他数据源中的数据表,而 StartRocks 只保存表对应的元数据,并直接向外部表所在数据源发起查询。目前 StarRocks 已支持的第三方数据源包括 MySQL、StarRocks、Elasticsearch、Apache Hive™、Apache Iceberg 和 Apache Hudi。对于 StarRocks 数据源,现阶段只支持 Insert 写入,不支持读取,对于其他数据源,现阶段只支持读取,还不支持写入 。

星型模型中,数据一般划分为维度表 (dimension table) 和事实表 (fact table)。维度表数据量少,但会涉及 UPDATE 操作。目前 StarRocks 中还不直接支持 UPDATE 操作(可以通过 Unique/Primary 数据模型实现),在一些场景下,可以把维度表存储在 MySQL 中,查询时直接读取维度表。

在使用 MySQL 的数据之前,需在 StarRocks 创建外部表 (CREATE EXTERNAL TABLE),与之相映射。StarRocks 中创建 MySQL 外部表时需要指定 MySQL 的相关连接信息,如下所示。

二.如何实现mysql外部表

2.1.mysql创建表aaa

sql 复制代码
CREATE TABLE `aaa` (
 `id` bigint NOT NULL AUTO_INCREMENT,
 `province` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0',
 `city` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0' COMMENT 'ssss',
 `area` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0' COMMENT 's2sss',
 `remark` int NOT NULL DEFAULT '0' COMMENT '备注信息',
 `pid` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0' COMMENT '备注信息',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb3

2.2.starrock创建外表

less 复制代码
CREATE EXTERNAL TABLE mysql_external_table_aaa
(
 `id` bigint NOT NULL AUTO_INCREMENT,
 `province` varchar(100) ,
 `city` varchar(100) ,
 `area` varchar(200),
 `remark` int ,
 `pid` varchar(200) 
)
ENGINE=mysql
PROPERTIES
(
 "host" = "172.1xx.x.x",
 "port" = "3306",
 "user" = "root",
 "password" = "root",
 "database" = "test",
 "table" = "t_user"
);

2.3.测试

csharp 复制代码
select * from mysql_external_table_aaa

结果

相关推荐
一条小小yu7 小时前
Spring IoC的理解
java·后端·spring
茉莉玫瑰花茶8 小时前
GO [ 方法 ]
开发语言·后端·golang
Wx-bishekaifayuan8 小时前
django个性化旅游路线推荐平台49005-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Qyr998 小时前
2026-2032直接芯片液冷板市场爆发式增长:AI算力浪潮下的热管理核心赛道
大数据·人工智能
蓝色的风-20268 小时前
国产算力双雄对决:曙光8000十万卡集群 vs 华为昇腾950超节点深度解析
大数据·人工智能·自然语言处理
Eric_见嘉8 小时前
在职前端 Skill 和 MCP 分享
前端·后端·agent
泛联新安9 小时前
软件定义汽车时代,如何让AI研发“可信”?——泛联新安构建汽车企业级可信AI体系的落地路径
大数据·人工智能·安全·网络安全·汽车·漏洞挖掘·代码安全
杨云龙UP9 小时前
TDengine 3.4.2.8 Community 三节点三副本生产集群部署实战(DNode/MNode/taosAdapter/Explorer)
大数据·linux·运维·数据库·tdengine·时序库
孟健10 小时前
出海开发者资金合规:从港卡结汇到完税申报实操
后端·架构
乌暮10 小时前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习