ECL输出CSV保留原数据集Schema及Parquet支持的技术咨询
问题解答
1. CSV输出保留原Schema的内置解决办法
你遇到的原数据集被塞进"line"列且新增额外列的问题,是因为输出方式或默认格式使用不当。ECL有内置的CSV格式化输出能力,直接针对原始数据集输出即可保留原Schema:
使用OUTPUT语句时指定FORMAT='CSV(HEADING=TRUE)'参数,示例代码:
// 假设MyDataset是你的原始数据集 OUTPUT(MyDataset, FORMAT='CSV(HEADING=TRUE)', FILE='target_output.csv');
这样输出的CSV会严格按照原数据集的Schema生成列,不会出现额外列或内容合并到单一列的情况,完全不需要后续手动清理或逐行解析重构。
2. ECL对Parquet格式输出的支持
目前HPCC Systems的ECL已原生支持Parquet格式输出(较新版本如7.0及以上),直接在OUTPUT语句中指定FORMAT='PARQUET'即可:
OUTPUT(MyDataset, FORMAT='PARQUET', FILE='output.parquet');
如果你的环境版本较旧,只需升级到支持Parquet的版本即可,无需自行实现复杂的解析逻辑。
内容的提问来源于stack exchange,提问作者tianrenqin
相关产品推荐
相关产品推荐

