Show simple item record

Professor Advisordc.contributor.advisorGutiérrez Gallardo, Claudio
Authordc.contributor.authorUrzúa Puentes, Valentina Belén 
Associate professordc.contributor.otherPino Urtubia, José
Associate professordc.contributor.otherTanter, Eric
Associate professordc.contributor.otherSeco Naveiras, Diego
Admission datedc.date.accessioned2021-08-31T19:27:58Z
Available datedc.date.available2021-08-31T19:27:58Z
Publication datedc.date.issued2021
Identifierdc.identifier.urihttps://repositorio.uchile.cl/handle/2250/181669
General notedc.descriptionTesis para optar al grado de Magíster en Ciencias, Mención Computaciónes_ES
Abstractdc.description.abstractG-CORE es un lenguaje de consulta de bases de datos de grafos. Una de sus características más novedosas es que es un lenguaje cerrado, pues se consultan grafos y se retorna grafos. Además, tiene la capacidad de expresar caminos como ciudadanos de primera clase, es decir, se puede manipular, operar y retornar caminos. Como muchos otros lenguajes de consulta, G-CORE no tiene recursión. Aunque las funcionalidades de caminos ayudan, todavía no son suficientes para expresar una amplia variedad de consultas, particularmente algoritmos de grafos clásicos como orden topológico, búsqueda en anchura (BFS), circuito Euleriano, árbol recubridor mínimo, etc. Para abordar este problema en esta tesis se extiende G-CORE con funcionalidades recursivas. Esto se ha hecho en otros lenguajes de consulta, por ejemplo en SQL y SPARQL, donde se han obtenido buenos resultados al aumentar su poder expresivo de forma amigable. Con ese objetivo, comenzamos por introducir una sintaxis y semántica para el nuevo operador recursivo. Dado que el modelo de datos de G-CORE es el de Path Property Graph, no es posible traducir directamente la recursión de SPARQL o de SQL. Lo anterior se debe a que la recursión de SQL y SPARQL está basada en la semántica de punto fijo, usando para ello la convergencia de una tabla auxiliar temporal que va creciendo hasta estabilizarse. En el caso de The Path Property Graph, el avance del proceso recursivo no siempre se corresponde con un crecimiento de algún grafo. Luego no se puede saber de manera precisa cual métrica seguir para evaluar la convergencia del grafo temporal a un punto fijo. Para abordar esto, proponemos una recursión general a través de una estructura externa que pudiera definir distintas métricas para medir el crecimiento y convergencia del grafo temporal. También mostramos cómo pueden ser codificadas las consultas clásicas de grafos añadiendo este nuevo operador recursivo. Finalmente repasamos las dificultades de implementar este nuevo operador en G-CORE y que otros operadores necesitan ser añadidos al lenguaje.es_ES
Lenguagedc.language.isoenes_ES
Publisherdc.publisherUniversidad de Chilees_ES
Type of licensedc.rightsAttribution-NonCommercial-NoDerivs 3.0 Chile*
Link to Licensedc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/cl/*
Keywordsdc.subjectAdministración de bases de datos
Keywordsdc.subjectGráficos por computador - Programas para computador
Keywordsdc.subjectSQL (Lenguaje de programación para computadores)
Keywordsdc.subjectSPARQL (Lenguaje de programación para computadores)
Títulodc.titleA general approach to recursion in G-Corees_ES
Document typedc.typeTesis
Catalogueruchile.catalogadorgmmes_ES
Departmentuchile.departamentoDepartamento de Ciencias de la Computaciónes_ES
Facultyuchile.facultadFacultad de Ciencias Físicas y Matemáticases_ES


Files in this item

Icon
Icon

This item appears in the following Collection(s)

Show simple item record

Attribution-NonCommercial-NoDerivs 3.0 Chile
Except where otherwise noted, this item's license is described as Attribution-NonCommercial-NoDerivs 3.0 Chile