艾玛 基于报价的Scala DSL,用于可伸缩的数据分析。 目标 我们的目标是通过将并行性方面隐藏在高级的声明式API之后,从而最大程度地重用本机Scala语法和构造,从而提高开发人员的生产率。 Emma支持最新的数据流引擎,例如和作为后端协处理器。 产品特点 用于可扩展数据分析的DSL通过类型嵌入。 相反,Emma基于报价(类似于 )。 这种方法有两个好处。 首先,它允许在DSL中重用Scala原生的声明性构造。 因此,引用的Scala语法(例如 , 和被提升为称为Emma Core的中间表示形式。 其次,它允许整体分析和优化Emma Core术语。 从而将类型为DataBag[A