Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional

Detalhes bibliográficos
Autor(a) principal: Lima, Jociane Franzoni de
Data de Publicação: 2017
Outros Autores: Moura, Lucas Penha de
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
Texto Completo: http://repositorio.utfpr.edu.br/jspui/handle/1/8164
Resumo: Os bancos de dados não-relacionais (NoSQL) vieram ao mercado como solução para problemas que necessitam de grande escalabilidade e disponibilidade em banco de dados. Este paradigma de armazenamento de dados é capaz de proporcionar grande desempenho em armazenamento de dados em grande escala. É por esta razão que vem crescendo muito o uso deste tipo de banco de dados em aplicações corporativas. Identifica-se atualmente uma demanda de aplicações que testem a viabilidade de migração de sistemas de um banco de dados relacional para um NoSQL e com isso verificar o desempenho em termos de tempo de realização de operações sobre os dois paradigmas distintos, verificando a vantagem ou não desta migração, além da análise de complexidade de implementação para esta migração. A motivação para a realização deste projeto é auxiliar a comunidade desenvolvedora a verificar a eficiência e facilidade de migração entre bancos com paradigmas distintos de armazenamento sem que tenha necessidade de reescrita do código, visando economia de tempo e custos. O objetivo deste projeto é testar a camada de persistência para bancos de dados relacionais e não-relacionais, visando identificar a viabilidade da migração entre bases de dados em sistemas legados. O projeto utilizou dois bancos de dados específicos, MySQL (relacional) e MongoDB (NoSQL) executando sobre uma arquitetura centralizada. A metodologia utilizada neste projeto foi a espiral, na qual repete-se os passos de pesquisa, implementação, testes e análise, até que os resultados finais sejam os especificados. Foi desenvolvido inicialmente uma aplicação destinada para executar sobre um banco de dados relacional, como a maior parte dos sistemas corporativos existentes, utilizando camada de persistência para realizar as operações sobre este banco. Após esta etapa foi realizado a conexão com um banco de dados NoSQL, sem modificar o código do software. A única modificação realizada foi na camada de persistência para realizar operações sobre o novo banco. Ao verificar que a camada de persistência consegue lidar com os dois paradigmas de armazenamento de dados totalmente distintos, foram realizados testes para verificar se além de suportar esta migração a camada de persistência é capaz ou não de manter um desempenho satisfatório,com isto foi feita uma análise da extração de resultados destes testes para também verificar a vantagem ou não desta migração por meio de camadas de persistência dando enfoque no desempenho.
id UTFPR-12_93eb6cbcde02282d531437d0f701126f
oai_identifier_str oai:repositorio.utfpr.edu.br:1/8164
network_acronym_str UTFPR-12
network_name_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository_id_str
spelling 2020-11-11T13:42:35Z2020-11-11T13:42:35Z2017-12-08LIMA, Jociane Franzoni de. MOURA; Lucas Penha de. Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional. 2017. 85 f. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Curitiba, 2017.http://repositorio.utfpr.edu.br/jspui/handle/1/8164Os bancos de dados não-relacionais (NoSQL) vieram ao mercado como solução para problemas que necessitam de grande escalabilidade e disponibilidade em banco de dados. Este paradigma de armazenamento de dados é capaz de proporcionar grande desempenho em armazenamento de dados em grande escala. É por esta razão que vem crescendo muito o uso deste tipo de banco de dados em aplicações corporativas. Identifica-se atualmente uma demanda de aplicações que testem a viabilidade de migração de sistemas de um banco de dados relacional para um NoSQL e com isso verificar o desempenho em termos de tempo de realização de operações sobre os dois paradigmas distintos, verificando a vantagem ou não desta migração, além da análise de complexidade de implementação para esta migração. A motivação para a realização deste projeto é auxiliar a comunidade desenvolvedora a verificar a eficiência e facilidade de migração entre bancos com paradigmas distintos de armazenamento sem que tenha necessidade de reescrita do código, visando economia de tempo e custos. O objetivo deste projeto é testar a camada de persistência para bancos de dados relacionais e não-relacionais, visando identificar a viabilidade da migração entre bases de dados em sistemas legados. O projeto utilizou dois bancos de dados específicos, MySQL (relacional) e MongoDB (NoSQL) executando sobre uma arquitetura centralizada. A metodologia utilizada neste projeto foi a espiral, na qual repete-se os passos de pesquisa, implementação, testes e análise, até que os resultados finais sejam os especificados. Foi desenvolvido inicialmente uma aplicação destinada para executar sobre um banco de dados relacional, como a maior parte dos sistemas corporativos existentes, utilizando camada de persistência para realizar as operações sobre este banco. Após esta etapa foi realizado a conexão com um banco de dados NoSQL, sem modificar o código do software. A única modificação realizada foi na camada de persistência para realizar operações sobre o novo banco. Ao verificar que a camada de persistência consegue lidar com os dois paradigmas de armazenamento de dados totalmente distintos, foram realizados testes para verificar se além de suportar esta migração a camada de persistência é capaz ou não de manter um desempenho satisfatório,com isto foi feita uma análise da extração de resultados destes testes para também verificar a vantagem ou não desta migração por meio de camadas de persistência dando enfoque no desempenho.Non-relational databases emerged as a solution to problems that need great scalability and availability to store data. This data storage paradigm is capable to provide great performance in data storage large scale. For this reason, the use of this paradigm has grown a lot in corporate applications. Nowadays there is a demand for systems migrations feasibility testing applications from relational to non-relational databases to verify the performance of the two distinguished data storage paradigm, verifying the advantage of this migration, besides the feasibility of implementation time and complexity for this migration. The motivation to execute this project is to help the developers community to verify the efficiency ans easiness of the migration between databases with different data store paradigms without the need to rewrite the source code, aiming to save time and costs. The objective of this project is to test the persistence layer for the relational and non-relational databases to identify the viability of migration between database in legacy systems. The methodology used in this project was the spiral, in which repeats the search, implementation, tests and analysis steps until the results are as specified. An application was initially developed to run on a relational database, such as most existing corporate systems, using the persistence layer to perform operations in the initial database. After this step, was performed a connection with a non-relational database without modifying the software code. The only change was made in the persistence layer, so it can perform operations in the new database. When verifying that the persistence layer is able to handle the two storage paradigm, tests were performed to verify if the persistence layer is able to maintain a satisfactory performance with the new database. An analisys was made with the data generated in the tests to verify the viability to migrate databases with diferents paradigms only changing the persistence layer with a focus on performance.porUniversidade Tecnológica Federal do ParanáCuritibaEngenharia de ComputaçãoUTFPRBrasilCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOBanco de dadosBanco de dados não relacionaisEstudos de viabilidadeArmazenamento de dadosEngenharia de softwareComputaçãoData basesNon-relational databasesFeasibility studiesData WarehousingSoftware engineeringComputer scienceAnálise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacionalPerformance analisys of the persistence layer in relational and non-relational databasesinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisCuritibaBueno, Paulo RobertoAlmeida, Leandro Batista deGomes Junior, Luiz CelsoBerardi, Rita Cristina GalarragaBueno, Paulo RobertoLima, Jociane Franzoni deMoura, Lucas Penha deinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))instname:Universidade Tecnológica Federal do Paraná (UTFPR)instacron:UTFPRORIGINALCT_COENC_2017_2_9.pdfapplication/pdf1288084http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/1/CT_COENC_2017_2_9.pdf2d512e69051edd492a6a6eae55b05d99MD51LICENSElicense.txttext/plain1290http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/2/license.txtb9d82215ab23456fa2d8b49c5df1b95bMD52TEXTCT_COENC_2017_2_9.pdf.txtExtracted texttext/plain152737http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/3/CT_COENC_2017_2_9.pdf.txt6d35f9d1b2434f7d21a55f1c95100f4aMD53THUMBNAILCT_COENC_2017_2_9.pdf.jpgGenerated Thumbnailimage/jpeg1267http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/4/CT_COENC_2017_2_9.pdf.jpgcc76b7a606589283206cce5075e5e982MD541/81642020-11-11 11:42:35.9oai:repositorio.utfpr.edu.br:1/8164TmEgcXVhbGlkYWRlIGRlIHRpdHVsYXIgZG9zIGRpcmVpdG9zIGRlIGF1dG9yIGRhIHB1YmxpY2HDp8OjbywgYXV0b3Jpem8gYSBVVEZQUiBhIHZlaWN1bGFyLCAKYXRyYXbDqXMgZG8gUG9ydGFsIGRlIEluZm9ybWHDp8OjbyBlbSBBY2Vzc28gQWJlcnRvIChQSUFBKSBlIGRvcyBDYXTDoWxvZ29zIGRhcyBCaWJsaW90ZWNhcyAKZGVzdGEgSW5zdGl0dWnDp8Ojbywgc2VtIHJlc3NhcmNpbWVudG8gZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCBkZSBhY29yZG8gY29tIGEgTGVpIG5vIDkuNjEwLzk4LCAKbyB0ZXh0byBkZXN0YSBvYnJhLCBvYnNlcnZhbmRvIGFzIGNvbmRpw6fDtWVzIGRlIGRpc3BvbmliaWxpemHDp8OjbyByZWdpc3RyYWRhcyBubyBpdGVtIDQgZG8gCuKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgVHJhYmFsaG9zIGRlIENvbmNsdXPDo28gZGUgQ3Vyc28gZGUgR3JhZHVhw6fDo28gZSAKRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgZGUgSW5mb3JtYcOnw6NvIGUgbm9zIENhdMOhbG9nb3MgRWxldHLDtG5pY29zIGRvIApTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdLCBwYXJhIGZpbnMgZGUgbGVpdHVyYSwgaW1wcmVzc8OjbyBlL291IGRvd25sb2FkLCB2aXNhbmRvIGEgCmRpdnVsZ2HDp8OjbyBkYSBwcm9kdcOnw6NvIGNpZW50w61maWNhIGJyYXNpbGVpcmEuCgogIEFzIHZpYXMgb3JpZ2luYWlzIGUgYXNzaW5hZGFzIHBlbG8ocykgYXV0b3IoZXMpIGRvIOKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgClRyYWJhbGhvcyBkZSBDb25jbHVzw6NvIGRlIEN1cnNvIGRlIEdyYWR1YcOnw6NvIGUgRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgCmRlIEluZm9ybWHDp8OjbyBlIG5vcyBDYXTDoWxvZ29zIEVsZXRyw7RuaWNvcyBkbyBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdIGUgZGEg4oCcRGVjbGFyYcOnw6NvIApkZSBBdXRvcmlh4oCdIGVuY29udHJhbS1zZSBhcnF1aXZhZGFzIG5hIEJpYmxpb3RlY2EgZG8gQ8OibXB1cyBubyBxdWFsIG8gdHJhYmFsaG8gZm9pIGRlZmVuZGlkby4gCk5vIGNhc28gZGUgcHVibGljYcOnw7VlcyBkZSBhdXRvcmlhIGNvbGV0aXZhIGUgbXVsdGljw6JtcHVzLCBvcyBkb2N1bWVudG9zIGZpY2Fyw6NvIHNvYiBndWFyZGEgZGEgCkJpYmxpb3RlY2EgY29tIGEgcXVhbCBvIOKAnHByaW1laXJvIGF1dG9y4oCdIHBvc3N1YSB2w61uY3Vsby4KRepositório de PublicaçõesPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestopendoar:2020-11-11T13:42:35Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)false
dc.title.pt_BR.fl_str_mv Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
dc.title.alternative.pt_BR.fl_str_mv Performance analisys of the persistence layer in relational and non-relational databases
title Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
spellingShingle Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
Lima, Jociane Franzoni de
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Banco de dados
Banco de dados não relacionais
Estudos de viabilidade
Armazenamento de dados
Engenharia de software
Computação
Data bases
Non-relational databases
Feasibility studies
Data Warehousing
Software engineering
Computer science
title_short Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
title_full Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
title_fullStr Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
title_full_unstemmed Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
title_sort Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional
author Lima, Jociane Franzoni de
author_facet Lima, Jociane Franzoni de
Moura, Lucas Penha de
author_role author
author2 Moura, Lucas Penha de
author2_role author
dc.contributor.advisor1.fl_str_mv Bueno, Paulo Roberto
dc.contributor.advisor-co1.fl_str_mv Almeida, Leandro Batista de
dc.contributor.referee1.fl_str_mv Gomes Junior, Luiz Celso
dc.contributor.referee2.fl_str_mv Berardi, Rita Cristina Galarraga
dc.contributor.referee3.fl_str_mv Bueno, Paulo Roberto
dc.contributor.author.fl_str_mv Lima, Jociane Franzoni de
Moura, Lucas Penha de
contributor_str_mv Bueno, Paulo Roberto
Almeida, Leandro Batista de
Gomes Junior, Luiz Celso
Berardi, Rita Cristina Galarraga
Bueno, Paulo Roberto
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Banco de dados
Banco de dados não relacionais
Estudos de viabilidade
Armazenamento de dados
Engenharia de software
Computação
Data bases
Non-relational databases
Feasibility studies
Data Warehousing
Software engineering
Computer science
dc.subject.por.fl_str_mv Banco de dados
Banco de dados não relacionais
Estudos de viabilidade
Armazenamento de dados
Engenharia de software
Computação
Data bases
Non-relational databases
Feasibility studies
Data Warehousing
Software engineering
Computer science
description Os bancos de dados não-relacionais (NoSQL) vieram ao mercado como solução para problemas que necessitam de grande escalabilidade e disponibilidade em banco de dados. Este paradigma de armazenamento de dados é capaz de proporcionar grande desempenho em armazenamento de dados em grande escala. É por esta razão que vem crescendo muito o uso deste tipo de banco de dados em aplicações corporativas. Identifica-se atualmente uma demanda de aplicações que testem a viabilidade de migração de sistemas de um banco de dados relacional para um NoSQL e com isso verificar o desempenho em termos de tempo de realização de operações sobre os dois paradigmas distintos, verificando a vantagem ou não desta migração, além da análise de complexidade de implementação para esta migração. A motivação para a realização deste projeto é auxiliar a comunidade desenvolvedora a verificar a eficiência e facilidade de migração entre bancos com paradigmas distintos de armazenamento sem que tenha necessidade de reescrita do código, visando economia de tempo e custos. O objetivo deste projeto é testar a camada de persistência para bancos de dados relacionais e não-relacionais, visando identificar a viabilidade da migração entre bases de dados em sistemas legados. O projeto utilizou dois bancos de dados específicos, MySQL (relacional) e MongoDB (NoSQL) executando sobre uma arquitetura centralizada. A metodologia utilizada neste projeto foi a espiral, na qual repete-se os passos de pesquisa, implementação, testes e análise, até que os resultados finais sejam os especificados. Foi desenvolvido inicialmente uma aplicação destinada para executar sobre um banco de dados relacional, como a maior parte dos sistemas corporativos existentes, utilizando camada de persistência para realizar as operações sobre este banco. Após esta etapa foi realizado a conexão com um banco de dados NoSQL, sem modificar o código do software. A única modificação realizada foi na camada de persistência para realizar operações sobre o novo banco. Ao verificar que a camada de persistência consegue lidar com os dois paradigmas de armazenamento de dados totalmente distintos, foram realizados testes para verificar se além de suportar esta migração a camada de persistência é capaz ou não de manter um desempenho satisfatório,com isto foi feita uma análise da extração de resultados destes testes para também verificar a vantagem ou não desta migração por meio de camadas de persistência dando enfoque no desempenho.
publishDate 2017
dc.date.issued.fl_str_mv 2017-12-08
dc.date.accessioned.fl_str_mv 2020-11-11T13:42:35Z
dc.date.available.fl_str_mv 2020-11-11T13:42:35Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv LIMA, Jociane Franzoni de. MOURA; Lucas Penha de. Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional. 2017. 85 f. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Curitiba, 2017.
dc.identifier.uri.fl_str_mv http://repositorio.utfpr.edu.br/jspui/handle/1/8164
identifier_str_mv LIMA, Jociane Franzoni de. MOURA; Lucas Penha de. Análise de desempenho sobre camadas de persistência em banco de dados relacional e não-relacional. 2017. 85 f. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Computação) - Universidade Tecnológica Federal do Paraná, Curitiba, 2017.
url http://repositorio.utfpr.edu.br/jspui/handle/1/8164
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Curitiba
dc.publisher.program.fl_str_mv Engenharia de Computação
dc.publisher.initials.fl_str_mv UTFPR
dc.publisher.country.fl_str_mv Brasil
publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Curitiba
dc.source.none.fl_str_mv reponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
instname:Universidade Tecnológica Federal do Paraná (UTFPR)
instacron:UTFPR
instname_str Universidade Tecnológica Federal do Paraná (UTFPR)
instacron_str UTFPR
institution UTFPR
reponame_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
collection Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
bitstream.url.fl_str_mv http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/1/CT_COENC_2017_2_9.pdf
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/2/license.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/3/CT_COENC_2017_2_9.pdf.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/8164/4/CT_COENC_2017_2_9.pdf.jpg
bitstream.checksum.fl_str_mv 2d512e69051edd492a6a6eae55b05d99
b9d82215ab23456fa2d8b49c5df1b95b
6d35f9d1b2434f7d21a55f1c95100f4a
cc76b7a606589283206cce5075e5e982
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)
repository.mail.fl_str_mv
_version_ 1805922903229726720