Inona no mitranga amin'ny tahiry RDF ankehitriny?

Ny Semantic Web and Linked Data dia toy ny any ivelany: tsy misy fiainana any. Ny fandehanana any mandritra ny fotoana lava kokoa na latsaka ... Tsy fantatro izay nolazain'izy ireo taminao fony mbola kely ho valin'ny "Te ho lasa mpanamory sambon-danitra aho." Saingy afaka mandinika ny zava-mitranga ianao eto an-tany; Mora kokoa ny ho lasa astronoma amateur na matihanina mihitsy aza.

Ny lahatsoratra dia hifantoka amin'ny fironana vao haingana, tsy mihoatra ny volana maromaro, avy amin'ny tontolon'ny fitahirizana RDF. Ny fanoharana ao amin'ny andalana voalohany dia aingam-panahy avy amin'ny sarin'ny dokam-barotra mirefy eo ambanin'ny fanapahana.


Sary epika

Inona no mitranga amin'ny tahiry RDF ankehitriny?

I. GraphQL ho an'ny fidirana RDF

Hoy izy ireofa ny GraphQL dia mikendry ny ho lasa fiteny fidirana amin'ny angon-drakitra manerantany. Ahoana ny amin'ny fahafahana miditra amin'ny RDF mampiasa GraphQL?

Avy amin'ny boaty ity fahafahana ity dia omen'ny:

Raha tsy manome fahafahana toy izany ny tahiry, dia azo ampiharina tsy miankina amin'ny fanoratana "resolver" mety. Izany no nataon’izy ireo, ohatra, tamin’ny tetikasa frantsay DataTourisme. Na tsy afaka manoratra na inona na inona intsony ianao fa maka fotsiny HyperGraphQL.

Avy amin'ny fomba fijerin'ny mpanaraka ny Semantic Web sy Linked Data, izany rehetra izany, mazava ho azy, dia mampalahelo, satria toa natao ho an'ny fampidirana natsangana manodidina ny silo data manaraka, fa tsy sehatra mety (fivarotana RDF, mazava ho azy) .

Ny fahatsapana avy amin'ny fampitahana ny GraphQL amin'ny SPARQL dia roa heny.

  • Amin'ny lafiny iray, ny GraphQL dia toa havana lavitra an'ny SPARQL: mamaha ny olan'ny resampling sy ny hamaroan'ny fanontaniana mahazatra amin'ny REST - raha tsy misy izany, angamba, dia tsy azo atao ny mandinika. fiteny fanontaniana, farafaharatsiny ho an'ny tranonkala;
  • Amin'ny lafiny iray, ny schema henjana amin'ny GraphQL dia mandiso fanantenana. Araka izany, toa voafetra be ny “introspectiveness” azy raha oharina amin'ny reflexivity feno an'ny RDF. Ary tsy misy analogue ny lalan'ny fananana, ka tsy dia mazava loatra ny antony nahatonga azy io "Graph-".

II. Adapter ho an'ny MongoDB

Fironana mifameno ny teo aloha.

  • Ao amin'ny Stardog izao mety - indrindra indrindra, ny rehetra amin'ny GraphQL iray ihany - amboary ny fametahana ny angon-drakitra MongoDB amin'ny grafika RDF virtoaly;
  • Ontotext GraphDB dia vao haingana Tsy mamela ampidiro ny sombiny ao amin'ny SPARQL amin'ny MongoDB Query.

Raha miresaka misimisy kokoa momba ny adaptatera amin'ny loharano JSON isika, izay mamela bebe kokoa na latsaka "eo amin'ny lalitra" hisolo tena ny JSON voatahiry ao amin'ireo loharano ireo ho RDF, dia tsaroantsika ilay efa ela. SPARQL Generate, izay azo amboarina, ohatra, mankany Apache Jena.

Raha fintinina ireo fironana roa voalohany, dia afaka milaza isika fa ny fitehirizana RDF dia mampiseho fahavononana tanteraka amin'ny fampidirana sy ny fiasana amin'ny toe-javatra misy ny "faharetan'ny polyglotte". Fantatra anefa fa efa ela no tsy lamaody ity farany, ary misolo toerana azy ho avy multi-modely. Ahoana ny momba ny multi-modely amin'ny tontolon'ny fitahirizana RDF?

