Extensão de uma álgebra ER para execução de consultas em bancos de dados NoSQL orientados a documentos
Ano de defesa: | 2018 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de São Carlos
Câmpus São Carlos |
Programa de Pós-Graduação: |
Programa de Pós-Graduação em Ciência da Computação - PPGCC
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: | |
Palavras-chave em Inglês: | |
Área do conhecimento CNPq: | |
Link de acesso: | https://repositorio.ufscar.br/handle/ufscar/9716 |
Resumo: | Non-relational databases, also called as NoSQL (``Not Only SQL''), have emerged from the need for new mechanisms for storing, retrieving and processing for large amounts of data produced mainly from the coming of Web 2.0 applications. There are different models of non-relational data, each with its own characteristics and applicability. There are also hundreds of non-relational database management systems, each with a different query language,and its own API. Due to the lack of a standard for data manipulation languages (DML) in this type of database, it is a challenge for the Software Engineer to deal with the learning and development of queries.In addition, by prioritizing performance, non-relational databases often adopt denormalized schemas, generating a large diversity in stored data structures, which also makes it difficult to develop and reuse queries. Faced with these two challenges, this work aimed to define a generic approach to queries, independent of the database type and also independent of the schema in which the data is stored. For this, extended an existent algebra, based on Entities and Relationships for data manipulation, with an operational semantics driven by models (Model-Driven Engineering - MDE). More specifically, metamodels have been developed so that the Software Engineer can: (i) model the persistent entities (Entity-Relationship); (ii) model queries about the entities and relationships according to the algebra being used; and (iii) model the mapping between the entities and the types of documents stored. Based on these specifications, an algorithm was implemented that automatically generates JavaScript queries to be executed in the MongoDB database, according to the mapping model. If the database schema needs to be modified throughout the lifecycle, only the mapping model (model ``iii'') needs to be modified. The conceptual model and the queries (``i'' and ``ii'' models) remain completely independent of the storage schema and can be developed and reused more easily. Two evaluations were carried out, using an example of an academic system and a real system, trying to exhaustively test the different possibilities of mapping between entities and documents. The results obtained with these systems show that it is possible that the generated queries always return the same results, independent of the mapping, thus reaching the objective of this work. |