Tha an Lìon Semantic agus Dàta Ceangailte coltach ri àite a-muigh: chan eil beatha ann. Airson a dhol ann airson ùine nas fhaide no nas lugha... chan eil fhios agam dè a thuirt iad riut mar phàiste mar fhreagairt do “Tha mi airson a bhith nam speuradair.” Ach chì thu na tha a’ tachairt fhad ‘s a tha thu air an Talamh; Tha e mòran nas fhasa a bhith nad reul-eòlaiche neo-dhreuchdail no eadhon proifeasanta.
Bidh an artaigil a’ cuimseachadh air gluasadan o chionn ghoirid, gun a bhith nas sine na grunn mhìosan, bho shaoghal stòradh RDF. Tha am meafar sa chiad pharagraf air a bhrosnachadh leis an ìomhaigh sanasachd mòr fon ghearradh.
Dealbh epic
I. GraphQL airson ruigsinneachd RDF
Tha iad ag ràdhgu bheil GraphQL ag amas air a bhith na chànan ruigsinneachd stòr-dàta uile-choitcheann. Dè mu dheidhinn comas faighinn gu RDF a’ cleachdadh GraphQL?
A-mach às a’ bhogsa tha an cothrom seo air a thoirt seachad le:
Mura toir an stòr a leithid de chothrom seachad, faodar a chuir an gnìomh gu neo-eisimeileach le bhith a’ sgrìobhadh “fuasgaiche” iomchaidh. Seo na rinn iad, mar eisimpleir, anns a 'phròiseact Frangach Turasachd dàta. No chan urrainn dhut dad a sgrìobhadh tuilleadh, ach dìreach gabhail HyperGraphQL.
Bho shealladh neach-leantainn orthodox den Lìon Semantic agus Dàta Ceangailte, tha seo uile, gu dearbh, brònach, leis gu bheil e coltach gu bheil e air a dhealbhadh airson aonachadh a chaidh a thogail timcheall air an ath silo dàta, agus nach eil àrd-ùrlaran iomchaidh (stòran RDF, gu dearbh) .
Tha na beachdan bho bhith a’ dèanamh coimeas eadar GraphQL agus SPARQL dà-fhillte.
Air an aon làimh, tha GraphQL a’ coimhead coltach ri càirdeas fad às do SPARQL: bidh e a’ fuasgladh nan duilgheadasan a thaobh ath-shamhlachadh agus ioma-cheistean a tha àbhaisteach airson REST - às aonais sin, is dòcha, cha bhiodh e comasach beachdachadh cànan ceiste, co-dhiù airson an lìn;
Air an làimh eile, tha an sgeama teann de GraphQL briseadh-dùil. Mar sin, tha coltas gu bheil an “introspectiveness” aige glè chuingealaichte an taca ri làn ath-bheòthachadh RDF. Agus chan eil analogue de shlighean seilbh ann, agus mar sin chan eil e eadhon soilleir carson a tha e “Graph-”.
II. Adapters airson MongoDB
Gluasad a bharrachd air an fhear roimhe.
Ann an Stardog a-nis 's dòcha - gu sònraichte, uile air an aon GraphQL - rèiteachadh mapadh dàta MongoDB gu grafaichean RDF brìgheil;
O chionn ghoirid tha Ontotext GraphDB Tha e a 'toirt cothrom cuir a-steach criomagan a-steach do SPARQL air Ceist MongoDB.
Ma bhruidhneas sinn nas fharsainge mu luchd-atharrachaidh gu stòran JSON, a leigeas le barrachd no nas lugha “air an iteig” an JSON a tha air a stòradh anns na stòran sin a riochdachadh mar RDF, is urrainn dhuinn cuimhneachadh air na tha air a bhith ann o chionn fhada. SPARQL a chruthachadh, a ghabhas atharrachadh, mar eisimpleir, gu Apache Jena.
Le bhith a’ toirt geàrr-chunntas air a’ chiad dà ghluasad, faodaidh sinn a ràdh gu bheil stòradh RDF a’ nochdadh làn ullachaidh airson amalachadh agus obrachadh ann an suidheachaidhean “seasmhachd polyglot”. Tha fios, ge-tà, gu bheil an tè mu dheireadh seo air a bhith a-mach à fasan o chionn fhada, agus thathar ga chur na àite a' tighinn ioma-mhodail. Dè mu dheidhinn ioma-mhodaladh ann an saoghal stòradh RDF?
Ann goirid, chan eil dòigh. Bu mhath leam artaigil air leth a choisrigeadh don chuspair DBMS ioma-mhodail, ach airson a-nis faodar a thoirt fa-near nach eil DBMSan ioma-mhodail “stèidhichte” air modal grafa aig an àm seo (faodar beachdachadh air RDF mar sheòrsa dheth) . Thèid beachdachadh air cuid de ioma-mhodaladh beag - taic stòraidh RDF airson modal graf LPG eile - ann an earrann V.
III. OLTP vs. OLAP
Ach, an aon Gartner Tha ea 'sgrìobhadhtha an ioma-mhodail sin na staid sin qua non sa mhòr-chuid airson seòmraichean-obrachaidh DBMS. Tha seo do-thuigsinn: ann an suidheachadh “ioma-chaochladh stòradh”, tha na prìomh dhuilgheadasan ag èirigh le gnìomhachd.
Ach càite a bheil stòran RDF suidhichte air sgèile OLTP-OLAP? Bheirinn freagradh mar so : ni mò an sin no 'n so. Gus sealltainn dè tha iad an dùil, tha feum air treas giorrachadh. Mar roghainn tha mi a 'moladh OLIP - Giullachd inntleachdail air-loidhne.
Ach, fhathast:
chan e as lugha na dòighean amalachaidh le MongoDB a chaidh a chuir an gnìomh ann an GraphDB an dùil a bhith ag obair timcheall air cùisean coileanaidh sgrìobhaidh;
Bidh Stardog a’ dol eadhon nas fhaide agus gu tur ath-sgrìobhadh einnsean, a-rithist leis an amas coileanadh clàraidh a leasachadh.
A-nis leig dhomh cluicheadair ùr a thoirt a-steach don mhargaidh. Bho luchd-cruthachaidh IBM Netezza agus Amazon Redshift - AnzoGraph™. Chaidh dealbh bho sanas airson toradh stèidhichte air a phostadh aig toiseach na h-artaigil. Tha AnzoGraph ga shuidheachadh fhèin mar fhuasgladh GOLAP. Ciamar as toil leat SPARQL le gnìomhan uinneig? -
SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE { … }
IV. Creag DB
Mar-thà nas àirde bha ceangal ann gu foillseachadh Stardog 7 Beta, a thuirt gu robh Stardog gu bhith a’ cleachdadh RocksDB mar shiostam stòraidh bunaiteach - stòr prìomh luach, forc Facebook de LevelDB aig Google. Carson is fhiach bruidhinn mu ghluasad sònraichte?
An toiseach, a 'breithneachadh le artaigil Wikipedia, chan e a-mhàin gu bheil stòradh RDF air an “ath-chur” gu RocksDB. Tha pròiseactan ann gus RocksDB a chleachdadh mar einnsean stòraidh ann an ArangoDB, MongoDB, MySQL agus MariaDB, Cassandra.
San dàrna h-àite, tha pròiseactan (is e sin, chan e toraidhean) air cuspairean buntainneach air an cruthachadh air RocksDB.
Mar eisimpleir, bidh eBay a’ cleachdadh RocksDB a-steach àrd-ùrlar airson do “ghraf eòlais”. Co-dhiù, tha e èibhinn a bhith a’ leughadh: thòisich cànan na ceiste mar chruth dachaigh, ach o chionn ghoirid tha e air a bhith ag atharrachadh gu bhith tòrr nas coltaiche ri SPARQL. Mar a tha san fealla-dhà: ge bith dè an ìre de ghraf eòlais a bhios sinn a’ dèanamh, tha RDF againn fhathast.
Eisimpleir eile - fear a nochd beagan mhìosan air ais Seirbheis Ceist Eachdraidh Wikidata. Mus deach a thoirt a-steach, bha feum air fiosrachadh eachdraidheil Wikidata fhaighinn troimhe MWAPI gu API àbhaisteach Mediawiki. A-nis tha tòrr comasach le SPARQL fìor-ghlan. “Fon chochall” tha RocksDB ann cuideachd. Air an t-slighe, chaidh WDHQS a dhèanamh, tha e coltach, leis an neach a thug a-steach Freebase a-steach do Google Knowledge Graph.
V. taic LPG
Leig leam do chuimhneachadh mun phrìomh eadar-dhealachadh eadar grafaichean LPG agus grafaichean RDF.
Ann an LPG, faodar togalaichean scalar a shònrachadh do shuidheachaidhean iomaill, agus ann an RDF chan urrainnear an sònrachadh ach airson “seòrsaichean” iomaill (ach chan e a-mhàin togalaichean scalar, ach cuideachd ceanglaichean àbhaisteach). An cuingealachadh seo de RDF an coimeas ri LPG faighinn seachad air aon no dòigh eile modaileadh. Tha e nas duilghe faighinn seachad air crìochan LPG an taca ri RDF, ach tha grafaichean LPG nas coltaiche ri dealbhan bho leabhar teacsa Harari na grafaichean RDF, agus is e sin as coireach gu bheil daoine gan iarraidh.
Gu follaiseach, tha an obair “taic LPG” ann an dà phàirt:
a’ dèanamh atharrachaidhean air a’ mhodail RDF a tha ga dhèanamh comasach atharrais a dhèanamh air structaran LPG ann;
a’ dèanamh atharraichean air cànan ceiste an RDF a tha ga dhèanamh comasach faighinn gu dàta sa mhodail atharraichte seo, no a’ cur an gnìomh comas ceistean a chuir chun mhodail seo ann an cànanan ceist LPG mòr-chòrdte.
V.1. Modail dàta
Tha grunn dhòighean-obrach comasach an seo.
V.1.1. Seilbh Singleton
Is dòcha gur e an dòigh as litearra airson RDF agus LPG a cho-chòrdadh seilbh singleton:
An àite, mar eisimpleir, an ro-aithris :isMarriedTo thathar a’ cleachdadh ro-innse :isMarriedTo1, :isMarriedTo2 i. d.
Bidh na h-aithrisean sin an uairsin nan cuspairean aig triplets ùra: :isMarriedTo1 :since "2013-09-13"^^xsd:date agus feadhainn eile.
Tha ceangal nan suidheachaidhean sin de ro-aithrisean le ro-aithris cumanta air a stèidheachadh le triplets den fhoirm :isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo.
Gu follaiseach, rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type, ach smaoinich carson nach bu chòir dhut dìreach sgrìobhadh :isMarriedTo1 rdf:type :isMarriedTo.
Tha duilgheadas “taic LPG” air fhuasgladh an seo aig ìre RDFS. Feumaidh co-dhùnadh mar seo a bhith air a ghabhail a-steach anns an dòigh iomchaidh àbhaisteach. Is dòcha gu bheil feum air cuid de dh’ atharrachaidhean airson stòran RDF a bheir taic do bhuilean, ach airson a-nis, faodar smaoineachadh air Singleton Property mar dìreach dòigh modaladh eile.
V.1.2. Ath-leasachadh air a dhèanamh ceart
Tha dòighean-obrach nach eil cho naive mar thoradh air a bhith a’ tuigsinn gu bheil cùisean seilbh làn-ghluasadach le triplets. Le bhith comasach air rudeigin a ràdh mu dheidhinn triplets, bidh e comasach dhuinn bruidhinn mu chùisean seilbh.
Is e an fheadhainn as làidire de na dòighean sin RDF*, no RDR, rugadh ann an doimhneachd Blazegraph. Tha e bhon fhìor thoiseach taghadh dhut fhèin agus do AnzoGraph. Tha seasmhachd an dòigh-obrach air a dhearbhadh leis an fhìrinn gu bheil e taobh a-staigh a fhrèam air a thairgsinn atharrachaidhean co-fhreagarrach ann an Semantics RDF. Tha am puing, ge-tà, gu math sìmplidh. Ann an sreathachadh Turtle de RDF faodaidh tu a-nis rudeigin mar seo a sgrìobhadh:
Chan urrainn dhut dragh a chuir air semantics foirmeil, ach dìreach gabhail ris gu bheil aithnichearan sònraichte aig triplets, a tha, gu dearbh, URIan, agus a’ cruthachadh triplets ùra leis na URIan sin. Chan eil air fhàgail ach cothrom a thoirt dha na URIan sin ann an SPARQL. Mar sin a' tighinn Rionnag.
Ann an Allegrograph chaidh ann an dòigh eadar-mheadhanach. Tha fios gu bheil aithnichearan triplet ann an Allegrograph tha, ach nuair a bhios iad a’ buileachadh buadhan trì-fhillte chan eil iad a’ cumail a-mach. Ach, tha e fhathast gu math fada bho semantics foirmeil. Bu chòir a thoirt fa-near nach e URI a th’ ann am buadhan triplet, agus chan urrainn dha luachan nam buadhan sin a bhith ach litrichean. Bidh luchd-leantainn LPG a’ faighinn dìreach na bha iad ag iarraidh. Anns an fhòrmat NQX a chaidh a chruthachadh gu sònraichte, tha eisimpleir coltach ris an fhear gu h-àrd airson RDF * a’ coimhead mar seo:
:bob :marriedTo :alice {"since" : "2013-09-13"}
V.2. Cànanan ceist
An dèidh taic a thoirt do LPG ann an dòigh air choreigin aig ìre a’ mhodail, feumaidh tu a dhèanamh comasach ceistean a chuir air dàta ann an leithid de mhodail.
Blazegraph airson ceistean RDF * a’ toirt taic SPARQL* и Gremlin. Tha ceist SPARQL* a’ coimhead mar seo:
Tha Anzograph cuideachd a’ toirt taic SPARQL* agus tha e a’ dol a thoirt taic Cypher, cànan ceist ann an Neo4j.
Tha Stardog a 'toirt taic dha fhèin leudachadh SPARQL agus a-rithist Gremlin. Gheibh thu an URI triplet agus “meta-fiosrachadh” ann an SPARQL a ’cleachdadh rudeigin mar seo:
Co-dhiù, thug GraphDB taic do Tinkerpop / Gremlin aig aon àm gun a bhith a’ toirt taic do LPG, ach stad seo ann an dreach 8.0 no 8.1.
VI. A 'teannachadh ceadan
Cha deach cur ris o chionn ghoirid ris an eadar-ghearradh de sheataichean “trì-stòr de roghainn” agus “stòr trì-fhillte le còd fosgailte”. Tha na stòran ùra RDF fosgailte fada bho bhith nan deagh roghainn airson cleachdadh làitheil, agus tha na stòran trì-fhillte ùra a bu mhath leam a chleachdadh (mar AnzoGraph) nan stòran dùinte. An àite sin, is urrainn dhuinn bruidhinn mu dheidhinn lughdachadh ...
Gu dearbh, cha deach stòr fosgailte a dhùnadh san àm a dh’ fhalbh, ach gu slaodach chan eilear a’ faicinn cuid de stòran fosgailte mar fhiach an taghadh. Tha Virtuoso, aig a bheil deasachadh opensource,, nam bheachd-sa, a’ bàthadh nam mialan. Chaidh Blazegraph a cheannach le AWS agus bha e na bhunait airson Amazon Neptune; a-nis chan eil e soilleir am bi co-dhiù aon fhoillseachadh eile ann. Chan eil ach Jena air fhàgail ...
Mura h-eil stòr fosgailte glè chudromach, ach gu bheil thu dìreach airson feuchainn air, tha a h-uile dad nas lugha na bha e roimhe. Mar eisimpleir:
Rionnag stad sgaoileadh an dreach an-asgaidh (ge-tà, tha ùine deuchainn an dreach àbhaisteach air dùblachadh);
в GrafDB Cloud, far am b’ urrainn dhut plana bunaiteach an-asgaidh a thaghadh roimhe seo, chaidh clàraidhean luchd-cleachdaidh ùra a chuir dheth.
San fharsaingeachd, airson an neach IT cuibheasach, tha àite a’ fàs barrachd is barrachd do-ruigsinneach; tha an leasachadh aige a’ fàs gu bhith na bhuidheann de chorporra.