{"id":33363,"date":"2019-10-31T21:52:11","date_gmt":"2019-10-31T18:52:11","guid":{"rendered":"https:\/\/prohoster.info\/blog\/chto-sejchas-proishodit-s-rdf-hranilishhami\/"},"modified":"2019-10-31T21:52:11","modified_gmt":"2019-10-31T18:52:11","slug":"chto-sejchas-proishodit-s-rdf-hranilishhami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","title":{"rendered":"Cosa sta succedendo ora con i repository RDF?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Il Semantic Web e i Linked Data sono simili allo spazio vicino: non c'\u00e8 vita l\u00ec. Per intraprendere un viaggio di durata decente\u2026 beh, non so cosa ti abbiano detto da bambino in risposta a \"voglio diventare un astronauta\". Ma \u00e8 possibile osservare ci\u00f2 che accade anche rimanendo sulla Terra; diventare un astronomo amatoriale o persino professionale \u00e8 molto pi\u00f9 facile.<\/p>\n<p><\/p>\n<p>L'articolo parler\u00e0 delle tendenze fresche, recenti e non pi\u00f9 vecchie di pochi mesi, nel mondo degli archivi RDF. La metafora nel primo paragrafo \u00e8 stata ispirata da un'immagine pubblicitaria di dimensioni epiche sotto il tag.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<b class=\"spoiler_title\">Immagine epica<\/b><\/p>\n<p><img decoding=\"async\" alt=\"Cosa sta succedendo ora con i repository RDF?\" src=\"\/wp-content\/uploads\/2019\/05\/3d157fb2f771f3dc622dacc8dab0a9ee.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h2 id=\"i-graphql-dlya-dostupa-k-rdf\">I. GraphQL per l'accesso a RDF<\/h2>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.zdnet.com\/article\/graphql-for-databases-a-layer-for-universal-database-access\/\">Si dice<\/a><\/noindex>, che GraphQL aspira a diventare un linguaggio universale per l'accesso ai database. Ma qual \u00e8 la situazione riguardo alla possibilit\u00e0 di accesso a RDF utilizzando GraphQL?<\/p>\n<p><\/p>\n<p>Questa possibilit\u00e0 \u00e8 fornita \"out of the box\":<\/p>\n<p><\/p>\n<ul>\n<li>Stardog (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/graphql-and-paths\/\">blog<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_executing_graphql_queries\">documentazione<\/a><\/noindex>);<\/li>\n<li>prodotti TopQuadrant (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.topquadrant.com\/2018\/07\/05\/graphql-webinar\/\">un webinar<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.topquadrant.com\/technology\/graphql\/\">documentazione<\/a><\/noindex>).<\/li>\n<\/ul>\n<p><\/p>\n<p>Se un archivio non offre tale possibilit\u00e0, \u00e8 possibile implementarla autonomamente, scrivendo un \"risolutore\" (resolver) corrispondente. \u00c8 quanto hanno fatto, ad esempio, nel progetto francese <noindex><a rel=\"nofollow\" href=\"https:\/\/framagit.org\/datatourisme\/api\/tree\/master\/src\/Resolver\">DataTourisme<\/a><\/noindex>. Oggi \u00e8 possibile non scrivere nulla e semplicemente utilizzare <noindex><a rel=\"nofollow\" href=\"https:\/\/www.hypergraphql.org\/\">HyperGraphQL<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>. Dal punto di vista di un ortodosso sostenitore del Semantic Web e dei Linked Data, tutto ci\u00f2 \u00e8 chiaramente triste, poich\u00e9 sembra destinato a integrazioni costruite attorno a ulteriori data silo, piuttosto che a piattaforme (naturalmente, archivi RDF) adeguate.<\/p>\n<p><\/p>\n<p>Le impressioni sul confronto tra GraphQL e SPARQL rimangono contrastanti.<\/p>\n<p><\/p>\n<ul>\n<li>Da un lato, GraphQL appare un parente lontano di SPARQL: affronta i problemi tipici del REST, come la sotto-selezione e la molteplicit\u00e0 delle richieste \u2014 senza i quali, probabilmente, non si potrebbe nemmeno considerare <em>un linguaggio di query<\/em>, anche solo per il web;<\/li>\n<li>D'altra parte, la rigidit\u00e0 dello schema di GraphQL \u00e8 deludente. Pertanto, la sua \"introspezione\" sembra molto limitata rispetto alla piena riflessivit\u00e0 di RDF. Inoltre, non esiste alcun analogo dei property paths, quindi non \u00e8 nemmeno chiaro perch\u00e9 si chiami \"Graph-\".<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"ii-adaptery-k-mongodb\">II. Adattatori per MongoDB<\/h2>\n<p><\/p>\n<p>Una tendenza complementare alla precedente.<\/p>\n<p><\/p>\n<ul>\n<li>In Stardog ora <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/native-mongodb-support-is-here\/\">\u00e8 possibile<\/a><\/noindex> \u2014 in particolare, tutto su GraphQL \u2014 \u00e8 possibile configurare la visualizzazione dei dati MongoDB in grafi RDF virtuali;<\/li>\n<li>GraphDB di recente <noindex><a rel=\"nofollow\" href=\"http:\/\/graphdb.ontotext.com\/documentation\/8.8\/standard\/integrating-graphdb-with-mongodb.html\">permette<\/a><\/noindex> consente di inserire frammenti di query MongoDB in SPARQL.<\/li>\n<\/ul>\n<p><\/p>\n<p>Parlando in termini pi\u00f9 ampi, riguardo agli adattatori alle fonti JSON, che permettono di rappresentare pi\u00f9 o meno \"al volo\" il JSON contenuto in queste fonti come RDF, si pu\u00f2 ricordare anche il gi\u00e0 esistente <noindex><a rel=\"nofollow\" href=\"https:\/\/ci.mines-stetienne.fr\/sparql-generate\/\">SPARQL Generate<\/a><\/noindex>, che pu\u00f2 essere adattato <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/sparql-generate\/sparql-generate\">ad esempio<\/a><\/noindex>, ad Apache Jena.<\/p>\n<p><\/p>\n<p>Riassumendo le prime due tendenze, si pu\u00f2 dire che gli archivi RDF dimostrano piena disponibilit\u00e0 per integrazioni e funzionamento in condizioni di \"storage polivalente\" (polyglot persistence). \u00c8 noto, tuttavia, che quest'ultimo non \u00e8 pi\u00f9 di moda, e al suo posto <noindex><a rel=\"nofollow\" href=\"https:\/\/www.gartner.com\/en\/documents\/3105622\">sta arrivando<\/a><\/noindex> la multimodalit\u00e0. Ma qual \u00e8 la situazione con la multimodalit\u00e0 nel mondo degli archivi RDF?<\/p>\n<p><\/p>\n<p>In breve, non c'\u00e8 nulla. Meriterebbe un articolo a parte dedicato ai DBMS multimodali, ma per ora si pu\u00f2 notare che al momento non esistono DBMS multimodali \"basati\" sul modello a grafo (una variet\u00e0 di esso pu\u00f2 essere considerato RDF). Si parler\u00e0 di una certa piccola multimodalit\u00e0 \u2014 supporto per i modelli grafici alternativi LPG da parte degli archivi RDF \u2014 nella <noindex><a rel=\"nofollow\" href=\"#v-podderzhka-lpg\">sezione V<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h2 id=\"iii-oltp-vs-olap\">III. OLTP vs. OLAP<\/h2>\n<p><\/p>\n<p>Tuttavia, lo stesso Gartner <noindex><a rel=\"nofollow\" href=\"https:\/\/www.gartner.com\/en\/documents\/3467318\">scrive<\/a><\/noindex>, afferma che la multimodalit\u00e0 \u00e8 una condizione sine qua non prima di tutto per <em>DBMS operativi.<\/em> E questo \u00e8 comprensibile: nella situazione dello \"storage polivalente\" sorgono le principali problematiche legate alla transazionalit\u00e0.<\/p>\n<p><\/p>\n<p>Ma dove si collocano gli archivi RDF sulla scala OLTP-OLAP? Risponderei cos\u00ec: n\u00e9 qui, n\u00e9 l\u00ec. Per identificare ci\u00f2 per cui sono destinati, serve un'altra abbreviazione. Come opzione, proporrei <em>OLIP<\/em> \u2014 Online Intellectual Processing.<\/p>\n<p><\/p>\n<p>Tuttavia,<\/p>\n<p><\/p>\n<ul>\n<li>meccanismi di integrazione realizzati in GraphDB con MongoDB sono progettati non in ultimo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ontotext.com\/company\/news\/ontotexts-graphdb-8-8-0-enriches-the-knowledge-graph-experience\/\">per superare i problemi di prestazioni di scrittura;<\/a><\/noindex> Stardog va ancora oltre e riscrive completamente<\/li>\n<li>il motore, ancora una volta con l'obiettivo di aumentare le prestazioni di scrittura. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/announcing-stardog-7-beta\/\">E ora permettetemi di presentarvi un nuovo attore sul mercato. Dalla creatrice di IBM Netezza e Amazon Redshift \u2014<\/a><\/noindex> motore, ancora una volta con l'obiettivo di migliorare le prestazioni di scrittura.<\/li>\n<\/ul>\n<p><\/p>\n<p>E ora permettetemi di presentarvi un nuovo attore sul mercato, dai creatori di IBM Netezza e Amazon Redshift \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cambridgesemantics.com\/product\/anzograph\/\">AnzoGraph<\/a><\/noindex>. L'immagine nella pubblicit\u00e0 del prodotto basata su di esso \u00e8 stata pubblicata all'inizio dell'articolo. AnzoGraph si posiziona come una soluzione GOLAP. Che ne pensate di SPARQL con funzioni di finestra? \u2014<\/p>\n<p><\/p>\n<pre><code class=\"sql\">SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE {  \u2026  }<\/code><\/pre>\n<p><\/p>\n<h2 id=\"iv-rocksdb\">IV. RocksDB<\/h2>\n<p><\/p>\n<p>Gi\u00e0 in precedenza <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/announcing-stardog-7-beta\/\">\u00e8 stato fatto riferimento<\/a><\/noindex> all'annuncio di Stardog 7 Beta, dove si affermava che Stardog intende utilizzare come sistema di archiviazione sottostante RocksDB \u2014 un archivio \"chiave-valore\", il fork di Facebook di LevelDB di Google. Perch\u00e9 gi\u00e0 ora si deve parlare di una certa tendenza?<\/p>\n<p><\/p>\n<p>In primo luogo, a giudicare da <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/RocksDB#Alternative_backend\">un articolo su Wikipedia<\/a><\/noindex>, gli archivi RDF non sono gli unici a \"trasferirsi\" su RocksDB. Ci sono progetti che utilizzano RocksDB come motore di archiviazione in ArangoDB, MongoDB, MySQL e MariaDB, Cassandra.<\/p>\n<p><\/p>\n<p>In secondo luogo, su RocksDB stanno nascendo progetti (cio\u00e8 non prodotti) di corrispondente tematica.<\/p>\n<p><\/p>\n<p>Ad esempio, eBay utilizza RocksDB nella <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/eBay\/beam\">piattaforma<\/a><\/noindex> per il suo \u00abgrafo della conoscenza\u00bb. A proposito, \u00e8 divertente leggere: <em>il linguaggio di query \u00e8 iniziato come un formato sviluppato internamente, ma pi\u00f9 recentemente \u00e8 stato in fase di transizione per assomigliare molto di pi\u00f9 a SPARQL<\/em>. Come in una barzelletta: per quanto facciamo un knowledge graph, alla fine risulta sempre un RDF.<\/p>\n<p><\/p>\n<p>Un altro esempio \u00e8 il recente <noindex><a rel=\"nofollow\" href=\"https:\/\/www.wikidata.org\/wiki\/Wikidata:History_Query_Service\">Wikidata History Query Service<\/a><\/noindex>. Prima della sua introduzione, per ottenere informazioni storiche da Wikidata era necessario ricorrere a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.mediawiki.org\/wiki\/Wikidata_Query_Service\/User_Manual\/MWAPI\">MWAPI<\/a><\/noindex> attraverso il standard Mediawiki API. Ora molto \u00e8 possibile con puro SPARQL. \u00abSotto il cofano\u00bb c'\u00e8 di nuovo RocksDB. A proposito, sembra che WDHQS sia stato creato da qualcuno che si \u00e8 occupato dell'importazione di Freebase nel Google Knowledge Graph.<\/p>\n<p><\/p>\n<h2 id=\"v-podderzhka-lpg\">V. Supporto LPG<\/h2>\n<p><\/p>\n<p>Ricordo la principale differenza tra i grafi LPG e i grafi RDF.<\/p>\n<p><\/p>\n<p>Negli LPG, le istanze degli archi possono avere propriet\u00e0 scalari, mentre negli RDF possono essere assegnate solo ai \u00abtipi\u00bb degli archi (ma non solo propriet\u00e0 scalari, ma anche relazioni comuni). Questo limite degli RDF rispetto agli LPG <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/swbp-n-aryRelations\/\">\u00e8 superato<\/a><\/noindex> con varie tecniche di modellazione. Tuttavia, la limitazione degli LPG rispetto agli RDF \u00e8 pi\u00f9 complessa da superare, ma i grafi LPG somigliano di pi\u00f9 a immagini del manuale di Harari, quindi le persone li preferiscono.<\/p>\n<p><\/p>\n<p>Evidentemente, il compito di \u00absupportare LPG\u00bb si suddivide in due parti:<\/p>\n<p><\/p>\n<ol>\n<li>l'inserimento nella model RDF di modifiche che permettano di imitare le strutture LPG;<\/li>\n<li>e modifiche al linguaggio di query RDF che consentano l'accesso ai dati in questo modello modificato, o la realizzazione della possibilit\u00e0 di fare query in linguaggi di query popolari per LPG.<\/li>\n<\/ol>\n<p><\/p>\n<h3 id=\"v1--model-dannyh\">V.1. Modello di dati<\/h3>\n<p><\/p>\n<p>Ci sono diversi approcci possibili.<\/p>\n<p><\/p>\n<p><strong>V.1.1. Singleton Property<\/strong><\/p>\n<p><\/p>\n<p>L'approccio pi\u00f9 letterale per armonizzare RDF e LPG \u00e8 probabilmente <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ncbi.nlm.nih.gov\/pmc\/articles\/PMC4350149\/\">singleton property<\/a><\/noindex>:<\/p>\n<p><\/p>\n<ul>\n<li>Invece, ad esempio, del predicato <code>:isMarriedTo<\/code> si usano i predicati <code>:isMarriedTo1<\/code>, <code>:isMarriedTo2<\/code> ecc.<\/li>\n<li>Poi questi predicati diventano soggetti di nuovi triplet: <code>:isMarriedTo1 :dal &quot;2013-09-13&quot;^^xsd:date<\/code> e cos\u00ec via.<\/li>\n<li>La connessione di questi istanti predicati con il predicato comune viene stabilita tramite triplet di tipo <code>:isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo<\/code>.<\/li>\n<li>\u00c8 ovvio che <code>rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type<\/code>, ma pensate a perch\u00e9 non dovremmo semplicemente scrivere <code>:isMarriedTo1 rdf:type :isMarriedTo<\/code>.<\/li>\n<\/ul>\n<p><\/p>\n<p>Il compito di \u00absupportare LPG\u00bb qui viene risolto a livello di RDFS. Questa soluzione richiede modifiche ai corrispondenti <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/rdf-schema\/\">standard<\/a><\/noindex>. Potrebbero essere necessarie alcune modifiche dai repository RDF che supportano l'assemblaggio delle conseguenze, ma al momento Singleton Property pu\u00f2 essere visto semplicemente come un'altra tecnica di modellazione.<\/p>\n<p><\/p>\n<p><strong>V.1.2. Reification Done Right<\/strong><\/p>\n<p><\/p>\n<p>Approcci meno naif derivano dalla consapevolezza che le istanze delle propriet\u00e0 possono essere instantiate da triplet. Avere la possibilit\u00e0 di dire qualcosa sui triplet ci permette di dire qualcosa anche sulle istanze delle propriet\u00e0.<\/p>\n<p><\/p>\n<p>Il pi\u00f9 solido di questi approcci \u00e8 <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1409.3288\">RDF*<\/a><\/noindex>, anche noto come RDR, <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.blazegraph.com\/wiki\/index.php\/Reification_Done_Right\">nato<\/a><\/noindex> nel contesto di Blazegraph. Sin dall'inizio <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.cambridgesemantics.com\/anzograph\/userdoc\/lpgs.htm\">\u00e8 stato scelto<\/a><\/noindex> da AnzoGraph. La solidit\u00e0 dell'approccio \u00e8 definita dal fatto che nel suo ambito <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1406.3399\">sono offerti<\/a><\/noindex> le modifiche corrispondenti a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/rdf11-mt\/\">RDF Semantics<\/a><\/noindex>. Tuttavia, la sostanza \u00e8 estremamente semplice. Nella serializzazione Turtle di RDF, ora \u00e8 possibile scrivere all'incirca cos\u00ec:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">&lt;&lt;:bob :isMarriedTo :alice&gt;&gt; :dal &quot;2013-09-13&quot;^^xsd:date .<\/code><\/pre>\n<p><\/p>\n<p><strong>V.1.3. Altri approcci<\/strong><\/p>\n<p><\/p>\n<p>Non \u00e8 necessario preoccuparsi della semantica formale, ma si pu\u00f2 semplicemente pensare che i triplet abbiano alcuni identificatori, che sono naturalmente URI, e comporre nuovi triplet con queste URI. Rimane solo da dare accesso a queste URI in SPARQL. Cos\u00ec <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_motivation_implementation\">da fonti interne e osservatori. Non ci sono dichiarazioni ufficiali al riguardo al momento.<\/a><\/noindex> Stardog. <\/p>\n<p><\/p>\n<p>In Allegrograph <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-attributes.html\">hanno adottato<\/a><\/noindex> una via intermedia. \u00c8 noto che gli identificatori dei triplet in Allegrograph <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-index.html\">ci siano<\/a><\/noindex>, ma nella realizzazione degli attributi triplet non sono esposti. Tuttavia, non si tratta nemmeno di semantica formale. \u00c8 interessante notare che gli attributi dei triplet non sono URI, e anche i valori di tali attributi possono essere solo letterali. Gli aderenti a LPG ottengono esattamente ci\u00f2 che desiderano. In un formato appositamente inventato NQX, un esempio che assomiglia a quello sopra per RDF* appare cos\u00ec:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">:bob :marriedTo :alice {&quot;dal&quot; : &quot;2013-09-13&quot;}<\/code><\/pre>\n<p><\/p>\n<h3 id=\"v2-yazyki-zaprosov\">V.2. Linguaggi di query<\/h3>\n<p><\/p>\n<p>Avendo supportato LPG in qualche modo a livello di modello, bisogna dare la possibilit\u00e0 di fare query ai dati in tale modello.<\/p>\n<p><\/p>\n<ul>\n<li>Blazegraph, per le query su RDF*, supporta <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.blazegraph.com\/wiki\/index.php\/Reification_Done_Right\">SPARQL*<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/blazegraph\/tinkerpop3\/blob\/master\/README.md\">Gremlin<\/a><\/noindex>. Una query su SPARQL* appare cos\u00ec:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\"> SELECT * { &lt;&gt; :since ?since }<\/code><\/pre>\n<p><\/p>\n<ul>\n<li>Anzograph supporta anche <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.cambridgesemantics.com\/anzograph\/userdoc\/lpgs.htm\">SPARQL*<\/a><\/noindex> e prevede di supportare <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cambridgesemantics.com\/cambridge-semantics-adds-opencypher-anzograph-2\/\">Cypher<\/a><\/noindex>, il linguaggio di query di Neo4j. <\/li>\n<li>Stardog supporta il proprio <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_integration_with_sparql_2\">estensione<\/a><\/noindex> SPARQL e <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_example_2\">di nuovo<\/a><\/noindex> Gremlin. \u00c8 possibile ottenere in SPARQL l'URI di un triplet e le \u00abmeta-informazioni\u00bb con un costrutto simile a questo:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\">SELECT * {\n    BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)\n    ?id :since ?since\n}<\/code><\/pre>\n<p><\/p>\n<ul>\n<li>Anche Allegrograph supporta il proprio <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-attributes.html#Querying-Attributes-using-SPARQL\">estensione<\/a><\/noindex> SPARQL:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\"> SELECT * { (&quot;dal&quot; ?since)  franz:attributesNameValue  ( :bob :marriedTo ?wife ) }<\/code><\/pre>\n<p><\/p>\n<p>A proposito, GraphDB ha supportato per un certo tempo Tinkerpop\/Gremlin, senza per\u00f2 supportare LPG, ma nella versione 8.0 o 8.1 questo \u00e8 stato interrotto.<\/p>\n<p><\/p>\n<h2 id=\"vi-uzhestochenie-licenziy\">VI. Inasprimento delle licenze<\/h2>\n<p><\/p>\n<p>Non ci sono stati recenti sviluppi tra le intersezioni di \"triplestore of choice\" e \"open source triplestore\". I nuovi repository RDF open source non sono ancora considerati una buona opzione per l'uso quotidiano, e il codice sorgente dei nuovi repository RDF che si vorrebbero esplorare (come AnzoGraph) \u00e8 chiuso. Pi\u00f9 che altro, si pu\u00f2 parlare di diminuzioni...<\/p>\n<p><\/p>\n<p>Naturalmente, un codice sorgente aperto non viene mai chiuso, ma alcuni repository open source stanno gradualmente smettendo di essere considerati scelte valide. Virtuoso, che ha una versione open source, a mio avviso, \u00e8 pieno di bug. Blazegraph \u00e8 stato acquistato da AWS ed \u00e8 alla base di Amazon Neptune; ora non \u00e8 chiaro se ci sar\u00e0 un altro rilascio. Rimane solo Jena...<\/p>\n<p><\/p>\n<p>Se invece il codice sorgente open non \u00e8 molto importante e si vuol solo provare, la situazione non \u00e8 affatto rosea come prima. Ad esempio:<\/p>\n<p><\/p>\n<ul>\n<li>Stardog <noindex><a rel=\"nofollow\" href=\"https:\/\/community.stardog.com\/t\/update-to-enterprise-and-community-trials\/1533\">sospende<\/a><\/noindex> distribuir\u00e0 una versione gratuita (in realt\u00e0, il periodo di prova standard \u00e8 raddoppiato);<\/li>\n<li>in <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.ontotext.com\/\">GraphDB Cloud<\/a><\/noindex>, dove in precedenza era possibile scegliere un piano base gratuito, la registrazione di nuovi utenti \u00e8 stata sospesa.<\/li>\n<\/ul>\n<p><\/p>\n<p>In generale, per l'IT medio, lo spazio diventa sempre pi\u00f9 inaccessibile, la sua esplorazione \u00e8 riservata alle corporazioni.<\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/451206\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430\u00a0\u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb. \u041d\u043e \u043f\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0417\u0435\u043c\u043b\u0435; \u0441\u0442\u0430\u0442\u044c \u0430\u0441\u0442\u0440\u043e\u043d\u043e\u043c\u043e\u043c-\u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u043c \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u0441\u0432\u0435\u0436\u0438\u0445, \u043d\u0435 \u0441\u0442\u0430\u0440\u0435\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25082,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33363","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb. \u041d\u043e \u043f\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0417\u0435\u043c\u043b\u0435; \u0441\u0442\u0430\u0442\u044c \u0430\u0441\u0442\u0440\u043e\u043d\u043e\u043c\u043e\u043c-\u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u043c \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u0441\u0432\u0435\u0436\u0438\u0445, \u043d\u0435 \u0441\u0442\u0430\u0440\u0435\u0435\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0427\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 RDF-\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u043c\u0438? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb. \u041d\u043e \u043f\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0417\u0435\u043c\u043b\u0435; \u0441\u0442\u0430\u0442\u044c \u0430\u0441\u0442\u0440\u043e\u043d\u043e\u043c\u043e\u043c-\u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u043c \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u0441\u0432\u0435\u0436\u0438\u0445, \u043d\u0435 \u0441\u0442\u0430\u0440\u0435\u0435\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:52:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:52:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Cosa sta succedendo ora con i repository RDF? | ProHoster","description":"Il Semantic Web e i Linked Data sono simili allo spazio vicino: non c'\u00e8 vita l\u00ec. Per partire per un periodo di tempo pi\u00f9 o meno lungo... beh, non so cosa vi dicessero da bambini in risposta a \"voglio diventare astronauta\". Ma \u00e8 possibile osservare ci\u00f2 che accade anche rimanendo sulla Terra; diventare un astronomo dilettante o persino professionale \u00e8 molto pi\u00f9 facile. Questo articolo discuter\u00e0 delle novit\u00e0, non pi\u00f9 vecchie","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0427\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 RDF-\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u043c\u0438? | ProHoster","og:description":"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb. \u041d\u043e \u043f\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0417\u0435\u043c\u043b\u0435; \u0441\u0442\u0430\u0442\u044c \u0430\u0441\u0442\u0440\u043e\u043d\u043e\u043c\u043e\u043c-\u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u043c \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u0441\u0432\u0435\u0436\u0438\u0445, \u043d\u0435 \u0441\u0442\u0430\u0440\u0435\u0435","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:52:11+00:00","article:modified_time":"2019-10-31T18:52:11+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33363","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 14:56:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:42:22","updated":"2026-01-21 14:56:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=33363"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33363\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/25082"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=33363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=33363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=33363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}