X'qed jiġri bil-ħażna RDF issa?

Il-Web Semantika u d-Dejta Linked huma bħall-ispazju ta’ barra: m’hemm l-ebda ħajja hemmhekk. Biex tmur hemm għal perjodu ta’ żmien bejn wieħed u ieħor twil... ma nafx x’qalulek bħala tifel bi tweġiba għal “Irrid insir astronawta.” Imma tista 'tosserva dak li qed jiġri waqt li tkun fid-Dinja; Huwa ħafna aktar faċli li ssir astronomu dilettanti jew saħansitra professjonist.

L-artikolu se jiffoka fuq tendenzi reċenti, mhux aktar minn diversi xhur, mid-dinja tal-ħażna RDF. Il-metafora fl-ewwel paragrafu hija ispirata mill-immaġni ta 'reklamar ta' daqs epiku taħt il-qatgħa.


Stampa epika

X'qed jiġri bil-ħażna RDF issa?

I. GraphQL għal aċċess RDF

Huma jgħiduli GraphQL għandu l-għan li jsir lingwa ta' aċċess għal database universali. Xi ngħidu dwar il-kapaċità li taċċessa l-RDF billi tuża GraphQL?

Barra mill-kaxxa din l-opportunità hija pprovduta minn:

Jekk ir-repożitorju ma jipprovdix opportunità bħal din, jista' jiġi implimentat b'mod indipendenti billi tikteb "solvent" xieraq. Dan huwa dak li għamlu, pereżempju, fil-proġett Franċiż DataTourisme. Jew ma tistax tikteb aktar, imma tieħu biss HyperGraphQL.

Mil-lat ta' aderenti ortodoss tas-Semantic Web and Linked Data, dan kollu, ovvjament, huwa imdejjaq, peress li jidher iddisinjat għal integrazzjonijiet mibnija madwar is-silo tad-data li jmiss, u pjattaformi mhux adattati (ħwienet RDF, ovvjament) .

L-impressjonijiet mit-tqabbil ta' GraphQL ma' SPARQL huma doppji.

  • Minn naħa waħda, GraphQL tidher qisha qarib imbiegħed ta 'SPARQL: issolvi l-problemi ta' kampjunar mill-ġdid u multipliċità ta 'mistoqsijiet li huma tipiċi għal REST - li mingħajrhom, probabbilment, ma jkunx possibbli li jiġu kkunsidrati lingwa tal-mistoqsija, għall-inqas għall-web;
  • Min-naħa l-oħra, l-iskema riġida ta 'GraphQL hija diżappuntanti. Għaldaqstant, "l-introspettività" tagħha tidher limitata ħafna meta mqabbla mar-riflessività sħiħa ta 'RDF. U m'hemm l-ebda analogu ta 'mogħdijiet tal-proprjetà, għalhekk lanqas huwa ċar ħafna għaliex huwa "Graph-".

II. Adapters għal MongoDB

Xejra kumplimentari għal dik preċedenti.

  • Fi Stardog issa forsi - b'mod partikolari, kollha fuq l-istess GraphQL - kkonfigurat l-immappjar tad-dejta MongoDB fi graffs RDF virtwali;
  • Ontotext GraphDB reċentement tippermetti daħħal frammenti f'SPARQL fuq MongoDB Query.

Jekk nitkellmu b'mod aktar wiesa' dwar adapters għal sorsi JSON, li jippermettu bejn wieħed u ieħor "fuq il-ħin" biex jirrappreżenta l-JSON maħżun f'dawn is-sorsi bħala RDF, nistgħu nfakkru dak li ilu pjuttost twil. SPARQL Iġġenera, li jistgħu jiġu aġġustati, per eżempju, lil Apache Jena.

Fil-qosor l-ewwel żewġ tendenzi, nistgħu ngħidu li l-ħażniet RDF juru r-rieda sħiħa għall-integrazzjoni u l-operat f'kundizzjonijiet ta '"persistenza poliglotta". Huwa magħruf, iżda, li dan tal-aħħar ilu żmien twil barra mill-moda, u qed jiġi sostitwit minn ġej multi-mudell. Xi ngħidu dwar il-multi-mudellar fid-dinja tal-ħażna RDF?

