如何在Azure Data Factory中获取XML内的最新日期数据?
在Dataflow的Flat活动前筛选最新日期汇率数据的方案
完全可以在Flat活动前添加步骤来筛选最新日期的条目,具体操作步骤如下:
先解析XML并定位日期节点
添加一个Parse XML活动,把已下载的ECB汇率XML文件作为输入,用XPath表达式定位到所有带日期属性的<Cube>节点(也就是每个日期对应的父节点,其下包含当日所有货币汇率的子节点)。添加Filter活动筛选最新日期
紧接着加一个Filter活动,基于Parse XML输出的节点集合做筛选:- 提取每个节点的
time属性值,转换成标准日期格式 - 计算出所有日期里的最大值(即最新的那一天)
- 只保留
time属性等于这个最大值的节点
- 提取每个节点的
将筛选结果传入Flat活动
把Filter活动的输出直接作为后续Flat活动的输入,这样Flat就只会处理最新日期下的货币和汇率数据,后续再转成JSON文件即可。
小提示:如果你的Dataflow支持直接用表达式计算,也可以在Filter的条件里直接写逻辑,比如取所有节点time属性的最大值,直接匹配,不用额外步骤提取所有日期再找最大值。
内容的提问来源于stack exchange,提问作者Jose Angel Martinez Soler
相关产品推荐
相关产品推荐

