环境定义

本文详细介绍了环境项的定义结构。

定义部件

定义部件路径 类型 必填 说明
Libraries/CustomLibraries/<libraryname>.jar CustomLibraries (JAR) Base64 编码格式的自定义 jar 库
Libraries/CustomLibraries/<libraryname>.py CustomLibraries (PY) Base64 编码格式的自定义 Python 脚本文件
Libraries/CustomLibraries/<libraryname>.whl CustomLibraries (WHL) Base64 编码格式的自定义 wheel 文件
Libraries/CustomLibraries/<libraryname>.tar.gz CustomLibraries (TAR.GZ) Base64 编码格式的自定义 R 存档文件
Libraries/PublicLibraries/environment.yml ExternalLibraries (YAML) 采用 Base64 编码格式的外部库的环境 YAML 文件
Setting/Sparkcompute.yml SparkComputeSettings (YAML) 采用 Base64 编码格式的 Spark 计算设置 YAML
.platform PlatformDetails (JSON) 描述项的元数据

环境项的每个定义部分构造如下:

  • 路径 - 文件名,例如 Setting/Sparkcompute.yml
  • 有效负载类型 - InlineBase64
  • 有效负载 请参阅:从 Base64解码的有效负载内容示例。

Spark 外部库内容的说明

描述用于构造 environment.yml. 的字段

名字 类型 必填 说明
依赖 字典 将在环境中安装的 conda 包列表。 格式为 <package_name>==<version_number>
pip 字典 指定要使用 pip 安装的其他 Python 包。 这可以是字符串列表,其中每个字符串都是要以 <package_name>==<version_number>格式安装的 pip 包。

Spark 设置内容的说明

描述用于构造 SparkCompute.yml的字段。

名字 类型 必填 说明
enable_native_execution_engine 布尔值 启用本机执行引擎。 True - Enabled、False - Disabled。
instance_pool_id 字符串 环境池。 必须是由实例池 ID 指定的有效自定义池。 未指定 (null) 时,将创建初学者池。
driver_cores 整数 Spark 驱动程序核心。 允许的值为 4、8、16、32 和 64。
driver_memory 字符串 Spark 驱动程序内存。 允许的值为 28g、56g、112g、224g、400g。
executor_cores 整数 Spark 执行程序核心。 允许的值为 4、8、16、32、64。
executor_memory 字符串 Spark 执行程序内存。 允许的值为 28g、56g、112g、224g、400g。
dynamic_executor_allocation 对象 动态执行程序分配。 有关dynamic_executor_allocation内容 ,请参阅说明。
spark_conf 字典 Spark 配置。
runtime_version 字符串 运行时版本,找到受支持的 构造运行时

dynamic_executor_allocation内容的说明

描述用于构造 dynamic_executor_allocation的字段。

名字 类型 必填 说明
启用 布尔值 动态执行程序分配的状态。 True - Enabled、False - Disabled。
min_executors 整数 动态分配的最小执行程序编号。 最小值为 1。 最大值必须低于 maxExecutors
max_executors 整数 动态分配的最大执行程序数。 最小值为 1。 最大值必须低于 maxNodeCount 实例池。

平台部件

平台部件是包含环境元数据信息的文件。

  • 创建项 的定义符合平台文件(如果提供)
  • 获取项 定义始终返回平台文件。
  • 更新项 定义接受平台文件(如果提供)但前提是 updateMetadata=true设置新的 URL 参数。

spark 公共库的示例 environment.yml 从 Base64 解码的内容

dependencies:
  - matplotlib==0.10.1
  - scipy==0.0.1
  - pip:
      - fuzzywuzzy==0.18.0
      - numpy==0.1.28

Sparkcompute.yml 从 Base64 解码的内容的 spark 设置示例

enable_native_execution_engine: false
instance_pool_id: 655fc33c-2712-45a3-864a-b2a00429a8aa
driver_cores: 4
driver_memory: 28g
executor_cores: 4
executor_memory: 28g
dynamic_executor_allocation:
  enabled: true
  min_executors: 1
  max_executors: 2
spark_conf:
  spark.acls.enable: true
runtime_version: 1.3

定义示例

{
    "format": "null",
    "parts": [
        {
            "path": "Libraries/CustomLibraries/samplelibrary.jar",
            "payload": "eyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": "Libraries/CustomLibraries/samplepython.py",
            "payload": "FyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": "Libraries/CustomLibraries/samplewheel-0.18.0-py2.py3-none-any.whl",
            "payload": "LyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": "Libraries/CustomLibraries/sampleR.tar.gz",
            "payload": "ZyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": "Libraries/PublicLibraries/environment.yml",
            "payload": "IyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": "Setting/Sparkcompute.yml",
            "payload": "GyJuYmZvcm1hdCI6N..",
            "payloadType": "InlineBase64"
        },
        {
            "path": ".platform",
            "payload": "ZG90UGxhdGZvcm1CYXNlNjRTdHJpbmc",
            "payloadType": "InlineBase64"
        }
    ]
}