Fil-qosor, bl-ebda mod. Nixtieq niddedika artiklu separat għas-suġġett ta 'DBMSs b'ħafna mudelli, iżda għalissa jista' jiġi nnutat li bħalissa m'hemm l-ebda DBMSs b'ħafna mudelli "ibbażati" fuq mudell ta 'graff (RDF jista' jitqies bħala tip tiegħu) . Xi multi-mudellar żgħir - appoġġ għall-ħażna RDF għal mudell ta 'graff LPG alternattiv - se jiġu diskussi fi taqsima V.

III. OLTP vs. OLAP

Madankollu, l-istess Gartner jiktebdak il-multimudell huwa kundizzjoni sine qua non primarjament għal kmamar tal-operazzjoni DBMS. Dan jista 'jinftiehem: f'sitwazzjoni ta' "ħażna multivarjata", il-problemi ewlenin jinqalgħu bit-tranżazzjoni.

Imma fejn jinsabu l-ħażniet RDF fuq l-iskala OLTP-OLAP? Jien inwieġeb hekk: la hemm u lanqas hawn. Biex tindika għalxiex huma maħsuba, hija meħtieġa xi tielet abbrevjazzjoni. Bħala għażla nissuġġerixxi OLIP — Ipproċessar Intellettwali Online.

Madankollu, xorta:

  • il-mekkaniżmi ta 'integrazzjoni ma' MongoDB implimentati fi GraphDB mhumiex l-inqas maħsuba biex taħdem madwar kwistjonijiet ta 'prestazzjoni tal-kitba;
  • Stardog imur saħansitra aktar u kompletament jikteb mill-ġdid magna, għal darb'oħra bil-għan li tittejjeb il-prestazzjoni tar-reġistrazzjoni.

Issa ħalluni nintroduċi attur ġdid fis-suq. Mill-ħallieqa ta' IBM Netezza u Amazon Redshift - AnzoGraph™. Stampa minn reklam għal prodott ibbażat fuqu tpoġġa fil-bidu tal-artiklu. AnzoGraph jpoġġi lilu nnifsu bħala soluzzjoni GOLAP. Kif tħobb SPARQL b'funzjonijiet ta' tieqa? —

SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE {  …  }

IV. RocksDB

Diġà ogħla kien hemm rabta għat-tħabbira ta 'Stardog 7 Beta, li qal li Stardog kien se juża RocksDB bħala sistema ta' ħażna sottostanti - maħżen ta 'valur ewlieni, furketta Facebook ta' LevelDB ta 'Google. Għaliex ta 'min jitkellem dwar ċertu xejra?

L-ewwelnett, tiġġudika minn Artiklu tal-Wikipedija, mhux biss il-ħażniet RDF huma "trapjantati" għal RocksDB. Hemm proġetti biex tuża RocksDB bħala magna tal-ħażna f'ArangoDB, MongoDB, MySQL u MariaDB, Cassandra.

It-tieni, proġetti (jiġifieri, mhux prodotti) fuq suġġetti rilevanti huma maħluqa fuq RocksDB.

Pereżempju, eBay juża RocksDB fi pjattaforma għall-"graff tal-għarfien" tiegħek. Mill-mod, huwa umoristiku li taqra: il-lingwa tal-mistoqsija bdiet bħala format imkabbar id-dar, iżda aktar reċentement ilha għaddejja transizzjoni biex tkun ferm aktar bħal SPARQL. Bħal fiċ-ċajta: ma jimpurtax kemm nagħmlu graff ta 'għarfien, xorta nispiċċaw b'RDF.

Eżempju ieħor – wieħed li deher ftit xhur ilu Servizz ta' Mistoqsija dwar l-Istorja tal-Wikidata. Qabel l-introduzzjoni tagħha, l-informazzjoni storika tal-Wikidata kellha tiġi aċċessata permezz MWAPI għall-istandard Mediawiki API. Issa ħafna huwa possibbli bi SPARQL pur. "Taħt il-barnuża" hemm ukoll RocksDB. Mill-mod, WDHQS sar, jidher, mill-persuna li importat Freebase fil-Google Knowledge Graph.

V. Appoġġ LPG

Ħa nfakkarkom fid-differenza ewlenija bejn il-grafiċi LPG u l-grafiċi RDF.

Fl-LPG, il-proprjetajiet skalari jistgħu jiġu assenjati għal każijiet ta 'tarf, filwaqt li f'RDF jistgħu jiġu assenjati biss għal "tipi" tat-tarf (iżda mhux biss proprjetajiet skalari, iżda wkoll konnessjonijiet ordinarji). Din il-limitazzjoni ta 'RDF meta mqabbla ma' LPG jingħelbu teknika ta 'mudellar waħda jew oħra. Il-limitazzjonijiet ta 'LPG meta mqabbla ma' RDF huma aktar diffiċli biex jingħelbu, iżda l-grafiċi LPG huma aktar bħal stampi minn ktieb Harari milli graffs RDF, u huwa għalhekk li n-nies iriduhom.

Ovvjament, il-kompitu ta '"appoġġ LPG" jaqa' f'żewġ partijiet:

  1. jagħmlu bidliet fil-mudell RDF li jagħmluha possibbli li jiġu simulati strutturi LPG fih;
  2. jagħmlu bidliet fil-lingwa tal-mistoqsijiet RDF li jagħmluha possibbli li wieħed jaċċessa d-dejta f'dan il-mudell modifikat, jew timplimenta l-abbiltà li tagħmel mistoqsijiet lil dan il-mudell f'lingwi tal-mistoqsijiet popolari tal-LPG.

V.1. Mudell tad-dejta

Hemm diversi approċċi possibbli hawnhekk.

V.1.1. Proprjetà Singleton

L-aktar approċċ letterali għall-armonizzazzjoni ta' RDF u LPG huwa probabbilment proprjetà singleton:

  • Minflok, pereżempju, il-predikat :isMarriedTo jintużaw il-predikati :isMarriedTo1, :isMarriedTo2 eċċ.
  • Dawn il-predikati mbagħad isiru s-suġġetti ta’ triplets ġodda: :isMarriedTo1 :since "2013-09-13"^^xsd:date eċċ
  • Il-konnessjoni ta 'dawn l-istanzi ta' predikati ma 'predikat komuni hija stabbilita minn triplets tal-forma :isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo.
  • Ovvjament dak rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type, imma aħseb dwar għaliex m'għandekx tikteb biss :isMarriedTo1 rdf:type :isMarriedTo.

Il-problema ta '"appoġġ LPG" hija solvuta hawn fil-livell RDFS. Tali deċiżjoni teħtieġ l-inklużjoni fil-approprijat standard. Xi bidliet jistgħu jkunu meħtieġa għall-ħwienet RDF li jappoġġjaw konsegwenzi ta 'twaħħil, iżda għalissa, Singleton Property tista' titqies bħala teknika oħra ta 'mudellar.

V.1.2. Reifikazzjoni Magħmula Dritt

Approċċi inqas naive joħorġu mir-realizzazzjoni li l-istanzi tal-proprjetà huma kompletament instanzjabbli minn triplets. Billi nkunu nistgħu ngħidu xi ħaġa dwar it-triplets, inkunu nistgħu nitkellmu dwar każijiet ta 'proprjetà.

L-aktar robust minn dawn l-approċċi huwa RDF*, magħruf ukoll bħala RDR, imwieled fil-fond ta’ Blazegraph. Huwa mill-bidu nett elett għalik innifsek u AnzoGraph. Is-solidità tal-approċċ hija determinata mill-fatt li fil-qafas tiegħu offruti bidliet korrispondenti fi Semantika RDF. Il-punt, madankollu, huwa estremament sempliċi. Fis-serjelizzazzjoni tal-Fekruna ta 'RDF issa tista' tikteb xi ħaġa bħal din:

<<:bob :isMarriedTo :alice>> :since "2013-09-13"^^xsd:date .

V.1.3. Approċċi oħra

Ma tistax tolqot bis-semantika formali, imma sempliċement tassumi li t-tripletti għandhom ċerti identifikaturi, li huma, ovvjament, URIs, u joħolqu triplets ġodda b'dawn l-URIs. Jibqa' biss li jingħata aċċess għal dawn l-URIs fl-SPARQL. Allura jasal Stardog.

Fl-Allegrograph mar b'mod intermedju. Huwa magħruf li l-identifikaturi triplet f'Allegrograph hemm, iżda meta jiġu implimentati attributi tripli ma joħorġux. Madankollu, għadu 'l bogħod ħafna mis-semantika formali. Ta 'min jinnota li l-attributi triplet mhumiex URIs, u l-valuri ta' dawn l-attributi jistgħu wkoll ikunu letterali biss. L-aderenti tal-LPG jiksbu eżattament dak li riedu. Fil-format NQX ivvintat apposta, eżempju simili għal dak ta' hawn fuq għal RDF* jidher bħal dan:

:bob :marriedTo :alice {"since" : "2013-09-13"}

V.2. Lingwi tal-mistoqsijiet

Wara li appoġġja l-LPG b'xi mod jew ieħor fil-livell tal-mudell, trid tagħmilha possibbli li tagħmel mistoqsijiet dwar id-dejta f'tali mudell.

  • Blazegraph għal mistoqsijiet RDF * jappoġġja SPARQL* и Gremlin. Mistoqsija SPARQL* tidher bħal din:

 SELECT * { <<:bob :isMarriedTo ?wife>> :since ?since }

  • Anzograph jappoġġja wkoll SPARQL* u se tappoġġja Ċifra, lingwa ta' mistoqsija f'Neo4j.
  • Stardog jappoġġja tiegħu stess tkabbir SPARQL u mill-ġdid Gremlin. Tista 'tikseb l-URI triplet u l-"meta-informazzjoni" fl-SPARQL billi tuża xi ħaġa bħal din:

SELECT * {
    BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)
    ?id :since ?since
}

  • Allegrograph jappoġġja wkoll tiegħu stess tkabbir SPARQL:

 SELECT * { ("since" ?since)  franz:attributesNameValue  ( :bob :marriedTo ?wife ) }

