Extensão de uma álgebra ER para execução de consultas em bancos de dados NoSQL orientados a documentos

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: Noguera, Viviana Elizabeth Romero
Orientador(a): Lucrédio, Daniel lattes
Banca de defesa: Não Informado pela instituição
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:
MDE
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.