论文标题

SKIQL:统一的架构查询语言

SkiQL: A Unified Schema Query Language

论文作者

Candel, Carlos Javier Fernández, Molina, Jesús Joaquín García, Ruiz, Diego Sevilla

论文摘要

大多数NOSQL系统都是读取的模式:可以存储数据,而无需首先声明构成结构的模式。当数据经常更改时,此示意性功能具有灵活性来扩展数据密集型应用程序。但是,摆脱宣布模式并不意味着它们的缺席,而是它们隐含在数据和代码中。因此,还需要类似于用于关系系统的图形工具,以帮助开发人员和管理员了解NOSQL模式。 如果模式包含数百个数据库实体,并且需要探索或查询设施,则可视化图是不切实际的。在示意性的NOSQL存储中,可以使用不同的结构来存储同一实体的数据,这可能会增加具有可读图的难度。 因此,NOSQL模式管理工具应具有三个主要组件:架构提取,模式可视化和架构查询。由于存在四个主要的NOSQL数据模型,因此可以很方便的是,可以在通用数据模型上构建此类工具,该工具可提供与平台无关的查询和可视化模式。为了支持创建通用数据库工具的目的,本文的作者定义了U-Schema Unified数据模型,该数据模型集成了四个主要NOSQL数据模型和关系模型。 本文的重点是查询NOSQL和关系模型,并表示为U-Schema模型。我们介绍在U-Schema上设计的SKIQL语言,以实现与平台无关的架构查询服务。 Skiql提供了两种结构:模式 - 拼写和关系 - 疑问。前者允许获取实体或关系类型的信息,以及集合或参考的后者(类型之间的关系)的信息。我们将通过计算众所周知的语言指标并使用调查来展示如何评估SKIQL。

Most NoSQL systems are schema-on-read: data can be stored without first having to declare a Schema that imposes a structure. This schemaless feature offers flexibility to evolve data-intensive applications when data frequently change. However, freeing from declaring schemas does not mean their absence, but rather that they are implicit in data and code. Therefore, diagramming tools similar to those available for relational systems are also needed to help developers and administrators understanding NoSQL schemas. Visualizing diagrams is not practical if schemas contain hundreds of database entities, and exploration or query facilities are then needed. In schemaless NoSQL stores, data of the same entity can be stored with different structure which can increase the difficulty of having readable diagrams. NoSQL schema management tools should therefore have three main components: schema extraction, schema visualization, and schema query. Since that there exist four main NoSQL data models, it is convenient that such tools can be built on a generic data model that provide platform-independence to query and visualize schemas. With the aim of favoring the creation of generic database tools, the authors of this paper defined the U-Schema unified data model that integrates the four main NoSQL data models and the relational model. This paper is focused on querying NoSQL and relational schemas which are represented as U-Schema models. We present the SkiQL language designed on U-Schema to achieve a platform-independent schema query service. SkiQL provides two constructs: schema-query and relationship-query. The former allows to obtain information of entity or relationship types, and the latter that of the aggregations or references (relations among types). We will show how SkiQL was evaluated by calculating well-known metrics for languages and using a survey.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源