流式模型转换:场景、挑战与初步解决方案
1. 引言
模型驱动工程(MDE)正越来越多地用于解决日益复杂的问题,而当前的模型转换技术最初并非为某些场景而设计,其中之一就是处理仅以模型元素流形式存在的模型转换。虽然数据库、XML等领域对数据流处理已有研究,但在MDE中的应用却很少。
流式模型转换是一种特殊的转换类型,在转换开始时,整个输入模型并非完全可用,而是持续生成的,因此必须随着元素到达转换过程进行增量处理。例如处理Twitter上的推文,推文、用户、标签等模型元素是随着用户生成而被处理的,这个模型可能是无限的,无法一次性查询、匹配或转换。而且,流式转换不仅适用于输入模型本身是流式且无限的情况,也是处理大型模型的一种方式,比如通过增量方式为转换过程提供数据,以实现分布式转换、管道式转换链或避免机器内存溢出。
2. 动机场景
2.1 处理自然流
一些系统会自然地持续生成数据,可能需要进行转换以用于分析或可视化。可分为两类系统:
- 原生生成流模型的系统 :例如通过生成基于模型的执行跟踪来监控运行中的系统,这将作为本文的运行示例。
- 数据不符合元模型的系统 :如将流式转换应用于语义传感器网络技术。这可能包括将原生传感器数据(如温度、降水)转换为通过链接数据URI关联元素的RDF格式,然后进一步处理,例如添加其他来源的信息(如某路段的汽车数量),并将其转换为其他形式进行预测(如根据某些路段的天气条件预测交通拥堵)。
2.2 处理大型模型
处理大型模型的可扩展解决方案是将模型片段增量地提供给转换过程。
超级会员免费看
订阅专栏 解锁全文
1569

被折叠的 条评论
为什么被折叠?