Mill-mod, GraphDB f'ħin wieħed appoġġja Tinkerpop/Gremlin mingħajr ma appoġġja LPG, iżda dan waqaf fil-verżjoni 8.0 jew 8.1.

VI. Issikkar tal-liċenzji

Ma kien hemm l-ebda żidiet riċenti għall-intersezzjoni tas-settijiet "triplestore ta 'għażla" u "triplestore open source". Il-ħwienet ġodda RDF open source huma 'l bogħod milli jkunu għażla tajba għall-użu ta' kuljum, u l-ħwienet tripli ġodda li nixtieq nuża (bħal AnzoGraph) huma sors magħluq. Anzi, nistgħu nitkellmu dwar tnaqqis...

Naturalment, is-sors miftuħ ma ngħalaqx fil-passat, iżda xi repożitorji ta' sors miftuħ bil-mod ma jibqgħux jitqiesu bħala ta' min jintgħażlu. Virtuoso, li għandu edizzjoni opensource, fl-opinjoni tiegħi qed jegħreq fil-bugs. Blazegraph inxtara minn AWS u ffurmat il-bażi ta 'Amazon Neptune; issa mhux ċar jekk hux se jkun hemm mill-inqas rilaxx wieħed ieħor. Jena biss fadal...

Jekk is-sors miftuħ mhuwiex importanti ħafna, imma trid biss tipprovaha, allura kollox huwa wkoll inqas rosy minn qabel. Pereżempju:

  • Stardog jieqaf iqassam il-verżjoni b'xejn (madankollu, il-perjodu ta 'prova tal-verżjoni regolari rdoppja);
  • в GraphDB Cloud, fejn qabel int tista' tagħżel pjan bażiku b'xejn, ir-reġistrazzjonijiet ta' utenti ġodda ġew sospiżi.

B'mod ġenerali, għall-persuna medja tal-IT, l-ispazju qed isir aktar u aktar inaċċessibbli; l-iżvilupp tiegħu qed isir il-lott tal-korporazzjonijiet.

Sors: www.habr.com

Żid kumment