
# 产品功能
本页面介绍了DLI服务支持的主要功能。关于各功能支持的地域（Region）信息，可通过控制台查询详情。
#### 弹性资源池和队列
使用DLI提交作业前，您需要为提交作业准备所需的计算资源。
- **弹性资源池**
  弹性资源池为DLI作业运行提供所需的计算资源（CPU和内存），弹性资源池具备强大的计算能力、高可用性、及灵活的资源管理能力，适用于大规模计算任务场景和有长期资源规划需求的业务场景，灵活应对业务对计算资源变化的需求。
  有关更多信息请参阅[创建弹性资源池](https://support.huaweicloud.com/usermanual-dli/dli_01_0505.html)。
  
- **队列**
  创建弹性资源池后，您可以在弹性资源池中创建多个队列，队列关联到具体的作业和数据处理任务，是资源池中资源被实际使用和分配的基本单元，即队列是执行作业所需的具体的计算资源。
  同一弹性资源池中，队列之间的计算资源支持共享。 通过合理设置队列的计算资源分配策略，可以提高计算资源利用率。
  有关更多信息请参阅[在弹性资源池中添加队列](https://support.huaweicloud.com/usermanual-dli/dli_01_0484.html)。
  
- **default队列**
  DLI服务预置了名为"default"的队列，资源的大小是按需分配的。用户在不确定所需队列容量或没有可创建队列空间的情况下，可以使用该队列执行作业。"default"队列只用于用户体验，所有人共用，用户间可能会出现抢占资源的情况，不能保证每次都可以得到资源执行相关操作。
  有关更多信息请参阅[弹性资源池和队列简介](https://support.huaweicloud.com/usermanual-dli/dli_01_0504.html)。
  
#### DLI元数据管理
DLI元数据是SQL作业、Spark作业场景开发的基础。在执行作业前您需要根据业务场景定义数据库和表。
除了DLI元数据，DLI还支持对接LakeFormation实现元数据的统一管理，无缝对接多种计算引擎及大数据云服务，便捷高效地构建数据湖和运营相关业务。
- **DLI元数据**
  DLI元数据是SQL作业、Spark作业场景开发的基础。在执行作业前您需要根据业务场景定义数据库和表。
  - 数据目录 数据目录（Catalog）是元数据管理对象，它可以包含多个数据库。您可以在DLI中创建并管理多个Catalog，用于不同的元数据隔离。
    
  
  
  
  - 数据库 数据库是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。数据库通常用于存储、检索和管理结构化数据，由多个数据表组成，这些数据表通过键和索引相互关联。
    
  
  - 表 表是数据库最重要的组成部分之一，它由行和列组成。每一行代表一个数据项，每一列代表数据的一个属性或特征。表用于组织和存储特定类型的数据，使得数据可以被有效地查询和分析。数据库是一个框架，表是其实质内容。一个数据库包含一个或者多个表。
    
  
  - 元数据 元数据（Metadata）是用来定义数据类型的数据。主要是描述数据自身信息，包含源、大小、格式或其它数据特征。数据库字段中，元数据用于诠释数据仓库的内容。创建表时，会定义元数据，由列名、类型、列描述三列组成。
    
  
  
  有关更多信息请参阅[创建数据库和表](https://support.huaweicloud.com/usermanual-dli/dli_01_0005.html)。
  

- **DLI对接LakeFormation管理元数据**
  创建弹性资源池后，您可以在弹性资源池中创建多个队列，队列关联到具体的作业和数据处理任务，是资源池中资源被实际使用和分配的基本单元，即队列是执行作业所需的具体的计算资源。同一弹性资源池中，队列之间的计算资源支持共享。 通过合理设置队列的计算资源分配策略，可以提高计算资源利用率。
  有关更多信息请参阅[DLI对接LakeFormation](https://support.huaweicloud.com/usermanual-dli/dli_01_0629.html)。
  
 
#### DLI SQL作业
DLI SQL作业，即DLI Spark SQL作业，通过在SQL编辑器使用SQL语句执行数据查询等操作。支持SQL2003，兼容SparkSQL。
有关更多信息请参阅[数据湖探索Spark SQL语法参考](https://support.huaweicloud.com/sqlref-spark-dli/dli_08_0266.html)、[使用DLI提交SQL作业查询OBS数据](https://support.huaweicloud.com/qs-dli/dli_13_0002.html)、[导出SQL作业结果](https://support.huaweicloud.com/usermanual-dli/dli_01_0621.html)。
#### DLI Spark作业
Spark是用于大规模数据处理的统一分析引擎，聚焦于查询计算分析。DLI在开源Spark基础上进行了大量的性能优化与服务化改造，不仅兼容Apache Spark生态和接口，性能较开源提升了2.5倍，在小时级即可实现EB级数据查询分析。
有关更多信息请参阅[使用DLI提交Spark Jar作业](https://support.huaweicloud.com/qs-dli/dli_13_0003.html)。
#### DLI Flink作业
DLI Flink作业专为实时数据流处理设计，适用于低时延、需要快速响应的场景，支持与多种云服务跨源连通，形成丰富的流生态圈。适用于实时监控、在线分析等场景。
- **Flink OpenSource作业**
  DLI提供了标准的连接器（connectors）和丰富的API，便于快速与其他数据系统的集成。
  
- **Flink Jar作业**
  允许用户提交编译为Jar包的Flink作业，提供了更大的灵活性和自定义能力。适合需要自定义函数、UDF（用户定义函数）或特定库集成的复杂数据处理场景。可以利用Flink的生态系统，实现高级流处理逻辑和状态管理。
  
- **Flink Python作业**
  DLI在Flink 1.17及以上版本中引入对PyFlink作业的支持，旨在为您提供更加灵活和强大的数据处理工具。您不仅可以在DLI作业管理界面直接提交PyFlink作业，还支持指定第三方Python依赖和Java依赖，以及自定义Python虚拟环境和数据文件压缩包，极大地提升了作业提交的便捷性和作业执行的灵活性。
  此外，DLI Flink镜像将预装默认的Python执行环境，支持Python 3.7, 3.8, 3.9, 3.10版本，满足不同用户的开发需求，使得Python开发者能够更加高效地利用DLI进行数据处理和分析工作。
  Flink Python作业适用于需要自定义流处理逻辑、复杂的状态管理或特定库集成的数据分析场景。需要用户自行编写并构建Python作业程序包，在提交Flink Python作业前，将Jar作业程序包上传至OBS，并将程序包与数据和作业参数一起提交以运行作业。
  
有关更多信息请参阅[使用DLI提交Flink OpenSource SQL作业](https://support.huaweicloud.com/qs-dli/dli_13_0007.html)、[使用DLI提交Flink Jar作业](https://support.huaweicloud.com/qs-dli/dli_13_0009.html)。
#### 跨源连接
在使用DLI进行跨源分析前，需要先建立跨源连接，打通数据源之间的网络。
DLI增强型跨源连接底层采用对等连接，直接打通DLI队列与目的数据源的VPC网络，通过点对点的方式实现数据互通，能够提供比经典型跨源更加灵活的使用场景与更加强劲的性能。
说明：系统default队列不支持创建跨源连接。跨源连接需要使用VPC、子网、路由、对等连接功能，因此需要获得VPC（虚拟私有云）的VPC Administrator权限。可在服务授权中进行设置。
有关更多信息请参阅[创建增强型跨源连接](https://support.huaweicloud.com/usermanual-dli/dli_01_0003.html)。
#### 权限管理
DLI服务不仅在服务本身有一套完善的权限控制机制，同时还支持通过统一身份认证服务（Identity and Access Management，简称IAM）细粒度鉴权，可以通过在IAM创建策略来管理DLI的权限控制。两种权限控制机制可以共同使用，没有冲突。
有关更多信息请参阅[创建用户并授权使用DLI](https://support.huaweicloud.com/usermanual-dli/dli_01_0418.html)、[DLI自定义策略](https://support.huaweicloud.com/usermanual-dli/dli_01_0451.html)、[DLI常用操作与系统权限关系](https://support.huaweicloud.com/usermanual-dli/dli_01_0441.html)。
#### DLI自定义委托
跨源分析场景，DLI需具备访问其他云服务的委托权限，即允许DLI在其他云服务中代表用户或服务执行操作，才能够在执行作业时读写数据、执行特定操作。DLI委托可以确保DLI在跨源分析场景中安全、有效地访问其他云服务。
有关更多信息请参阅[创建DLI自定义委托](https://support.huaweicloud.com/usermanual-dli/dli_01_0616.html)。
#### 自定义镜像
DLI支持容器部署的集群。在容器集群中，Spark作业和Flink作业相关组件都运行在容器中，通过下载DLI提供的自定义镜像，可以改变Spark作业和Flink作业的容器运行环境。例如，在自定义镜像中加入机器学习相关的Python包或者C库，可以通过这种方式方便地帮助用户进行功能扩展。
有关更多信息请参阅[创建自定义镜像](https://support.huaweicloud.com/usermanual-dli/dli_01_0494.html)。
