doris:阿里云 MaxCompute

MaxCompute 是阿里云上的企业级 SaaS(Software as a Service)模式云数据仓库。

什么是 MaxCompute

连接 MaxCompute​

示例​

复制代码
-- 1. 创建Catalog。
CREATE CATALOG mc PROPERTIES (
  "type" = "max_compute",
  "mc.default.project" = "xxx",
  "mc.access_key" = "xxxx",
  "mc.secret_key" = "xxx",
  "mc.endpoint" = "http://service.cn-beijing-vpc.MaxCompute.aliyun-inc.com/api"
);

-- 2. 切换到新创建的Catalog下。
SWITCH mc;

-- 下面的步骤就和使用Mysql一样了。

-- 3. 查看该Catalog下所有的数据库。
SHOW DATABASES;

-- 4. 使用数据库, 这里的xxx为第三步展示出来结果的任意一个数据库。
USE xxx;

-- 5. 查看该数据库下所有的表。
SHOW TABLES;

-- 6. 进行SQL查询。
select * from tb  limit 10;

创建 Catalog 的基本属性​

参数 说明
type 固定为 max_compute.
mc.default.project 想要访问的 MaxCompute 项目名称。可以在 MaxCompute 项目列表 中创建和管理。
mc.access_key AccessKey。可以在 阿里云控制台 中创建和管理。
mc.secret_key SecretKey。可以在 阿里云控制台 中创建和管理。
mc.endpoint MaxCompute 开通的地域。请参照下文的如何获取Endpoint 和 Quota来配置。

创建 Catalog 的可选属性​

参数 默认值 说明
mc.quota pay-as-you-go Quota 名称。请参照下文的 如何获取Endpoint 和 Quota 来配置。
mc.split_strategy byte_size 设置 split 的划分方式,可设置为按照字节大小划分 byte_size 和按照数据行数划分 row_count
mc.split_byte_size 268435456 每个 split 读取的文件大小,单位为字节,默认为 256MB,当且仅当 "mc.split_strategy" = "byte_size" 时生效
mc.split_row_count 1048576 每个 split 读多少行,当且仅当 "mc.split_strategy" = "row_count" 时生效

列类型映射​

MaxCompute Doris 备注
TINYINT TINYINT
TINYINT TINYINT
SMALLINT SMALLINT
INT INT
BIGINT BIGINT
BINARY 不支持
FLOAT FLOAT
DOUBLE DOUBLE
DECIMAL(precision,scale) DECIMAL(precision,scale)
VARCHAR(n) VARCHAR(n)
CHAR(n) CHAR(n)
STRING STRING
DATE DATE
DATETIME DATETIME(3) 可以通过SET [global] time_zone = 'Asia/Shanghai'来指定时区
TIMESTAMP 不支持
TIMESTAMP_NTZ DATETIME(6) MaxCompute 的 TIMESTAMP_NTZ 精度为 9, Doris 的 DATETIME 最大精度只有 6,故读取数据时会将多的部分直接截断。
BOOLEAN BOOLEAN
ARRAY ARRAY
MAP MAP
STRUCT STRUCT
JSON 不支持

使用须知​

  1. 自 2.1.7 版本开始,MaxCompute Catalog 基于 开放存储 SDK 开发。
  2. 开放存储 SDK 的使用有一定的限制,请参照该 文档 中 使用限制 的章节。
  3. MaxCompute 中的 Project 相当于 Doris 中的 DataBase。

如何获取 Endpoint 和 Quota​

  1. 如果您使用数据传输服务独享资源组,请参照该 文档 中 使用独享数据服务资源组 章节中的 2.授权 来开启相应的权限,并在 配额(Quota)管理 列表中,查看并复制对应的 QuotaName,指定 "mc.quota" = "QuotaName"。此时您可以选择 VPC / 公网来访问 MaxCompute,但是走 VPC 的带宽有保障,公网带宽资源小。

  2. 如果您使用按量付费,请参照该 文档 中 使用开放存储(按量付费) 的章节,来开启开放存储 (Storage API) 开关,并给 Ak,SK 对应的用户赋予权限。此时您的 mc.quota 为默认值 pay-as-you-go,不需要额外指定该值。此时您只能使用 VPC 来访问 MaxCompute。

  3. 通过第 1/2 步,您已经知道该如何访问 MaxCompute,下面需要根据 阿里云 Endpoints 文档 中的 地域Endpoint对照表 来配置 mc.endpoint 。使用 VPC 访问的用户,需要根据 各地域Endpoint对照表(阿里云VPC网络连接方式) 表中的 VPC网络Endpoint 列来配置 mc.endpoint 。使用公网访问的用户,可以选择 各地域Endpoint对照表(阿里云经典网络连接方式) 表中的 经典网络Endpoint 列、或者选择 各地域Endpoint对照表(外网连接方式) 表中的 外网Endpoint 列来配置 mc.endpoint。

相关推荐
要开心吖ZSH11 天前
《通过SeaTunnel 把 MySQL 的数据搬进 Doris》番外篇:容量、切分与速度——Doris 能扛多少,比 MySQL 快多少
mysql·性能优化·doris·分区·分表·分桶
要开心吖ZSH11 天前
SeaTunnel + Doris + MySQL-CDC 数据同步故障排查个人笔记
数据库·mysql·doris·seatunnel·mysql cdc
俊哥大数据20 天前
基于 FlinkSQL + Paimon + Doris 的车联网流批一体湖仓实践 —— 第 1 章 业务背景与传统 Lambda 架构痛点
大数据·doris·湖仓一体·flinksql·paimon
俊哥大数据20 天前
基于 FlinkSQL + Paimon + Doris 的车联网流批一体湖仓实践 —— 第 2 章 流批一体湖仓总体架构与三条分区契约铁律
flink·doris·湖仓一体·paimon
俊哥大数据20 天前
基于 FlinkSQL + Paimon + Doris 的车联网流批一体湖仓实践 —— 第 4 章 Kafka 企标报文入湖(ODS 表设计)
flink·doris·湖仓一体·paimon·流批一体
俊哥大数据20 天前
基于 FlinkSQL + Paimon + Doris 的车联网流批一体湖仓实践 —— 第 3 章 Paimon 1.4 湖仓底座与 Catalog 配置
flink·doris·湖仓一体·paimon
EatFan1 个月前
从T+1到分钟级:湖仓一体在大厂的真实落地收益对照(携程/网易云信/腾讯)
starrocks·flink·硬件架构·doris·湖仓一体·paimon
制造数据与AI践行者老蒋1 个月前
智联工坊IoT 数据采集工程实战:2000 万条可复现设备数据生成(WorkBuddy 落地)
doris·制造业数字化·workbuddy·iot 数据采集·模拟数据生成·数据质量校验·dolphinschedul
hzp6662 个月前
doris学习6:参数调优
数据库·doris·参数·数据库调优
SelectDB技术团队2 个月前
Apache Doris 5.0 年度版本前瞻(一):构建统一的多模湖仓实时分析平台
大数据·doris·数据湖·湖仓一体·lakehouse·湖仓分析·多模分析