azure-data-lake - 大文件USQL查询

标签 azure-data-lake u-sql

我在 Azure Data Lake 存储中有一个非常大的文件 (257 GB),当我昨天尝试对其进行简单提取时,出现以下错误

Vertex terminated as it ran for more than 5h hours. The input size of the vertex SV1_Extract_Partition[0][53].v0 with guid {2F8802B8-F93A-47EE-80E2-274590BD76A5} is 1.171594 GB. In most situations, this is caused by data skew such as one data partition containing most of the data. Use of different partitioning scheme or re-partitioning data can resolve such issue.

所以我很确定发生的情况是 U-SQL 没有正确分区我的文件。我正在使用自定义编写的提取器,但我不明白为什么会出现这种情况。

如何确保对文件进行分区。这个错误让我损失了很多钱(超过 2000 美元),所以在我能确保作业运行时我的文件正确分区之前,我真的不想再次运行这种规模的任何东西。

我真的需要手动将文件分割成更小的文件吗?

最佳答案

分区大小1GB左右看起来很正常。问题可能出在您的自定义提取器中,它确实处理该数据超过 5 个小时。

我建议调查您的提取器在文件的特定分区上执行的操作。

关于azure-data-lake - 大文件USQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42366421/

相关文章:

azure - Azure Data Lake 是否可以存储 .dbf (Oracle)、.accdb (MS Access) 或 .mdf (SQL Server) 文件?

azure - 我们是否能够使用 Snappy-data 更新 Azure 数据湖中的记录?或者 Azure 数据湖仅附加?

sql-server - 更改 SSIS 中 Data Lake Store Source 的输出类型

azure-data-lake - 如何在 U-SQL 中使用 XML 提取器从 XML 元素中提取属性值

azure - 如何在 Visual Studio Code 中设置本地环境来运行 U-SQL,而无需连接到 Azure DataLake?

powershell - 使用 Azure Powershell Runbook 在 Azure 数据湖存储上将 Csv 文件转换为 Xml

azure - 为什么在调用 azure data Lake gen2 的 put 文件 api 时出现丢失 header 错误?

azure - 在 Azure 数据工厂的管道中运行 U-SQL 事件时出错

azure - 从 Azure 中的数据工厂在 ADL 存储中执行 U-SQL 脚本