Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Http 通过Streamset Data Collector进行流式处理时在文件名中追加UUID_Http_Hadoop_Client_Streamsets - Fatal编程技术网

Http 通过Streamset Data Collector进行流式处理时在文件名中追加UUID

Http 通过Streamset Data Collector进行流式处理时在文件名中追加UUID,http,hadoop,client,streamsets,Http,Hadoop,Client,Streamsets,我使用HttpClient origin将一个文件从HTTP url流式传输到Hadoop目标,但是目标中的文件名附加了一些随机uuid。我希望文件名与源文件名相同 示例:源文件名为README.txt, 目标文件名为README_112e5d4b-4d85-4764-ab81-1d7b6e0237b2.txt 我希望目标文件名为README.txt 我将向您展示我的配置 HTTP Client : General Name : HTTP Client 1 Description :

我使用HttpClient origin将一个文件从HTTP url流式传输到Hadoop目标,但是目标中的文件名附加了一些随机uuid。我希望文件名与源文件名相同

示例:源文件名为README.txt, 目标文件名为README_112e5d4b-4d85-4764-ab81-1d7b6e0237b2.txt

我希望目标文件名为README.txt

我将向您展示我的配置

HTTP Client :

General

Name : HTTP Client 1

Description : 

On Record Error : Send to Error

HTTP

Resource URL : http://files.data.gouv.fr/sirene/README.txt

Headers : 

Mode : Streaming

Per-Status Actions

HTTP Statis Code : 500 | Action for status : Retry with exponential backoff |

Base Backoff Interval (ms) : 1000 | Max Retries : 10

HTTP Method : GET

Body Time Zone : UTC (UTC)

Request Transfert Encoding : BUFFERED

HTTP Compression : None

Connect Timeout : 0

Read Timeout : 0

Authentication Type : None

Use OAuth 2

Use Proxy

Max Batch Size (records) : 1000

Batch Wait Time (ms) : 2000

Pagination

Pagination Mode : None

TLS

UseTLS

Timeout Handling

Action for timeout : Retry immediately

Max Retries : 10

Data Format

Date Format : Text

Compression Format : None

Max Line Length : 1024

Use Custom Delimiter

Charset : UTF-8

Ignore Control Characters

Logging 

Enable Request Logging

Hadoop FS Destination :

General

Name : Hadoop FS 1

Description : Writing into HDFS

Stage Library : CDH 5.10.1

Produce Events

Required Fields

Preconditions

On Record Error : Send to Error

Output Files

File Type : Text Files

Files Prefix : README

File Suffix : txt

Directory in Header

Directory Template : /user/username/

Data Time Zone : UTC (UTC)

Time Basis : ${time:now()}

Max Records in File : 0

Max File Size (MB) : 0

Idle Timeout : ${1 * HOURS}

Compression Codec : None

Use Roll Attribute

Validate HDFS Permissions : ON

Skip file recovery

Late Records

Late Record Time Limit (secs) : ${1 * HOURS}

Late Record Handling : Send to error

Data Format

Data Format : Text

Text Field Path : /text

Record Separator : \n

On Missing Field : Report Error

Charset : UTF-8

您可以配置文件名前缀和后缀,但无法删除UUID

在许多情况下,目录是Hadoop中最小的有用文件系统实体。由于文件可能由多个客户端同时写入,并且由于操作原因(如文件大小超过给定阈值),文件可能被“滚动”(当前输出文件关闭,新文件打开),Data Collector确保文件名是唯一的,以避免意外数据丢失


如果您真的想这样做,有一个变通方法:在Hadoop目标上启用事件并使用重命名文件。更多信息,请参见此。

谢谢@metadaddy。我还有一个问题,文件内容正在从源复制到目标。假设源文件内容是“SIRENE”,而目标文件内容类似于SIRENE-SIRENE-SIRENE。是否有任何配置更改,我需要这样做,以使这不会发生。这不应该发生。在删除所有密码等的管道JSON导出后,您可以问一个新问题吗?顺便说一句,我们有特定的社区频道流集-请参阅