约束与限制
作业相关约束限制
- DLI支持的作业类型:Spark SQL、SparkJar、Flink SQL、Flink Jar
- DLI支持的Spark版本:Spark 3.3.1、Spark 3.1.1(EOM)、Spark 2.4.5(EOM)、Spark 2.3(EOS)
- DLI支持的Flink版本:Flink Jar 1.15、Flink 1.12(EOM)、Flink 1.10(EOS)、Flink 1.7(EOS)
- SQL作业支持Spark和HetuEngine两种引擎。
- Spark:显示执行引擎为“Spark”的作业。
- HetuEngine:显示执行引擎为“HetuEngine”的作业。
- DLI配置SparkUI只展示最新的100条作业信息。
- 控制台界面查询结果最多显示1000条作业结果数据,如果需要查看更多或者全量数据,则可以通过该功能将数据导出到OBS获取。
- 导出作业运行日志需要具有OBS桶的权限,请提前在“全局配置 > 工程配置”页面配置DLI作业桶。
- default队列下运行的作业或者该作业为同步作业时不支持归档日志操作。
- 仅Spark作业支持使用自定义镜像。了解自定义镜像。
- 当前弹性资源池最大的计算资源 32000CUs。
- 弹性资源池中可创建队列的最小CU:
- 通用队列:4CUs
- SQL队列:Spark SQL队列:8CUs;HetuEngine SQL队列:16CUs
DLI套餐包使用约束限制
- 套餐包购买后区域固定无法更换,购买的套餐只能在绑定的区域使用,不能在非绑定区域使用。
- 套餐包购买后不支持退订。
- 计费时优先使用套餐中的资源,套餐中资源使用完后,超出部分按需付费。
- 套餐包不支持抵扣已使用的资源。
- 套餐包到期后,按需资源不会自动关闭,将会以按需付费的方式继续使用。
- 存储套餐的额度每个小时会重置。其他类型套餐包额度按月重置。
队列使用约束限制
- DLI服务预置了名为“default”的队列供用户体验,资源的大小按需分配。运行作业时按照用户每个作业的数据扫描量(单位为“GB”)收取计算费用。
- 队列类型:
- SQL类型队列:SQL队列支持提交Spark SQL作业。
- 通用队列:支持Spark程序、Flink SQL、Flink Jar作业。
不支持队列类型切换,如需使用其他队列类型,请重新购买新的队列。
- 不支持切换队列的计费模式。
- 队列不支持切换区域。
- 16CUs队列不支持扩容和缩容。
- 64CUs队列不支持缩容。
- 创建队列时,仅支持包年包月队列和按需专属队列选择跨AZ双活,且跨AZ的队列价格为单AZ模式下的2倍。
- 新创建的队列需要运行作业后才可进行扩缩容。
- DLI队列不支持访问公网。
更多队列使用约束限制请参考队列使用约束限制。
弹性资源池使用约束限制
- 不支持切换弹性资源池的计费模式。
- 弹性资源池不支持切换区域。
- 按需计费的弹性资源池默认勾选专属资源模式,自创建起按自然小时收费。
- Flink 1.10及其以上版本的作业支持在弹性资源池运行。
- 弹性资源池网段设置后不支持更改。
- 弹性资源池关联队列:
- 仅支持关联按需计费模式的队列(包括专属队列)。
- 队列和弹性资源池状态正常,资源未被冻结。
- 当前仅支持包年包月计费模式的弹性资源池进行规格变更。
- 仅支持查看30天以内的弹性资源池扩缩容历史。
- 弹性资源池不支持访问公网。
- 弹性资源池CU设置、弹性资源池中添加/删除队列、修改弹性资源池中队列的扩缩容策略、系统自动触发弹性资源池扩缩容时都会引起弹性资源池CU的变化,部分情况下系统无法保证按计划扩容/缩容至目标CUs:
- 弹性资源池扩容时,可能会由于物理资源不足导致弹性资源池无法扩容到设定的目标大小。
- 弹性资源池缩容时,系统不保证将队列资源完全缩容到设定的目标大小。
在执行缩容任务时,系统会先检查资源使用情况,判断是否存在缩容空间,如果现有资源无法按照最小缩容步长执行缩容任务,则弹性资源池可能缩容不成功,或缩容一部分规格的情况。
因资源规格不同可能有不同的缩容步长,通常是16CUs、32CUs、48CUs、64CUs等。
示例:弹性资源池规格为192CUs,资源池中的队列执行作业占用了68CUs,计划缩容至64CUs。
执行缩容任务时,系统判断剩余124CUs,按64CUs的缩容步长执行缩容任务,剩余60CUs资源无法继续缩容,因此弹性资源池执行缩容任务后规格为128CUs。
更多弹性资源池约束限制请参考弹性资源池使用约束限制。
DLI存储资源使用约束限制
DLI提供了存储资源的能力,用于存储数据库和DLI表,DLI存储按存储数据量计费。
资源相关约束限制
- 数据库
- “default”为内置数据库,不能创建名为“default”的数据库。
- DLI支持创建的数据库的最大数量为50个。
- 数据表
- DLI支持创建的表的最大数量为5000个。
- DLI支持创建表类型:
- Managed:数据存储位置为DLI的表。
- External:数据存储位置为OBS的表。
- View:视图,视图只能通过SQL语句创建。
- 跨源表:表类型同样为External。
- 创建DLI表时不支持指定存储路径。
- 数据导入
- 仅支持将OBS上的数据导入DLI或OBS中。
- 支持将OBS中CSV,Parquet,ORC,JSON和Avro格式的数据导入到在DLI中创建的表。
- 将CSV格式数据导入分区表,需在数据源中将分区列放在最后一列。
- 导入数据的编码格式仅支持UTF-8。
- 数据导出
- 只支持将DLI表(表类型为“Managed”)中的数据导出到OBS桶中,且导出的路径必须指定到文件夹级别。
- 导出文件格式为json格式,且文本格式仅支持UTF-8。
- 支持跨账号导出数据,即B账户对A账户授权后,A账户拥有B账户OBS桶的元数据信息和权限信息的读取权限,以及路径的读写权限,则A账户可将数据导出至B账户的OBS路径中。
- 程序包
- 程序包支持删除,但不支持删除程序包组。
- 支持上传的程序包类型:
- JAR:用户jar文件。
- PyFile:用户Python文件。
- File:用户文件。
- ModelFile:用户AI模型文件。
更多资源相关约束限制请参考数据管理。
增强型跨源连接约束限制
- 在同一队列中,如果同时使用了经典型跨源连接和增强型跨源连接,则经典型跨源连接优先于增强型跨源连接。推荐使用增强型跨源连接。
- DLI提供的default队列不支持创建跨源连接。
- Flink作业访问DIS,OBS和SMN数据源,无需创建跨源连接,可以直接访问。
- 增强型跨源仅支持包年包月队列、按需计费模式下的专属队列。
- 增强型跨源连接需要使用VPC、子网、路由、对等连接功能,因此需要获得VPC(虚拟私有云)的VPC Administrator权限。
可在服务授权中进行设置。
- 使用DLI增强型跨源时,弹性资源池/队列的网段与数据源网段不能重合。
- 访问跨源表需要使用已经创建跨源连接的队列。
- 跨源表不支持Preview预览功能。
- 检测跨源连接的连通性时对IP约束限制如下:
- 检测跨源连接的连通性时对域名约束限制如下:
更多增强型跨源连接约束限制请参考增强型跨源连接概述。
跨源认证使用约束限制
- 仅Spark SQL、和Flink OpenSource SQL 1.12版本的作业支持使用跨源认证。
- 仅在2023年5月1日后创建的队列,支持Flink作业使用跨源认证。
- DLI支持四种类型的跨源认证,不同的数据源按需选择相应的认证类型。
- CSS类型跨源认证:适用于“6.5.4”及以上版本的CSS集群且集群已开启安全模式。
- Kerberos类型的跨源认证:适用于开启Kerberos认证的MRS安全集群。
- Kafka_SSL类型的跨源认证:适用于开启SSL的Kafka。
- Password类型的跨源认证:适用于DWS、RDS、DDS、DCS数据源。
更多跨源认证约束限制请参考跨源认证简介。
SQL语法相关约束限制
- SQL语法限制
- 不支持在创建DLI表时指定存储路径。
- SQL语句大小限制
- 须小于500000字符。
- 须小于1MB。
其他约束限制
- DLI配额相关约束限制请参考配额管理操作指导。
- 建议使用支持的浏览器登录DLI服务。
- Google Chrome : 43.0及更高版本
- Mozilla FireFox : 38.0及更高版本
- Internet Explorer : 9.0及更高版本
更多浏览器的兼容性列表请参考支持的浏览器有哪些?