Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho
Autor(a) principal: | |
---|---|
Data de Publicação: | 2020 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFSCAR |
Texto Completo: | https://repositorio.ufscar.br/handle/ufscar/13159 |
Resumo: | Databases and database systems are essential to modern life. In a scenario of increasing data handling arose the need to find newer ways to store and process data that are able to cope with the rapid evolution of society. NoSQL databases are an alternative to this scenario but the lack of standard between each database implementation increases the difficulty to perform some tasks when compared to a SQL database. To solve this problem, this paper increments the work of Noguera e Lucrédio (2019), using the query language it improves the join operation and implements the operations Cartesian Product, Selection and Projection that were proposed by Parent e Spaccapietra (1984). In order to make the metamodel creation process more friendly, a textual representation was created for the metamodels and a parser for generating code compatible with the algorithm. Two software systems were analyzed to validate the MongoDB code generated by the algorithm and to check if the query result conforms to the structure defined by the algebra. The query performance was also analyzed, comparing it to the performance of queries that were handcrafted by a Software Engineer. This paper shows that the ER algebra is compatible with document-oriented NoSQL databases and that automated query generation does not significantly affects performance. |
id |
SCAR_e1870bf4c987845d350d860b36b8399e |
---|---|
oai_identifier_str |
oai:repositorio.ufscar.br:ufscar/13159 |
network_acronym_str |
SCAR |
network_name_str |
Repositório Institucional da UFSCAR |
repository_id_str |
4322 |
spelling |
Cabral, João Vitor LopesCiferri, Ricardo Rodrigueshttp://lattes.cnpq.br/8382221522817502http://lattes.cnpq.br/11507185618003803b4ef1a7-8dff-427c-a737-846c8df5de0b2020-08-14T17:51:29Z2020-08-14T17:51:29Z2020-04-09CABRAL, João Vitor Lopes. Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho. 2020. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2020. Disponível em: https://repositorio.ufscar.br/handle/ufscar/13159.https://repositorio.ufscar.br/handle/ufscar/13159Databases and database systems are essential to modern life. In a scenario of increasing data handling arose the need to find newer ways to store and process data that are able to cope with the rapid evolution of society. NoSQL databases are an alternative to this scenario but the lack of standard between each database implementation increases the difficulty to perform some tasks when compared to a SQL database. To solve this problem, this paper increments the work of Noguera e Lucrédio (2019), using the query language it improves the join operation and implements the operations Cartesian Product, Selection and Projection that were proposed by Parent e Spaccapietra (1984). In order to make the metamodel creation process more friendly, a textual representation was created for the metamodels and a parser for generating code compatible with the algorithm. Two software systems were analyzed to validate the MongoDB code generated by the algorithm and to check if the query result conforms to the structure defined by the algebra. The query performance was also analyzed, comparing it to the performance of queries that were handcrafted by a Software Engineer. This paper shows that the ER algebra is compatible with document-oriented NoSQL databases and that automated query generation does not significantly affects performance.Bancos de dados e sistemas de bancos de dados são essenciais para a vida moderna. Em um ambiente com crescente volume de dados surgiu a necessidade de se encontrar novas formas de armazenamento e processamento de dados que também sejam capazes de se adequar à rápida evolução da sociedade. Bancos de dados NoSQL são uma alternativa nesse cenário mas a falta de padrão entre as implementações torna algumas tarefas mais trabalhosas do que em bancos de dados SQL, entre elas a escrita de consultas. Para resolver esse problema, este trabalho expande a abordagem proposta por Noguera e Lucrédio (2019), utilizando a linguagem de consulta proposta, incrementa a implementação da operação de junção e implementa as operações Produto Cartesiano, Seleção e Projeção definidas na álgebra proposta por Parent e Spaccapietra (1984). Para tornar mais amigável o processo de criação dos metamodelos foi criada uma representação textual para estes e um “parser” para geração de código compatível com o algoritmo. Foram analisados dois sistemas a fim de validar o código gerado pelo algoritmo e a conformidade do resultado com a álgebra. Também foi analisado o desempenho das consultas geradas pelo algoritmo e comparadas com consultas escritas à mão por um Engenheiro de Software. Neste trabalho mostra-se que a álgebra ER é compatível com bases de dados NoSQL orientada a documentos e que a geração automatizada de consultas não afeta significativamente o desempenho das consultas.Não recebi financiamentoporUniversidade Federal de São CarlosCâmpus São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessNoSQLBancos de dadosConsultasEntidade RelacionamentoMapeamentoMongoDBDatabasesQueriesEntity RelationshipMappingCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAOUma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenhoAn ER algebra for querying NoSQL databases: implementing additional operators and performance analysisinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis6006003b1d5172-8bf0-4d0b-8777-ab82599bbf09reponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINALDissertação-João-Vitor-Final-Revisada.pdfDissertação-João-Vitor-Final-Revisada.pdfTexto final dissertaçãoapplication/pdf4943681https://repositorio.ufscar.br/bitstream/ufscar/13159/1/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdfa8702ee4f483933cad215fc4967c6074MD51comprovante-versao-final-assinado.jpegcomprovante-versao-final-assinado.jpegCarta comprovante da versão final de teses e dissertaçõesimage/jpeg75689https://repositorio.ufscar.br/bitstream/ufscar/13159/2/comprovante-versao-final-assinado.jpeg787a1ae6ed014f4407b79636c665de81MD52CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufscar.br/bitstream/ufscar/13159/3/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD53TEXTDissertação-João-Vitor-Final-Revisada.pdf.txtDissertação-João-Vitor-Final-Revisada.pdf.txtExtracted texttext/plain245283https://repositorio.ufscar.br/bitstream/ufscar/13159/4/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdf.txt1e3533f3e08b4635da8ae9509d742650MD54THUMBNAILDissertação-João-Vitor-Final-Revisada.pdf.jpgDissertação-João-Vitor-Final-Revisada.pdf.jpgIM Thumbnailimage/jpeg5541https://repositorio.ufscar.br/bitstream/ufscar/13159/5/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdf.jpgf1d3104a4b1e8d51c1bdb8626a1f79ceMD55comprovante-versao-final-assinado.jpeg.jpgcomprovante-versao-final-assinado.jpeg.jpgGenerated Thumbnailimage/jpeg6626https://repositorio.ufscar.br/bitstream/ufscar/13159/6/comprovante-versao-final-assinado.jpeg.jpg4faea9459f97b59059ecfcfa252de007MD56ufscar/131592023-09-18 18:31:59.729oai:repositorio.ufscar.br:ufscar/13159Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222023-09-18T18:31:59Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false |
dc.title.por.fl_str_mv |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
dc.title.alternative.eng.fl_str_mv |
An ER algebra for querying NoSQL databases: implementing additional operators and performance analysis |
title |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
spellingShingle |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho Cabral, João Vitor Lopes NoSQL Bancos de dados Consultas Entidade Relacionamento Mapeamento MongoDB Databases Queries Entity Relationship Mapping CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
title_short |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
title_full |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
title_fullStr |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
title_full_unstemmed |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
title_sort |
Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho |
author |
Cabral, João Vitor Lopes |
author_facet |
Cabral, João Vitor Lopes |
author_role |
author |
dc.contributor.authorlattes.por.fl_str_mv |
http://lattes.cnpq.br/1150718561800380 |
dc.contributor.author.fl_str_mv |
Cabral, João Vitor Lopes |
dc.contributor.advisor1.fl_str_mv |
Ciferri, Ricardo Rodrigues |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/8382221522817502 |
dc.contributor.authorID.fl_str_mv |
3b4ef1a7-8dff-427c-a737-846c8df5de0b |
contributor_str_mv |
Ciferri, Ricardo Rodrigues |
dc.subject.por.fl_str_mv |
NoSQL Bancos de dados Consultas Entidade Relacionamento Mapeamento |
topic |
NoSQL Bancos de dados Consultas Entidade Relacionamento Mapeamento MongoDB Databases Queries Entity Relationship Mapping CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
dc.subject.eng.fl_str_mv |
MongoDB Databases Queries Entity Relationship Mapping |
dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
description |
Databases and database systems are essential to modern life. In a scenario of increasing data handling arose the need to find newer ways to store and process data that are able to cope with the rapid evolution of society. NoSQL databases are an alternative to this scenario but the lack of standard between each database implementation increases the difficulty to perform some tasks when compared to a SQL database. To solve this problem, this paper increments the work of Noguera e Lucrédio (2019), using the query language it improves the join operation and implements the operations Cartesian Product, Selection and Projection that were proposed by Parent e Spaccapietra (1984). In order to make the metamodel creation process more friendly, a textual representation was created for the metamodels and a parser for generating code compatible with the algorithm. Two software systems were analyzed to validate the MongoDB code generated by the algorithm and to check if the query result conforms to the structure defined by the algebra. The query performance was also analyzed, comparing it to the performance of queries that were handcrafted by a Software Engineer. This paper shows that the ER algebra is compatible with document-oriented NoSQL databases and that automated query generation does not significantly affects performance. |
publishDate |
2020 |
dc.date.accessioned.fl_str_mv |
2020-08-14T17:51:29Z |
dc.date.available.fl_str_mv |
2020-08-14T17:51:29Z |
dc.date.issued.fl_str_mv |
2020-04-09 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
CABRAL, João Vitor Lopes. Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho. 2020. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2020. Disponível em: https://repositorio.ufscar.br/handle/ufscar/13159. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufscar.br/handle/ufscar/13159 |
identifier_str_mv |
CABRAL, João Vitor Lopes. Uma álgebra ER para consultas em bancos de dados NoSQL: implementação de operadores adicionais e análise de desempenho. 2020. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2020. Disponível em: https://repositorio.ufscar.br/handle/ufscar/13159. |
url |
https://repositorio.ufscar.br/handle/ufscar/13159 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.confidence.fl_str_mv |
600 600 |
dc.relation.authority.fl_str_mv |
3b1d5172-8bf0-4d0b-8777-ab82599bbf09 |
dc.rights.driver.fl_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação - PPGCC |
dc.publisher.initials.fl_str_mv |
UFSCar |
publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSCAR instname:Universidade Federal de São Carlos (UFSCAR) instacron:UFSCAR |
instname_str |
Universidade Federal de São Carlos (UFSCAR) |
instacron_str |
UFSCAR |
institution |
UFSCAR |
reponame_str |
Repositório Institucional da UFSCAR |
collection |
Repositório Institucional da UFSCAR |
bitstream.url.fl_str_mv |
https://repositorio.ufscar.br/bitstream/ufscar/13159/1/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdf https://repositorio.ufscar.br/bitstream/ufscar/13159/2/comprovante-versao-final-assinado.jpeg https://repositorio.ufscar.br/bitstream/ufscar/13159/3/license_rdf https://repositorio.ufscar.br/bitstream/ufscar/13159/4/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdf.txt https://repositorio.ufscar.br/bitstream/ufscar/13159/5/Disserta%c3%a7%c3%a3o-Jo%c3%a3o-Vitor-Final-Revisada.pdf.jpg https://repositorio.ufscar.br/bitstream/ufscar/13159/6/comprovante-versao-final-assinado.jpeg.jpg |
bitstream.checksum.fl_str_mv |
a8702ee4f483933cad215fc4967c6074 787a1ae6ed014f4407b79636c665de81 e39d27027a6cc9cb039ad269a5db8e34 1e3533f3e08b4635da8ae9509d742650 f1d3104a4b1e8d51c1bdb8626a1f79ce 4faea9459f97b59059ecfcfa252de007 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR) |
repository.mail.fl_str_mv |
|
_version_ |
1813715617583202304 |