一句话:提出数据操作语言和类型导向的查询本地化机制,通过能力感知重写将分布式异构查询编译为原生查询。
针对数据中心应用在多数据源临时组合中难以整合和编排异构、分布数据源的问题,本文提出一种数据操作语言,抽象数据源的性质与位置,并定义其语义及类型导向的查询本地化机制,用于异构环境开发工具将查询高效编译为站点原生查询。方法核心是基于查询表达式重写的本地化过程,该过程具有合流性和终止性,并最大化站点能力与查询结构之间的映射。作者给出形式化类型安全结果,保证查询片段可可靠分布到远程站点。该机制还适合交互式查询构建环境,为用户提供即时反馈,并已作为移动与 Web 应用开发平台的数据层基础。
Abstract One key aspect of data-centric applications is the manipulation of data stored in persistent repositories, which is moving fast from querying a centralized relational database to the ad-hoc combination of constellations of data sources. The extension of general purpose languages with query operations is increasingly popular, as a tool to improve reasoning and optimizing capabilities of interpreters and compilers. However, not much is being done to integrate and orchestrate different and separate sources of data. We present a data manipulation language that abstracts the nature and location of data-sources. We define its semantics and a type directed query localization mechanism to be used in development tools for heterogeneous environments to efficiently compile them into native queries. We introduce a localization procedure based on rewriting of query expressions that is confluent, terminating and provides the maximum mapping between site capabilities and the structure of the query. We provide formal type safety results that support the sound distribution of query fragments over remote sites. Our approach is also suitable for an interactive query construction environment by rich user interfaces that provide immediate feedback on data manipulation operations. This approach is currently the base for the data layer of a development platform for mobile and web applications.
@article{SecoFL17,
title = {Capability-based localization of distributed and heterogeneous queries},
author = {JOÃO COSTA SECO and PAULO FERREIRA and HUGO LOURENÇO},
journal = {Journal of Functional Programming},
volume = {27},
year = {2017},
doi = {10.1017/s095679681700017x}
}