Ano de defesa: |
2017 |
Autor(a) principal: |
ALCKMIN, João Francisco Campos do Amaral Rennó |
Orientador(a): |
Não Informado pela instituição |
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: |
Não Informado pela instituição
|
Programa de Pós-Graduação: |
Programa de Pós-Graduação: Mestrado - Ciência e Tecnologia da Computação
|
Departamento: |
IESTI - Instituto de Engenharia de Sistemas e Tecnologia da Informação
|
País: |
Não Informado pela instituição
|
Link de acesso: |
https://repositorio.unifei.edu.br/jspui/handle/123456789/952
|
Resumo: |
Os avanços tecnológicos vêm tornando os sistemas de armazenamento de informações cada vez mais necessários. Conforme os sistemas evoluem e se tornam mais complexos, o número de objetos que precisam ser instanciados e persistidos aumenta consideravelmente. O framework ObInject surgiu a partir desta necessidade, realizando a persistência e indexação de uma larga quantidade de objetos de maneira transparente à aplicação com um desempenho superior aos frameworks comumente utilizados para este fim. A persistência dos objetos de uma aplicação Java de forma nativa sem a necessidade de mapeá-los em tabelas proporciona ao ObInject uma clara vantagem nos quesitos desempenho e escalabilidade em relação aos frameworks de persistência que fazem uso da técnica de mapeamento objeto-relacional, os chamados frameworks ORM. Contudo, o grau de usabilidade do framework ObInject era insuficiente para tornar sua adoção em massa uma realidade devido à complexidade inerente à manipulação de suas estruturas de dados, até que o surgimento da linguagem de consulta do ObInject (OIQL) tornou as operações de consulta mais acessíveis e intuitivas. A linguagem OIQL é uma linguagem de consulta baseada em métodos, porém muitos destes métodos ainda não foram implementados ou possuem uma implementação parcial apenas. Este trabalho tem por objetivo principal implementar os operadores de projeção e seleção através dos métodos da linguagem select e where, respectivamente. Objetivos secundários incluem a implementação dos operadores lógicos de conjunção e disjunção e a melhoria da estrutura interna do framework ObInject. Os experimentos realizados ao final do trabalho validaram as mudanças na estrutura interna do framework e em sua linguagem de consulta, confirmando um desempenho superior em relação às alternativas. |
---|