3

我正在编写一个 U-SQL 查询,该查询从存储在目录(例如 A)中的文件(例如 query.txt)中提取信息。现在,我想在处理完文件 query.txt 并将一些结果集输出到不同目录中的其他文件后,将文件 query.txt 移动到另一个目录(比如已处理)。完成 U-SQL 作业后,如何将源文件(query.txt)移动到Processed目录?

4

3 回答 3

2

不能将 U-SQL 用于 Data Lake Store 上的文件系统操作。

您可以读取文件并将输出写入已处理的目录,但这只会在新目录中创建该文件的副本,不会删除原始文件。

无法使用 U-SQL 操作移动、删除或复制。一个好方法是使用 ADLS SDK,这是一个为您编写一个简单的程序。SDK 提供了此类操作的功能。

于 2016-10-26T13:48:37.270 回答
1

U-SQL 不为您提供文件系统操作。我会研究一个 SDK ADLS 命令(例如,在 Azure Powershell 中),它提供标准的 WebHDFS 文件系统命令来与文件系统交互,并使用 Powershell 或 Azure 数据工厂来协调作业和文件移动。

于 2016-10-25T17:37:48.277 回答
1

使用 PowerShell

# Log in to your Azure account
Login-AzureRmAccount

$DataLakeStoreAccount = "<yourAccountNameHere>";
$source = "/Before/query.txt";
$Destination = "/After/query.txt";

Move-AzureRmDataLakeStoreItem -AccountName $DataLakeStoreAccount -Path $source -Destination $Destination;
于 2017-02-13T21:47:18.487 回答