Semantic Web и Linked Data подобны ближнему космосу: жизни там нет. Чтобы отправиться туда на более-менее длительный срок… ну, не знаю, что говорили вам в детстве в ответ на «хочу стать космонавтом». Но понаблюдать за происходящим можно и находясь на Земле; стать астрономом-любителем или даже профессионалом гораздо проще.
В статье речь пойдет о свежих, не старее нескольких месяцев, трендах из мира RDF-хранилищ. Метафора в первом абзаце была навеяна эпических размеров рекламной картинкой под катом.
I. GraphQL yofikelelo lwe-RDF
Ngaphandle kwebhokisi eli thuba linikezelwa ngu:
Ukuba indawo yokugcina ayiniki thuba elinjalo, inokuphunyezwa ngokuzimeleyo ngokubhala "isisombululo" esifanelekileyo. Yiloo nto abayenzayo, umzekelo, kwiprojekthi yesiFrentshi
Ukusuka kwindawo yokujonga i-orthodox adherent of the Semantic Web and Linked Data, konke oku, ngokuqinisekileyo, kubuhlungu, kuba kubonakala kulungiselelwe ukudityaniswa kwakhiwe malunga ne-silo yedatha elandelayo, kwaye ayifanelekanga (iivenkile ze-RDF, ngokuqinisekileyo) .
Iimpawu zokuthelekisa iGraphQL kunye ne-SPARQL zimbini.
- Kwelinye icala, iGraphQL ijongeka njengesalamane esikude se-SPARQL: isombulula iingxaki zokuphinda kuqwalaselwe kunye nophindaphindo lwemibuzo eqhelekileyo kwi-REST - ngaphandle kwayo, mhlawumbi, ngekhe kuqwalaselwe. ulwimi lombuzo, ubuncinci kwiwebhu;
- Kwelinye icala, ischema esomeleleyo seGraphQL siyadanisa. Ngokufanelekileyo, "ukubonakala kwayo" kubonakala kunqongophele kakhulu xa kuthelekiswa ne-reflexivity epheleleyo ye-RDF. Kwaye akukho analogue yeendlela zepropathi, ngoko ke akucaci nokuba kutheni "iGrafu-".
II. Iiadaptha zeMongoDB
Umkhwa ohambelana nale yangaphambili.
- в Stardog теперь
mhlawumbi - ngokukodwa, zonke kwiGraphQL efanayo - qwalasela imephu yedatha ye-MongoDB kwiigrafu ze-RDF ezibonakalayo; - GraphDB с недавних пор
it ivumela faka amaqhekeza kwi-SPARQL kuMbuzo we-MongoDB.
Ukuba sithetha ngokubanzi malunga neeadaptha kwimithombo ye-JSON, evumela ngaphezulu okanye ngaphantsi "kwibhabhathane" ukumela i-JSON egcinwe kule mithombo njenge-RDF, sinokukhumbula ixesha elide lokuma.
Ukushwankathela iindlela ezimbini zokuqala, sinokuthi ukugcinwa kwe-RDF kubonisa ukulungela ngokupheleleyo ukudibanisa kunye nokusebenza kwiimeko "zokuzingisa kwe-polyglot". Kuyaziwa, nangona kunjalo, ukuba le yokugqibela kudala iphumile kwifashoni, kwaye ithathelwa indawo
Ngamafutshane, akukho ndlela. Ndingathanda ukunikezela inqaku elahlukileyo kwisihloko see-DBMS ezininzi zeemodeli, kodwa ngoku kunokuqatshelwa ukuba ngoku akukho modeli ye-DBMS "esekelwe" kwimodeli yegrafu (i-RDF inokuthathwa njengoluhlobo lwayo). . Enye imodeli encinci encinci-inkxaso yokugcina i-RDF yenye imodeli yegrafu ye-LPG-iya kuxoxwa kuyo
III. OLTP vs. OLAP
Nangona kunjalo, uGartner ofanayo
Kodwa ziphi iindawo zokugcina ze-RDF ezibekwe kwisikali se-OLTP-OLAP? Bendiya kuphendula ngolu hlobo: akukho apho nalapha. Ukubonisa oko zijoliswe kuko, esinye isifinyezo sesithathu siyafuneka. Njengokhetho ndingacebisa I-OLIP -Ukwenziwa koBukrelekrele kwi-Intanethi.
Nangona kunjalo, kunjalo:
- iindlela zokudibanisa kunye ne-MongoDB eziphunyezwe kwi-GraphDB azincinci
yenzelwe ukusebenzela ukubhala imiba yokwenziwa komsebenzi; - I-Stardog ihamba ngakumbi kwaye ngokupheleleyo
ubhala kwakhona injini, kwakhona ngenjongo yokuphucula ukusebenza kokurekhoda.
А теперь разрешите представить нового игрока на рынке. от создателей IBM Netezza и Amazon Redshift —
SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE { … }
IV. RocksDB
Sele ephezulu
Okokuqala, ngokugweba
Okwesibini, iiprojekthi (oko kukuthi, kungekhona iimveliso) kwizihloko ezifanelekileyo zenziwe kwi-RocksDB.
Umzekelo, i-eBay isebenzisa iRocksDB kwi
Omnye umzekelo - omnye owavela kwiinyanga ezimbalwa ezidlulileyo
V. LPG inkxaso
Makhe ndikukhumbuze ngomahluko ophambili phakathi kweegrafu ze-LPG kunye neegrafu ze-RDF.
Kwi-LPG, iipropati ze-scalar zingabelwa kwiimeko ezinqamlekileyo, ngelixa kwi-RDF zinokuthi zinikezelwe kuphela "iintlobo" ze-edge (kodwa kungekhona kuphela iimpawu ze-scalar, kodwa kunye nokudibanisa okuqhelekileyo). Lo mda we-RDF xa kuthelekiswa neLPG
Ngokucacileyo, umsebenzi "wenkxaso ye-LPG" iwela ngamacandelo amabini:
- ukwenza utshintsho kwimodeli ye-RDF eyenza kube lula ukulinganisa izakhiwo ze-LPG kuyo;
- ukwenza utshintsho kulwimi lombuzo we-RDF olwenza ukuba kube lula ukufikelela kwidatha kule modeli ilungisiweyo, okanye ukuphumeza ukukwazi ukwenza imibuzo kule modeli kwiilwimi ezithandwayo ze-LPG.
V.1. Imodeli yedatha
Kukho iindlela ezininzi ezinokwenzeka apha.
V.1.1. Ipropati yeSingleton
Eyona ndlela yokwenyani yokungqinelanisa i-RDF kunye ne-LPG mhlawumbi
- Endaweni yokuba, umzekelo, isivisa
:isMarriedTo
kusetyenziswa izibikezelo:isMarriedTo1
,:isMarriedTo2
njalo njalo. - Ezi zibikezelo ke ziba zizihloko zeetriplets ezintsha:
:isMarriedTo1 :since "2013-09-13"^^xsd:date
nabanye. - Uqhagamshelo lwezi ziganeko ze-predicates kunye ne-predicate efanayo lusekwe ngama-triplets efom
:isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo
. - Ngokucacileyo,
rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type
, kodwa cinga ngesizathu sokuba ungabhali nje:isMarriedTo1 rdf:type :isMarriedTo
.
Ingxaki ye "LPG inkxaso" isonjululwe apha kwinqanaba le-RDFS. Isigqibo esinjalo sifuna ukubandakanywa kwindawo efanelekileyo
V.1.2. Uhlengahlengiso Kwenziwe Ngokufanelekileyo
Iindlela ezingephi zisuka ekuqondeni ukuba iimeko zepropathi ziqinisekiswa ngokuphindwe kathathu. Ngokukwazi ukuthetha into malunga nee-triplets, siya kukwazi ukuthetha malunga neemeko zepropathi.
Eyona nto inamandla kwezi ndlela
<<:bob :isMarriedTo :alice>> :since "2013-09-13"^^xsd:date .
V.1.3. Ezinye iindlela
Awunakuzihlupha ngesemantics esesikweni, kodwa thatha ngokulula ukuba iintathu zinezifanisi ezithile, ezi, kunjalo, ii-URIs, kwaye zenze ii-triplets ezintsha ngezi URIs. Ekuphela kwento eseleyo kukunika ufikelelo kwezi URIs kwi-SPARQL. Ngoko
Kwi-Allegrograph
:bob :marriedTo :alice {"since" : "2013-09-13"}
V.2. Iilwimi zokubuza
Emva kokuba uxhase i-LPG ngendlela enye okanye enye kwinqanaba lemodeli, kufuneka wenze ukuba kwenzeke ukwenza imibuzo kwidatha kwimodeli enjalo.
SELECT * { <<:bob :isMarriedTo ?wife>> :since ?since }
- I-Anzograph nayo iyaxhasa
SPARQL* kwaye uya kukuxhasaIsipro , ulwimi lombuzo kwi-Neo4j. - IStardog ixhasa eyayo
ukwandiswa SPARQL kunyekwakhona Gremlin. Unokufumana i-URI ye-triplet kunye "nolwazi lwemeta" kwi-SPARQL usebenzisa into enje:
SELECT * {
BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)
?id :since ?since
}
- I-Allegrograph nayo ixhasa eyayo
ukwandiswa SPARQL:
SELECT * { ("since" ?since) franz:attributesNameValue ( :bob :marriedTo ?wife ) }
Ngendlela, iGraphDB ngaxeshanye ixhase iTinkerpop/Gremlin ngaphandle kokuxhasa iLPG, kodwa oku kuyeka kwinguqulo 8.0 okanye 8.1.
VI. Ukuqiniswa kweelayisensi
Никаких прибавлений в пересечении множеств «triplestore of choice» и «open source triplestore» в последнее время не случалось. Новым RDF-хранилищам с открытым исходным кодом далеко до того, чтобы стать хорошим выбором для повседневного использования, а исходный код новых RDF-хранилищ, которые хотелось бы поиспользовать (того же AnzoGraph), закрыт. Скорее можно говорить даже об убавлениях…
Ewe kunjalo, umthombo ovulekileyo awuzange uvaliwe ngaphambili, kodwa ezinye iindawo zokugcina imithombo evulekileyo azisabonwa njengento efanelekileyo yokukhetha. I-Virtuoso, ene-opensource edition, ngokombono wam, irhaxwa kwiibugs. I-Blazegraph yathengwa yi-AWS kwaye yenza isiseko se-Amazon Neptune; ngoku akucaci ukuba kuya kubakho ukukhululwa okunye. NguJena kuphela oseleyo...
Ukuba umthombo ovulekileyo awubalulekanga kakhulu, kodwa ufuna nje ukuzama, ngoko yonke into ibuye ibe ngaphantsi kwe-rosy kunangaphambili. Umzekelo:
- Inkwenkwezi
iyamisa ukusabalalisa inguqulo yamahhala (nangona kunjalo, ixesha lovavanyo lwenguqu eqhelekileyo liphindwe kabini); - в
Ilifu leGraphDB , где раньше можно было выбрать бесплатный базовый план, приостановлена регистрация новых пользователей .
Ngokubanzi, kumndilili we-IT umntu, indawo iya isiba ingafikeleleki; uphuhliso lwayo luba luninzi lweenkampani.
umthombo: www.habr.com