如何解决在Azure数据工厂中将固定宽度文件转换为定界文件-映射数据流
我在ADLS中有十个文件(.txt)。我在Azure SQL数据库中有他们的元数据。 我的元数据看起来像这样:
我正在尝试使用Mapping Data流将固定宽度的文件转换为带有标头的定界文件。 微软对此主题的唯一参考是https://docs.microsoft.com/en-us/azure/data-factory/how-to-fixed-width。
但是我有多个具有不同列数的文件。 有什么方法可以将这个元数据从表传递到派生列转换。 我知道使用Databricks可以轻松实现。但是我必须使用Dataflow做到这一点。
任何引用或指针将非常有帮助。
谢谢。
解决方法
是的,您可以将此元数据从表传递到派生列转换。
请按照我的步骤操作:
- 我将 DataSource 链接到ADLS的测试文件文件夹,该文件夹包含T1.txt,T2.txt和T3.txt。在列中存储文件名,这一点很重要,这样我们就可以获取文件元数据(数据来自何处)。 在“数据预览”标签中,我们可以看到以下信息:
- 然后,我使用表达式
replace(replace(FileName,'/',''),'.txt','')
替换冗余字符串。 - 在 SQLSource 中,我按照您的示例创建了一个表。
- 然后我加入了两个消息来源。
- 我使用表达式
substring(toString({_col0_}),startPosition,data_length)
根据元数据拆分字符串。 - 结果显示:
希望我的回答对您有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。