版权所有 © 2021-04-27 林鹏程, 保留所有权利。
Microsoft Azure DataFactory/DataPipelines Architecture | Warehouse/Workshop Model |
![]() |
![]() |
在2021-04-24, 我在reddit的clojure论坛发了一个贴子
"HPE Cray Supercompter officially likes
"The Grand Unified Programming Theory: The Pure
Function Pipeline Data Flow with Principle-based
Warehouse/Workshop Model", 有个用户(Humble_Welder6049)
说我的仓库/车间模型
与Azure数据工厂/数据管道架构
没有差别,
我是一个业余个人开发用户, 以前没有使用过"云服务",
所以我仔细阅读他发的链接文章, 然后发表了这篇文章.
因为我在clojure论坛上的那个帖子上, 从发了
询问了他的论文链接的那条消息后, 这个贴子被版主删除了,
不能在原贴回复他, 深感遗憾. 从他的评论来看,
我认为他阅读我的文章太匆忙, 没有仔细思考,
匆忙下结论, 这个做法比较不严谨.
-
车间
- 它是比数据管道更大的执行单元,由串联的数据管道组成.
- 车间之间没有任何交互,每个车间只被仓库统一调度。
- 调度和车间具有1:n关系
- 它是划分独立任务时的原子单位,对应甘特图的一个条。
- 它可以没有仓库,这时它只是微服务(专用处理芯片,服务业)。
-
数据管道
- 执行管道活动允许数据工厂管道调用另一个管道。
- 调度管道[当前版本(2019-11-19)新增]:
- 管道和触发器具有n:m关系
- 它不遵守如下原则
- 单一领导和统一调度原则
- 有序原则
-
仓库
- 它是一个特殊的管道,一切资源的容器(状态,数据,函数也是数据), 它有两个特殊的副作用管道(I/O)与外部互联.
- 它有一个调度器, 仓库调度器和车间是1:n关系,仓库调度器使用甘特图算法动态规划进行全局优化。
- 它可以没有普通车间,这时它只是数据中心(仓储业)。
-
Azure数据工厂
- Azure数据工厂是基于云的ETL和数据集成服务, 是一种传统的数据仓库解决方案.
- 调度管道[当前版本(2019-11-19)新增]:
- 管道和触发器具有n:m关系,
- 按传统并发系统使用的活动依赖关系调度,并没有按优化顺序调度。
- 它不遵守如下原则
- 单一领导和统一调度原则
- 有序原则
- 明确原则
从上面的差异比较来看,Azure数据工厂/数据管道架构
有以下的缺陷:
- 因为
- 执行管道活动允许数据工厂管道调用另一个管道。
- 管道和触发器具有n:m关系
- 所以
- 由于它没有车间的封装,多个数据管道互相调用,交织成一张复杂混乱的网络。
- 它象是一个没有车间的工厂, 所有机器(数据管道)在露天工场上联接在一起, 也没有统一的调度器, 它们处于混乱的无组织状态.
- 它不是一个严格的星形系统和分形系统。
- 它不遵守如下原则
- 单一领导和统一调度原则
- 有序原则
- 明确原则
改进措施就是使用我的仓库/车间模型
.