数据流定量属性的规则编程
1. 引言
在数据流处理中,对定量属性的有效处理是一个重要的研究领域。为了能够以模块化的方式指定数据流的定量属性,我们引入了定量正则表达式(QREs)和流式字符串到树转换器(SSTTs)等概念。本文将详细介绍QREs与SSTTs之间的转换,以及相关的背景知识和研究进展。
2. QREs与SSTTs的转换
2.1 QREs的范式
我们的主要目标是将每个QRE转换为SSTTs的流式组合。首先,将给定的QRE重写为多个无组合QRE(QRE̸≫)的流式组合。
定理5表明,对于每个QRE e,存在一个k和QRE̸≫ - s f1, f2, …, fk,使得e等价于f1≫f2≫···≫fk。证明通过对e的结构进行归纳。
考虑表达式e = op(f ≫g, h),其思路是在读取输入流w的每个元素wi后,生成对inti = ( [f] , wi)。然后对中间值流int中的每个对的第一个元素应用g,对第二个元素应用h,并使用成本运算符op生成最终结果。
这里引入了project1(g)和project2(h)的概念。project1(g)与g相同,只是每个数据谓词ϕ(d)被替换为ϕ(d.first),每个原子函数λ(d)被替换为λ(d.first);project2(h)类似,只是关注每个输入数据对的第二个元素。
最终,原表达式e = op(f ≫g, h)等价于表达式tuple(f,last) ≫op(project1(g), project2(h)),其中l
超级会员免费看
订阅专栏 解锁全文
2411

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