Raha fintinina, tsy misy. Te-hanolotra lahatsoratra manokana momba ny lohahevitra momba ny DBMS marobe aho, saingy amin'izao fotoana izao dia azo lazaina fa tsy misy DBMS marobe "mifototra" amin'ny maodely grafika (RDF azo raisina ho karazana azy) . Modely kely maromaro - fanohanana fitahirizana RDF ho an'ny maodely grafika LPG hafa - horesahina ao fizarana V.

III. OLTP vs. OLAP

Na izany aza, Gartner ihany Hoy izy nanoratrafa ny multimodely dia fepetra tsy misy fepetra voalohany indrindra efitrano fandidiana DBMS. Azo takarina izany: amin'ny toe-javatra misy ny "fitehirizana multivariate", ny olana lehibe dia mipoitra amin'ny transactionality.

Fa aiza ny toerana fitahirizana RDF amin'ny ambaratonga OLTP-OLAP? Izao no havaliko: na ato, na ato. Mba hanondroana ny anton'izy ireo dia ilaina ny fanafohezana fahatelo. Ho safidy dia manoro hevitra aho OLIP - Fikarakarana ara-tsaina an-tserasera.

Na izany aza, mbola:

  • ny mekanika fampidirana miaraka amin'ny MongoDB ampiharina amin'ny GraphDB dia tsy kely indrindra natao miasa manodidina ny fanoratana olana momba ny fampisehoana;
  • Stardog dia lasa lavitra kokoa sy tanteraka mamerina manoratra maotera, indray miaraka amin'ny tanjona hanatsarana ny zava-bita firaketana.

Mamelà ahy hampiditra mpilalao vaovao amin'ny tsena. Avy amin'ireo mpamorona ny IBM Netezza sy Amazon Redshift - AnzoGraph™. Sary avy amin'ny dokam-barotra momba ny vokatra mifototra amin'izany dia navoaka teo am-piandohan'ny lahatsoratra. AnzoGraph dia mametraka ny tenany ho vahaolana GOLAP. Ahoana no tianao SPARQL amin'ny fiasan'ny varavarankely? -

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

IV. RocksDB

Efa ambony nisy rohy ho an'ny fanambaràna ny Stardog 7 Beta, izay nilaza fa hampiasa ny RocksDB ho rafitra fitahirizana fototra i Stardog - tranombarotra manan-danja, fork Facebook an'ny LevelDB an'ny Google. Nahoana no ilaina ny miresaka momba ny fironana iray?

Voalohany, mitsara amin'ny Lahatsoratra Wikipedia, tsy ny fitahirizana RDF ihany no "nafindra" any amin'ny RocksDB. Misy tetikasa hampiasa ny RocksDB ho motera fitahirizana ao amin'ny ArangoDB, MongoDB, MySQL ary MariaDB, Cassandra.

Faharoa, ny tetikasa (izany hoe tsy vokatra) momba ny lohahevitra mifandraika dia noforonina ao amin'ny RocksDB.

Ohatra, eBay dia mampiasa RocksDB in platform ho an'ny "grafika fahalalana". Raha ny marina, mampihomehy ny mamaky: ny fiteny fangataham-panontaniana dia nanomboka tamin'ny endrika natomboka tao an-trano, saingy vao haingana dia nivadika ho mitovy kokoa amin'ny SPARQL.. Toy ny ao amin'ny vazivazy: na manao ahoana na manao ahoana ny grafofaon'ny fahalalana ataontsika dia mbola miafara amin'ny RDF ihany isika.

