SPARQL versus CYPHER: um estudo comparativo
Autor: | Moreira, Ezequiel José Veloso Ferreira |
---|---|
Přispěvatelé: | Ramalho, José Carlos, Universidade do Minho |
Jazyk: | portugalština |
Rok vydání: | 2020 |
Předmět: | |
Popis: | Dissertação de mestrado em Engenharia Informática Com a crescente necessidade de armazenar dados sobre forma digital as ontologias tornam-se cada vez mais relevantes como maneira simples de expressar conhecimento. Assim bases de dados capazes de guardar este tipo de estruturas de dados de modo eficaz, nomeadamente bases de dados orientadas a grafos, têm visto a sua utilização aumentar. Nesta dissertação foram estudados dois motores de base de dados deste tipo: o GraphDB (Ontotext (2020a)) e o Neo4j (Neo4j (2020)). GraphDB foi criado para armazenamento de ontologias Web: OWL (Group (2012)), SKOS (Group (2009)) e RDF (Group (2014)), podendo estas ser interrogadas através de SPARQL (W3C (2013a)), enquanto Neo4J foi desenhado para armazenar informação fortemente relacionada: grafos de informação dos quais as ontologias fazem parte, sendo CYPHER (Neo4J (2020b)) a linguagem de query utilizada para a sua exploração. Nesta dissertação estudou-se a viabilidade de armazenar ontologias em Neo4J e explorá-las utilizando CYPHER. Ao longo do processo da resolução deste problema foi determinado um segundo objectivo: criar uma camada tecnológica que permite o uso de SPARQL para interrogar o Neo4J. Nesse sentido foi realizado um estudo comparativo das duas linguagens, implementou-se um compilador capaz de traduzir um subconjunto de queries SPARQL em CYPHER e foi desenvolvida uma bateria de testes que permitem fazer o benchmark ing da tecnologia criada. Finalmente foi construído um protótipo Web que implementa uma frontend sobre o Neo4J de modo a permitir não só armazenar ontologias como interrogá-las através de SPARQL. With the growing need of storing data in the Web, ontologies are becoming more and more relevant as a simple way of expressing knowledge. As such, databases capable of storing such structures effectively, namely Graph Databases, have seen their use grown. In this dissertation we studied two Graph Database Engines: GraphDB (Ontotext (2020a)) and Neo4J (Neo4j (2020)). GraphDB was created to store Web based ontologies: OWL (Group (2012)), SKOS (Group (2009)) and RDF (Group (2014)), allowing for their querying through SPARQL (W3C (2013a)), while Neo4J was designed to store strongly linked data: information graphs of which ontologies are an example, with CYPHER (Neo4J (2020b)) as the query language for their exploration. In this dissertation we studied the viability to store ontologies using Neo4J and explore them through CYPHER. Exploring this second problem led to a second objective: the creation of a technological layer that allows the use of SPARQL queries in a Neo4J database. To do this a study was done to compare both languages, a compiler to translate a subset of SPARQL queries into CYPHER was implemented and a series of tests were made to allow the benchmarking of the developed tech. Finally a Web app prototype that implements a frontend over Neo4J and allows the storage of ontologies and their interrogation by SPARQL was created. |
Databáze: | OpenAIRE |
Externí odkaz: |