控制流量和数据应该在服务之间分开吗?

时间:2013-03-06 01:20:57

标签: dependencies etl

应该控制流量和数据分开吗?

我心中明显的答案是否定的......但是我想要一些更为明确的论据,为什么不......

所以...这是一个场景

  • 服务生成数据并将其发布到本地表,以便ETL单独进程获取并集成到主报告数据仓库中。
  • 有人建议源服务应通知ETL 该数据可用...因此无需定期检查

我根本不喜欢这个..为什么?

  • 它创建了一个结构依赖,因为服务需要了解ETL
  • 它还会创建时间依赖性(如果任何一个进程崩溃/崩溃会怎样?)

如果ETL对数据感兴趣,它应该主动进行检查   - 另一种方法是让服务主动将其发送到消息队列,从而将通知委托给排队基础设施。

1 个答案:

答案 0 :(得分:1)

我曾经在ETL导向的中央流程的应用程序上工作了近十年。当您处理移动这类数据的进程时,创建有关进程运行和在这些运行期间加载的数据的元数据非常重要。这对于审计目的来说是非常宝贵的。它还可以帮助您监控性能,如果正确完成,还可以帮助您正确加载数据。

此外,在您的情况下,它将允许使用者进程通过以相同方式检查数据加载元数据表来检查新可用数据,而不是为不同的数据表创建单独的查询。