Metamodeling of Database Query Languages
摘要
Database Query Languages are fundamental to perform operations on data and enable users to interact with databases. To ensure efficient and interoperable data manipulation, standard query languages such as SQL provide a common and standardised way to express simple and complex queries for data analysis and manipulation. Unlike SQL, which manipulates relational databases, some query languages, such as MongoDB Query Language (MQL), are better suited for distributed data sources and modern NoSQL systems (Not only Structured Query Language). Specifically, MQL provides powerful capabilities for querying JSON-like structures and handling large volumes of flexible and unstructured data. This paper highlights the importance of metamodeling query languages to enable tool support, extensibility, validation, standardisation, documentation, and interoperability. We present a thorough examination and a systematic assessment of how metamodels facilitate these advantages. For assessment, we implemented examples using our metamodels: SQLM for MySQL and MQLM for MQL. We also employed ATL for model transformations and Xtext for tool generation. Our study demonstrates how metamodels can support query languages, enabling them to achieve greater capabilities and seamless integration across different database systems.