https://wiki.softwareheritage.org/api.php?action=feedcontributions&user=Abonifat&feedformat=atomSoftware Heritage Wiki - User contributions [en]2024-03-28T17:45:36ZUser contributionsMediaWiki 1.31.16https://wiki.softwareheritage.org/index.php?title=Graph_query_language_for_the_archive_(internship)&diff=1248Graph query language for the archive (internship)2020-02-17T08:13:53Z<p>Abonifat: </p>
<hr />
<div>{{Internship<br />
|description=The Software Heritage archive is structured as a graph (specifically, a [https://en.wikipedia.org/wiki/Merkle_tree Merkle DAG]) and is huge: tens of billion nodes, hundreds of billion edges.<br />
It has recently been verified that a compressed representation of the graph structure can fit in memory, whereas node/edge properties can be memory-mapped to secondary storage (see: [https://docs.softwareheritage.org/devel/swh-graph/ documentation] and in particular the paper referenced there).<br />
An [https://docs.softwareheritage.org/devel/swh-graph/api.html ad hoc API] is available to traverse the graph, with very limited querying capabilities.<br />
The goal of this internship is to experiment with the possibility of querying the archive graph via state-of-the-art [https://en.wikipedia.org/wiki/Graph_database#Graph_query-programming_languages graph query languages].<br />
The ideal outcome of the internship will be a prototype of query engine that answers queries on top of the compressed graph representation plus associated property maps.<br />
The tentative target platform for implementation is [https://neo4j.com/ Neo4j] extended with a compatibility layer for WebGraph [http://webgraph.di.unimi.it/docs/it/unimi/dsi/webgraph/ImmutableGraph.html ImmutableGraph], but other platforms might be considered during the internship.<br />
<br />
|skills=<br />
* Java development<br />
* Query languages for structured, semi-structured, or graph data (e.g., one or more among: SQL, Xquery, GraphQL, SPARQL, GQL, etc.)<br />
<br />
Will be considered a plus:<br />
* experience with graph databases (e.g., [https://neo4j.com/ Neo4j])<br />
<br />
|workplace=[https://liris.cnrs.fr/en LIRIS (Univ. Lyon 1, Lyon)] or [https://www.inria.fr/en/centre-inria-de-paris Inria Paris]<br />
<br />
|mentors=<br />
* [https://perso.liris.cnrs.fr/angela.bonifati/ Angela Bonifati] <angela.bonifati@univ-lyon1.fr><br />
* Stefano Zacchiroli <zack@upsilon.cc><br />
}}<br />
<br />
[[Category:Available internship]]</div>Abonifat