sql - U-SQL:如何处理架构更改?
问题描述
我的原始脚本是这样的:
@input = EXTRACT A string, B string, C string,
year string, month string, day string, filename string
FROM @folder + "/{year}/{month}/{day}/{filename}.csv"
USING Extractors.Csv(skipFirstNRows : 1);
@input = SELECT A, B, C FROM @input;
OUTPUT @input
TO @parent + "/testtest.csv"
USING Outputters.Csv(outputHeader : true);
这工作正常,但有时源文件的架构(列)可能会改变。列可能变为 A、B、C、D 或 A、B、E。
我知道 Visual Studio 可以生成 EXTRACT 脚本。有没有办法让 U-SQL(或 Visual Studio)处理这个问题并动态自动生成提取脚本?
解决方案
CSV 提取器不允许架构更改。如果您更改架构,您将需要更改您的 u-sql 代码!
解决方案是创建一个自定义提取器来完成您的工作,或者您可以检查允许灵活列模式的灵活提取器。
推荐阅读
- javascript - 如何在 vue js 项目中导入字体样式
- java - 4Kb 数组?内存表和 SSTable
- python - 再次运行 While If/Else 语句的问题,直到它在 Python 中中断
- javascript - 在写入文件之前完成承诺
- html - 我怎样才能把一个手风琴放在一个手风琴里面,用于我所有的手风琴?
- python - 在 Python 中的控制台中添加底部工具栏
- pfx - 使用没有 OpenSSL 的 wincrypt API 从 pfx 中提取私钥
- hash - 对于多项式表达式来说,什么是体面的散列函数?
- sql - 在 SQL 中检查两列是否是一对一的
- uwamp - Uwamp Online Mode