Ohatra iray hafa - iray izay niseho volana vitsivitsy lasa izay Serivisy fitakiana tantara Wikidata. Talohan'ny nampidirana azy dia tsy maintsy nidirana tamin'ny alalan'ny alalan'ny fidirana ny fampahalalana ara-tantara Wikidata MWAPI mankany amin'ny API Mediawiki mahazatra. Ankehitriny dia betsaka ny azo atao amin'ny SPARQL madio. "Eo ambanin'ny satroka" dia misy koa ny RocksDB. Raha ny marina, ny WDHQS dia toa nataon'ilay olona nanafatra Freebase tao amin'ny Google Knowledge Graph.

V. Fanohanana LPG

Mamelà ahy hampahatsiahy anao ny fahasamihafana lehibe eo amin'ny sarin'ny LPG sy ny sarin'ny RDF.

Ao amin'ny LPG, ny fananana scalar dia azo omena amin'ny tranga sisiny, raha ao amin'ny RDF dia azo omena amin'ny "karazana" sisiny ihany izy ireo (fa tsy ny fananana scalar ihany, fa ny fifandraisana mahazatra ihany koa). Ity fetran'ny RDF ity raha oharina amin'ny LPG RESEO teknika modely iray na iray hafa. Sarotra kokoa ny resena ny fetran'ny LPG raha oharina amin'ny RDF, fa ny sarin'ny LPG dia mitovy kokoa amin'ny sary avy amin'ny boky fianarana Harari noho ny sarin'ny RDF, izay no mahatonga ny olona maniry izany.

Mazava ho azy fa mizara roa ny asan'ny "fanohanana LPG":

  1. manao fanovana amin'ny maodely RDF izay ahafahana manao simulate ny rafitra LPG ao anatiny;
  2. manao fanovana amin'ny fiteny fangataham-panontaniana RDF izay ahafahana miditra amin'ny angona amin'ity maodely novaina ity, na mampihatra ny fahafahana mametraka fanontaniana amin'ity maodely ity amin'ny fiteny fanontanina LPG malaza.

V.1. Modely data

Misy fomba maro azo atao eto.

V.1.1. Singleton Property

Ny fomba fiasa ara-bakiteny indrindra amin'ny fampifanarahana ny RDF sy ny LPG dia angamba fananana tokana:

  • Raha tokony ho, ohatra, ny predicate :isMarriedTo predicates no ampiasaina :isMarriedTo1, :isMarriedTo2 i t. d.
  • Ireo predicates ireo dia lasa lohahevitry ny triplets vaovao: :isMarriedTo1 :since "2013-09-13"^^xsd:date ary ny hafa.
  • Ny fampifandraisana ireo ohatra amin'ny predicates ireo amin'ny predicate iombonana dia apetraka amin'ny triplets amin'ny endrika :isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo.
  • Mazava ho azy fa rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type, fa eritrereto hoe nahoana ianao no tsy tokony hanoratra fotsiny :isMarriedTo1 rdf:type :isMarriedTo.

Ny olan'ny "fanohanana LPG" dia voavaha eto amin'ny ambaratonga RDFS. Ny fanapahan-kevitra toy izany dia mitaky fampidirana amin'ny mety Malagasy. Ny fanovana sasany dia mety takiana amin'ny fivarotana RDF izay manohana ny voka-dratsiny, saingy amin'izao fotoana izao, ny Singleton Property dia azo heverina ho teknika modely hafa.

V.1.2. Vita tsara ny fanavaozana

Ny fomba fijery tsy dia misy dikany dia avy amin'ny fahatsapana fa ny trangan-trano dia azo tsapain-tanana tanteraka amin'ny triplets. Amin'ny fahafahana milaza zavatra momba ny triplets, dia afaka miresaka momba ny fananana.

Ny malaza indrindra amin'ireo fomba ireo dia RDF*, aka RDR, TERAKA ao amin'ny halalin'ny Blazegraph. Efa hatrany am-boalohany izany voafidy ho anao sy AnzoGraph. Ny fahamendrehan'ny fomba fiasa dia voafaritra amin'ny hoe ao anatin'ny rafitra misy azy nanatitra fiovana mifanaraka amin'ny RDF Semantics. Ny hevitra anefa dia tena tsotra. Ao amin'ny fanokafana ny sokatra RDF dia afaka manoratra zavatra toy izao ianao:

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

