PutAzureDataLakeStorage

文档中心 › 组件索引 › PutAzureDataLakeStorage

PutAzureDataLakeStorage Processor

类型全限定名:cn.org.acal.lynxus.processors.azure.storage.PutAzureDataLakeStorage

所属 Bundle:cn.org.acal.lynxus:lynxus-azure-nar:2.11.8

描述

将 FlowFile 的内容写入 Azure Data Lake Storage Gen 2 上的文件

标签

azuremicrosoftcloudstorageadlsgen2datalake

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
ADLS Credentials控制器服务 API:
ADLSCredentialsService
cn.org.acal.lynxus-lynxus-azure-services-api-nar-2.11.8
用于获取 Azure 凭据的Controller Service。
Filesystem NameAzure 存储文件系统(也称为容器)的名称。 假设它已经存在。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Directory NameAzure 存储目录的名称。目录名称不能包含前导 '/'。根目录可以用空字符串值表示。对于 PutAzureDataLakeStorage 处理器,目录是文件系统路径。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
File Name${azure.filename}文件名
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Writing StrategyWRITE_AND_RENAME
  • Write and Rename — 处理器将 Azure 文件写入临时目录,然后将其重命名/移动到最终目标位置。 这可以防止其他进程读取部分写入的文件。
  • Simple Write — 处理器将 Azure 文件直接写入目标。 这可能会导致读取部分写入的文件。
定义写入 Azure 文件的方法。
Base Temporary Path创建临时目录的路径。路径名不能包含前导 '/'。根目录可以用空字符串值表示。不存在的目录将被创建。临时文件目录名为 _lynxustempdirectory
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Conflict Resolution Strategyfail
  • fail
  • replace
  • ignore
指定当输出目录中已存在同名文件时应如何处理
Resource Transfer SourceFLOWFILE_CONTENT
  • FlowFile Content — 传入 FlowFile 的内容提供传输源
  • File Resource Service — 文件资源服务提供传输源
待传输内容的来源
File Resource Service控制器服务 API:
FileResourceService
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
文件资源服务提供对要传输的本地资源的访问
Proxy Configuration Service控制器服务 API:
ProxyConfigurationService
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
指定代理配置 Controller Service 来代理网络请求。 对于 SOCKS,不保证处理器一定会使用所选的 SOCKS 版本。

关系 (Relationships)

名称描述自动终止
failure由于某种原因无法写入 Azure 存储的文件将传输到此关系否
success已成功写入 Azure 存储的文件将传输到此关系否

写入的 FlowFile 属性

名称描述
azure.filesystemAzure 文件系统的名称
azure.directoryAzure 目录的名称
azure.filenameAzure 文件的名称
azure.primaryUri文件内容的主要位置
azure.lengthAzure 文件的长度

状态管理

该组件不存储状态。

受限 (Restricted)

该组件不受限。

输入要求

该组件要求有传入连接。

详细说明

PutAzureDataLakeStorage

该 Processor 负责把文件上传到 Azure Data Lake Storage Gen2。

"Write and Rename" 策略下的文件上传与清理过程

上传新文件

  1. 在 '_lynxustempdirectory' 中的给定路径下创建带随机前缀的临时文件。
  2. 内容被追加到临时文件。
  3. 临时文件被移动到最终目标目录,并重命名为原始文件名。
  4. 追加或重命名失败时,临时文件会被删除。
  5. 临时文件删除失败时,临时文件会保留在服务器上。

上传已存在的文件

  • 冲突解决策略为 "fail" 的 Processor 会把 FlowFile 定向到 "Failure" Relationship。
  • 冲突解决策略为 "ignore" 的 Processor 会把 FlowFile 定向到 "Success" Relationship。
  • 冲突解决策略为 "replace" 的 Processor:
  1. 在 '_lynxustempdirectory' 中的给定路径下创建带随机前缀的临时文件。
  2. 内容被追加到临时文件。
  3. 临时文件被移动到最终目标目录,并重命名为原始文件名,原文件被覆盖。
  4. 追加或重命名失败时,临时文件会被删除,原文件保持完好。
  5. 临时文件删除失败时,临时文件和原文件都会保留在服务器上。

"Simple Write" 策略下的文件上传与清理过程

上传新文件

  1. 在最终目标位置创建空文件。
  2. 内容被追加到文件。
  3. 追加失败时,文件会被删除。
  4. 文件删除失败时,文件会保留在服务器上。

上传已存在的文件

  • 冲突解决策略为 "fail" 的 Processor 会把 FlowFile 定向到 "Failure" Relationship。
  • 冲突解决策略为 "ignore" 的 Processor 会把 FlowFile 定向到 "Success" Relationship。
  • 冲突解决策略为 "replace" 的 Processor:
  1. 在最终目标位置创建空文件,原文件被覆盖。
  2. 内容被追加到文件。
  3. 追加失败时,文件会被删除,且原文件不会恢复。
  4. 文件删除失败时,文件会保留在服务器上。