【发布时间】:2015-05-22 12:46:51
【问题描述】:
我正在使用 SQL 和 Spoon PDI 创建数据比较/验证脚本。我们在两台服务器之间移动数据,并确保我们获得了所有数据,我们的 SQL 查询显示了日期和传输的行数。
示例:
服务1:20150522 | 100
服务2:20150522 | 100
然后脚本将尝试合并这些值,如果失败,我们将收到一封失败电子邮件。但是,我们希望更改此设置以将结果写入文本文件,并根据该文本文件发送通过或失败的电子邮件。
这背后的想法是我们要比较多个表,因此我们希望将每次比较的所有结果(八个)写入一个文本文件,并根据最终的文本文件发送结果 - 而不是发送垃圾邮件如果多个步骤失败,我们的电子邮件收件箱。
我们希望文本文件的格式是匹配 -> 发送电子邮件或不匹配 [步骤名称] [日期] -> 发送电子邮件。
如果我没有先尝试任何东西,通常我不会问任何问题,但我在 Google 上到处搜索,尝试了我目前拥有的知识,但没有任何事情能如我所愿。我相信这是由于我使用的逻辑。
我不是要求解决这个问题,也不是要求有人为我做这件事。我只是在寻求正确路径的指导。
【问题讨论】:
-
您说您使用的逻辑导致了问题 - 您可以编辑问题以解释该逻辑是什么吗?另外,Pentaho Kettle/Spoon 中的逻辑是这样的吗?你的问题不太清楚。
-
我需要将八个比较结果写入文本文件。一旦所有工作都完成并将其结果写入文本文件,然后我需要在文本文件中搜索关键字“不匹配”。如果 Spoon 找不到“不匹配”,则应发送通过电子邮件。如果它可以找到“不匹配”,则应发送失败电子邮件。
-
您能否提供文本文件的示例输出格式,包括匹配或不匹配的内容。
-
文本文件的输出当前为: StepName Match StepName2 Match StepName3 MisMatch 20150529 我需要搜索文本文件并找到“MisMatch”。如果未找到“不匹配”,请发送通过电子邮件。如果存在“不匹配”,则发送失败电子邮件。我已经使用在 Spoon 作业之后通过批处理文件运行的 C# 应用程序来完成这项工作,但是我需要一个仅使用 Spoon PDI 的解决方案。
标签: tsql pentaho etl kettle pdi