V.1.3. Fomba hafa

Tsy afaka manelingelina ny semantika ofisialy ianao, fa eritrereto fotsiny fa ny triplets dia manana famantarana sasany, mazava ho azy, URI, ary mamorona triplets vaovao miaraka amin'ireo URI ireo. Ny hany sisa tavela dia ny manome fidirana amin'ireo URI ireo ao amin'ny SPARQL. Noho izany tonga Stardog.

Ao amin'ny Allegrograph nandeha amin'ny fomba manelanelana. Fantatra fa ny identifier triplet ao amin'ny Allegrograph dia, fa rehefa mampihatra ny toetra telo dia tsy mijanona izy ireo. Na izany aza, dia mbola lavitra ny semantika ofisialy. Marihina fa tsy URI ny toetran'ny triplet, ary mety ho ara-bakiteny ihany koa ny soatoavin'ireo toetra ireo. Mahazo izay tadiaviny ireo mpanaraka ny LPG. Ao amin'ny endrika NQX noforonina manokana, ohatra mitovy amin'ilay etsy ambony ho an'ny RDF* dia toy izao:

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

V.2. Fanontaniana fiteny

Rehefa nanohana LPG amin'ny fomba iray na hafa amin'ny haavon'ny maodely ianao dia mila manao izay ahafahana manao fanontaniana momba ny angona amin'ny maodely toy izany.

  • Blazegraph ho an'ny fangatahana RDF* dia manohana SPARQL* и Gremlin. Toy izao ny fangatahana SPARQL*:

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

  • Anzograph koa dia manohana SPARQL* ary hanohana Cypher, fiteny manontany amin'ny Neo4j.
  • Manohana ny azy manokana ny Stardog fanitarana SPARQL ary indray Gremlin. Azonao atao ny mahazo ny triplet URI sy ny "meta-information" ao amin'ny SPARQL amin'ny fampiasana zavatra toy izao:

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

  • Ny Allegrograph koa dia manohana ny azy fanitarana SPARQL:

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

Raha ny marina, ny GraphDB indray mandeha dia nanohana an'i Tinkerpop/Gremlin nefa tsy nanohana LPG, saingy nijanona tamin'ny version 8.0 na 8.1 izany.

VI. Fanamafisana ny fahazoan-dàlana

Tsy nisy fanampim-panampiana vao haingana teo amin'ny fihaonan'ny andiana "triplestore of choice" sy "triplestore open source". Ny fivarotana RDF open source vaovao dia lavitr'ezaka ho safidy tsara ho an'ny fampiasana andavanandro, ary ireo fivarotana telo vaovao tiako hampiasaina (toa an'i AnzoGraph) dia loharano mihidy. Fa kosa, afaka miresaka momba ny fihenan'ny...

Mazava ho azy fa tsy nakatona taloha ny loharanom-baovao misokatra, fa ny fitehirizana loharano misokatra sasany dia tsy heverina ho mendrika hofidiana intsony. Virtuoso, izay manana fanontana opensource, dia, raha ny hevitro, dia rendrika ao anaty bibikely. Blazegraph dia novidian'ny AWS ary namorona ny fototry ny Amazon Neptune; ankehitriny dia tsy fantatra raha mbola hisy famoahana iray fanampiny. Jena irery sisa...

Raha tsy dia zava-dehibe loatra ny loharano misokatra, fa te hanandrana azy fotsiny ianao, dia tsy dia rosy loatra noho ny teo aloha ny zava-drehetra. Ohatra:

  • Stardog fiatoana zarao ny dikan-teny maimaim-poana (na izany aza, nitombo avo roa heny ny fotoam-pitsarana ny dikan-teny mahazatra);
  • в GraphDB Cloud, izay ahafahanao misafidy drafitra fototra maimaim-poana teo aloha, dia naato ny fisoratana anarana mpampiasa vaovao.

Amin'ny ankapobeny, ho an'ny olona IT antonony dia mihamitombo hatrany ny habaka; lasa be ny orinasa ny fivoarany.

Source: www.habr.com

Add a comment