RDF podatkovni model. RDF graf

Relacijski model, ki je desetletja služil kot osnova za tehnologijo obdelave podatkov, ni več prevladujoč – na sceni se pojavljajo nove naloge, ki zahtevajo upoštevanje in identifikacijo bistveno večjega števila odnosov. Med novimi metodami je model RDF.

14.11.2012 Vladislav Golovkov, Andrej Portnov, Viktor Černov

Relacijski model, ki je desetletja služil kot osnova za tehnologijo obdelave podatkov, ni več prevladujoč – na sceni se pojavljajo nove naloge, ki zahtevajo upoštevanje in identifikacijo bistveno večjega števila odnosov. Med novimi načini obdelave podatkov izstopa model RDF: prehod iz podatkovnih baz SQL na sisteme RDF obljublja tehnološki preskok, primerljiv s prehodom s Cobola na SQL.

Do sedaj je bil najpogostejši model shranjevanja podatkov relacijski, ki je od poznih 70. let do danes de facto standard za shranjevanje strukturiranih podatkov, jezik SQL pa je standard za njihovo obdelavo. Delež strukturiranih podatkov pa je vse manjši, relacijski model pa ima vse več težav pri delu z velikimi količinami podatkov – že dolgo je bilo na primer opaženo poslabšanje delovanja relacijskih DBMS pri reševanju analitične obdelave. naloge, katerih značilnost so "dolge" SQL poizvedbe, ki se izvajajo z več tabelami in velikim številom agregatov.

Danes so naloge, ki presegajo relacijski model, običajno razvrščene kot NoSQL, pri čemer vsak podrazred rešuje določeno težavo, ki je slabo implementirana z uporabo SQL - na primer stolpčne podatkovne baze, dokumentno usmerjene, grafične, ključne vrednosti in objektne baze podatkov. Zbirke podatkov ključ-vrednost se na primer uporabljajo za naloge, za katere so značilne izjemno velike količine, brez operacij združevanja in omejene zahteve za posodabljanje podatkov (na primer samo dodajanje). Takšne podatkovne baze so zaradi svoje prostornine premišljeno razpršene, kar posledično pomeni popolno zavrnitev transakcij – tako poenostavljen podatkovni model ponuja nove možnosti za povečanje produktivnosti s široko uporabo vzporednih arhitektur.

Drug razred problemov, ki jih je težko rešiti z uporabo relacijskega modela, so problemi, ki vključujejo zelo povezane podatke ali težave z grafi. Poskusi reševanja tovrstnih problemov z uporabo relacijskega modela vodijo do nepredvidljivega števila povezav v poizvedbah, zato se za reševanje problemov z grafi danes najbolj uporabljajo RDF pomnilniki, katerih glavna prednost je prisotnost dobro razvitih standardov odbora W3C za opisni jezik grafov (Resource Description Framework, RDF) in za obdelavo podatkov grafov (SPARQL - rekurzivna kratica: SPARQL Protocol And Rdf Query Language).

Model RDF se je pojavil v poznih devetdesetih letih, leta 2001 pa je revija Scientific American objavila znameniti članek Tima Bernersa Leeja, ki napoveduje prihod semantičnega spleta. Od takrat je začelo zanimanje za vse, kar je povezano s semantično obdelavo, vključno z RDF, ki je bil leta 2004 sprejet kot standard odbora W3C, v spletni skupnosti eksponentno naraščati.

Osnova RDF je znana predstavitev podatkov v obliki stavkov (trojčkov) subjekt-predikat-objekt, ki opisujejo usmerjeno razmerje od subjekta do objekta, dobro poznano strokovnjakom za umetno inteligenco. Za identifikacijo subjektov, objektov in predikatov se uporablja Uniform Resource Identifier (URI), ki je posplošitev pojma URL. Na primer:

subjekt/objekt:

Predikat:

Objekte, ki niso URI-ji, lahko prav tako predstavljajo literali, na primer ime revije: »Journal 1 (1940)«^^xsd:string.

Za razliko od relacijskega modela, ki ima togo strukturo, je model RDF precej prilagodljiv - vsak subjekt lahko vsebuje svoje predikate in objekte, na primer v eni sami bazi izdelkov imajo vsi izdelki predikat "Cena", vendar hkrati Hladilniki imajo lahko predikat zamrzovalnik "Volume", televizorji pa predikat "Diagonala zaslona".

Najbolj znani predstavitveni formati RDF so besedilne datoteke XML, JSON, N-Triples, N3 in Turtle. Na primer, predstavitev nekaterih podatkov v formatu Turtle:

@predpona xsd: . @predpona f:. xsd: vrsta; f:name "Standard specializirane zdravstvene oskrbe otrok z galaktozemijo"; f:mkb ; f:storitev, ; f:droga ; xsd: vrsta; f:name »Neuromyelitis optica [Devićeva bolezen]«; xsd: vrsta; f:name “Splošni nevropsihološki pregled”; xsd: vrsta; f: ime "Actovegin";

Ta primer predstavlja delček grafa, ki opisuje standard zdravstvene oskrbe bolezni, vključno z diagnozo po klasifikaciji ICD 10, pripadajočimi zdravstvenimi storitvami in zdravljenjem z zdravili.

Model RDF v bistvu opisuje usmerjen graf (slika 1), v katerem je vsaka trojka opis odnosa, to je povezave med dvema vozliščema.

Poizvedbeni jezik

Model RDF služi za opisovanje podatkov, ne opisuje pa metod za njihovo obdelavo. Obstaja več poizvedovalnih jezikov za podatke RDF: DQL, N3QL, R-DEVICE, RDFQ, RDQ, RDQL, SeRQL itd., Najbolj priljubljen pa je postal SPARQL, sprejet kot standard W3C. Jezik SPARQL ima za razliko od SQL (ki ga kritizirajo predvsem pomanjkanje medplatformnosti, težave z obdelavo manjkajočih podatkov, dvoumno slovnico in semantiko) bolj harmonično strukturo in moč. Glavni del poizvedbe SPARQL je predloga, ki opisuje podgraf, ki ga je treba najti v splošnem grafu. Predloga je predstavljena kot nabor trojčkov s spremenljivkami - na primer zahteva za iskanje v določenem grafu osebe z imenom Peter:

Izberite? x kje (? x: vrsta: oseba. ? x: ime "Peter")

Tukaj blok »select« vsebuje seznam spremenljivk za prikaz rezultata poizvedbe; “?x” je spremenljivka, ki bo v času iskanja pridobila vrednost URI najdenega predmeta. Blok "kje" vsebuje nabor trojčkov, ki sestavljajo predlogo poizvedbe. Kot rezultat iskanja bo najden podgraf, ki ustreza predlogi (slika 2).

Oseba, ki pozna SQL, se je jezika SPARQL enostavno naučiti - večina SPARQL se mu bo zdela znanega. Jezik na primer vsebuje konstrukcije kot so UNION, ORDER BY, GROUP BY, DISTINCT, OFFSET in LIMIT. SPARQL je eden najbolj izrazitih jezikov za obdelavo podatkov, ki so danes na voljo. Poleg poizvedovalnega jezika standard SPARQL ureja protokol za interakcijo z bazo podatkov in format rezultata, kar je velik korak naprej v primerjavi s SQL.

Model RDF in jezik SPARQL imata poleg prednosti tudi slabosti. Začnimo s prednostmi.

Prilagodljivost. Spremembe arhitekture informacijskega sistema, zgrajenega po modelu RDF, se zgodijo lažje kot pri sistemu, zgrajenem po relacijskem modelu, in praviloma niti ne zahtevajo prenove baze podatkov.

Moderna arhitektura. Zahteve za shranjevanje RDF so običajno narejene z uporabo protokola HTTP, zaradi česar jih je enostavno vključiti v storitvene arhitekture brez gradnje srednjih plasti ter žrtvovanja zanesljivosti in zmogljivosti. RDF in SPARQL delujeta bolje z mednarodno vsebino kot baze podatkov SQL.

Standardizacija. Stopnja standardizacije RDF in SPARQL je veliko višja kot v SQL - s prizadevanji odbora W3C so bili standardi opredeljeni ne le za model RDF in jezik SPARQL, temveč tudi za identifikacijo virov (URI), protokol interakcije komponent (HTTP), dostopna točka SPARQL itd. Zahvaljujoč standardizaciji je mogoče podatke, prenesene iz katere koli shrambe RDF, naložiti v shrambe RDF različnih proizvajalcev. Poizvedbe na SPARQL se enakomerno izvajajo na različnih shrambah, kar zelo cenijo razvijalci, ki se srečujejo s težavami prenosa podatkov in poizvedb iz ene baze v drugo.

Metapodatki. SPARQL olajša sledenje izvoru katerega koli podatka. RDF olajša shranjevanje najrazličnejših metapodatkov. Izdelate lahko zapletene poizvedbe na podlagi metapodatkov, pri čemer izberete, recimo, podatke iz določenih virov, v določenem časovnem obdobju itd.

Glavna pomanjkljivost modela RDF v primerjavi z relacijskim je morda njegova »mladost«. SQL ima za seboj dolgoletne izkušnje z namestitvijo in delovanjem, tudi v kritičnih aplikacijah – funkcionalna bogatost takšnih baz podatkov je še vedno bistveno boljša od RDF. Transakcijski mehanizem v shrambah RDF je praviloma, če je implementiran, precej surov.

RDF Toolkit

Skoraj vsi proizvajalci relacijskih DBMS se izogibajo široki javnosti rezultatov konfiguracijskih testov, zgrajenih na enem ali drugem kompletu orodij SQL, in edini odprtokodni testi so TPC testi za drage visoko zmogljive sisteme, ki rešujejo omejen razred problemov. Svet sistemov RDF je odprt za raziskave, eksperimente in teste - zlahka najdete rezultate testov na različnih nalogah, na računalnikih različnih moči in arhitekture, in kar je najpomembneje, izberete najprimernejša orodja za delo z modelom RDF za rešitev problema. specifična težava aplikacije.

Berlin SPARQL Benchmark (BSBM). Primerjalno merilo (www4.wiwiss.fu-berlin.de/bizer/berlinsparqlbenchmark) simulira podatke, povezane z e-trgovino, vključno z izdelki različnih proizvajalcev, ocenami strank o izdelkih itd. To primerjalno merilo je zasnovano za ocenjevanje hitrosti izvajanja poizvedb SPARQL . Model je blizu relacijskemu, zato je mogoče oceniti, kako učinkovita bi bila zamenjava podatkovne baze SQL s shrambo RDF. Testni model in poizvedbe so zelo premišljene in blizu praksi. Morda je zato BSBM eden najbolj priljubljenih testov. V rezultatih za februar 2011, objavljenih na spletni strani razvijalcev testov, so vodilna razvojna orodja za RDF, kot so Virtuoso, 4Store, OWLIM in Jena TDB.

SP²Bench SPARQL Performance Benchmark. Test (dbis.informatik.uni-freiburg.de/index.php?project=SP2B) temelji na modelu znane knjižnice DBLP literature o logičnem programiranju (DataBase systems and Logic Programming): publikacije, članki, revije, knjige itd. Tako kot BSBM je tudi ta test zasnovan za ocenjevanje hitrosti izvajanja poizvedb SPARQL, vendar uporablja bolj sofisticirane poizvedbe na račun njihove realističnosti. Ta preizkus je dober za preizkušanje optimizatorja poizvedb, ker vsebuje veliko kompleksnih operacij združevanja. V objavljenih rezultatih so bila mesta razdeljena takole: Virtuoso, Sesame, ARQ. Naše nedavno primerjalno testiranje strežnika RDF NitrosBase Storage na testih SP2Bench je pokazalo njegovo znatno zmogljivost nad Virtuosom (od 10 do 10 tisočkrat, odvisno od zahteve).

DBpedia SPARQL Benchmark. Test DBPSB (svn.aksw.org/papers/2011/VLDB_AKSWBenchmark/public.pdf) temelji na resničnih poizvedbah v bazi znanja Dbpedia. Metodologija razvoja testov je tako izvirna kot praktična. Avtorji analizirajo dnevnike resničnih uporabniških zahtev v podatkovno bazo Dbpedia, jih združijo v skupine in identificirajo statistično najbolj pomembne skupine zahtev, ki so nato vključene v naslednjo različico testa. Tako je DBPSB test, ki je čim bližje življenju. Virtuoso opravi ta test najhitreje, sledijo mu OWLIM, Sesame in Jena TDB.

Lehigh University Benchmark. Test LUBM (swat.cse.lehigh.edu/projects/lubm/) je posebej zasnovan za ocenjevanje semantičnih sposobnosti, zato ni tako pogost kot drugi. Temelji na ontološki bazi znanja o določeni univerzi. Rezultati tega testa so znani predvsem za sisteme z orodji za logično sklepanje, kot so OWLIM, YarcData, Sesame itd.

Danes je trg razvojnih orodij, ki temeljijo na modelu RDF, hitro rastoč - nekatera orodja imajo specializirano arhitekturo za obdelavo grafov, nekatera so zgrajena na vrhu relacijskih baz podatkov.

Apache Jena - Java API za razvoj aplikacij semantičnega spleta. Izdelek vključuje več shramb, izvorno trojno shrambo (Jena TDB), vmesnik za relacijsko shranjevanje (Jena SDB), shrambo v pomnilniku (In-Memory) in orodja za podporo izvornih shramb. Največja prednost Jene je njen bogat programski vmesnik. Številni repozitoriji RDF uporabljajo API Jena za dostop do lastnih DBMS (IBM, OWLIM itd.). Šibka točka je nizka zmogljivost tudi pri izvornem pomnilniku.

Ontotext OWLIM je družina semantičnih repozitorijev ali RDF DBMS z lastnim jedrom, implementiranim v Javi, s podporo za semantiko v RDFS (RDF Scheme) in OWL. Izdelek OWLIM se aktivno uporablja v raziskovalnih projektih in programskih sistemih. Na voljo v naslednjih izdajah: OWLIM-Lite za aplikacije, ki podpirajo manj kot 100 milijonov trojnikov; OWLIM-SE (prej BigOWLIM) je zasnovan za obdelavo velikih količin podatkov z velikimi tokovi poizvedb; OWLIM-Enterprise (prej BigOWLIM Replication Cluster) je zasnovan za gradnjo razširljivih, produktivnih in zanesljivih rešitev, ki temeljijo na vzporedni obdelavi in ​​s samodejno zaščito pred napakami.

OpenLink Software Virtuoso - ima lastno zmogljivo shrambo RDF, popolno implementacijo SPARQL, možnost branja podatkov RDF iz datotek formata XML in Turtle. Podpira tudi SPARQL/Update (SPARUL), razširitev SPARQL za podporo posodabljanju podatkov. Izdelek je eden vodilnih v zmogljivosti.

Tudi velike korporacije, kot sta IBM in Oracle, razvijajo lastne RDF rešitve. Prvi je v naslednjo različico DB2 DBMS integriral različico modela RDF, imenovano NoSQL Graph Support, z vmesnikom, ki temelji na razširitvi Jena API. Odlikujejo ga visoko zmogljive operacije RDF. Oracle je svojemu izdelku prostorskih podatkov, Spatial Data Option, ki se zdaj imenuje Spatial and Graph Option, dodal RDF.

Poleg tega se razvijajo specializirani računalniki, ki so osredotočeni na delo z grafičnimi informacijami in podpirajo model RDF. Na primer, v začetku leta 2012 je Cray napovedal ustvarjanje novega visoko zmogljivega kompleksa strojne in programske opreme uRiKA (universal RDF Integration Knowledge Appliance), namenjenega trgu semantičnih baz podatkov.

Naloge

Po članku Tima Bernersa Leeja se je model RDF v javni zavesti močno povezal s semantičnim spletom, vendar je potencial tega modela veliko večji. Na primer, večino problemov, ki jih danes rešujemo v okviru relacijskega modela, je mogoče preprosto rešiti z uporabo RDF. Poleg tega vam pomnilniki RDF omogočajo zbiranje, shranjevanje in indeksiranje podatkov iz različnih virov - zlasti pri reševanju trenutnega problema integracije storitev, ki se zmanjša na združevanje različnih relacijskih baz podatkov v eno bazo podatkov in vodi do problema obdelave kvazi - strukturirani podatki. Podatki v vsaki bazi podatkov so strogo strukturirani za delo z relacijskim modelom, vendar je vsaka baza podatkov strukturirana drugače, zato je za njihovo integracijo v relacijski model potrebna prenova celotne rešitve. Če takšne baze podatkov pretvorite v RDF model, se bo integracija zmanjšala na preprosto združevanje RDF grafov in prepisovanje poizvedb iz SQL v SPARQL, kar ni težko zaradi veliko večje izraznosti SPARQL v primerjavi s SQL.

Shramba RDF je idealna za naloge, ki zahtevajo snemanje in identifikacijo velikega števila odnosov. Poleg najbolj razširjenih problemov, povezanih z razvojem semantičnega spleta, obstaja veliko število klasičnih problemov, ki zahtevajo uporabo grafov:

  • obdelava semantičnih mrež (in drugih struktur grafov), dobljenih kot rezultat analize besedil (specializirani analitični iskalni sistemi, sistemi za tržne analize, trženjske raziskave, analize besedil v varnostnih sistemih itd.);
  • predstavitev in obdelava podatkov za analizo vedenja v družbenih omrežjih (marketinške raziskave, npr. izdelava portreta kupca; analiza in identifikacija centrov za širjenje informacij v družbenih omrežjih; analiza političnih preferenc);
  • analiza in obdelava podatkov o interakciji različnih modulov in podsistemov (vključno z analizo dnevnikov) za sisteme za zagotavljanje zanesljivosti in varnosti velikih sistemov programske in strojne opreme;
  • predstavitev in obdelava grafov, ki vsebujejo heterogene informacije v sistemih načrtovanja in nadzora bojnih operacij;
  • obdelava podatkov iz kompleksnih znanstvenih eksperimentov;
  • medicinske sisteme nove generacije, katerih posebnost je na primer v tem, da različne storitve zahtevajo različne strukture za svoj opis, kar je zelo težko umestiti v strogi relacijski model. Takoj, ko začne zdravstveni sistem upoštevati ne samo dejstvo same storitve, temveč tudi njene podrobnosti, se kompleksnost sistema močno poveča - na primer storitev »zdravniški pregled« in storitev »klinična analiza« popolnoma drugačne podatkovne strukture z vidika relacijskega modela, RDF pa omogoča obdelavo takšnih podatkov na naraven način, kar bistveno zmanjša stroške dela za razvoj in vzdrževanje takih sistemov;
  • inteligentni prilagodljivi sistemi vodenja proizvodnje z izrazito grafično strukturo;
  • finančna analiza na podlagi modeliranja in obdelave grafov, ki opisujejo interakcijo udeležencev na trgu, identifikacija povezanih družb, analiza korupcije, analiza gibanja sredstev struktur itd.

Skoraj vsi problemi, pri katerih je število relacij med entitetami večje od števila entitet ali katerih glavni cilj je analiza relacij, se lahko obravnavajo kot kandidati za rešitev z uporabo RDF sistemov.

Vladislav Golovkov([e-pošta zaščitena]), Andrej Portnov([e-pošta zaščitena]), Viktor Černov([e-pošta zaščitena]) - zaposleni v podjetju "Compile Group" (Moskva).



V tem zapisu bom poskušal pojasniti ključne točke in utemeljiti prednosti modela RDF.
Že več kot 10 let je bil koncept semantičnega spleta, katerega del je RDF, predmet debat in razprav, danes pa ga skupnost vse bolj podpira v svojih aplikacijah.

Vendar mnogim še vedno ni jasno:

  • Čemu je vse to namenjeno?
  • Kako delati s tem?
  • Kaj mi bo to dalo?

Večina jih je vsaj bežno zagledala znamenito pito:

Tukaj je veliko specifikacij, tehnologij, konceptov - to je osupljivo ... Nižja raven je stara kot svet, akademiki se na višji ravni mučijo in poskušajo najti preprosto in univerzalno rešitev, ki bi aplikacije naučila oceniti, koliko lahko zaupajo razpoložljivim izjavam, prejetim iz omrežja. Običajnim razvijalcem se zaenkrat ni treba obremenjevati s tem in čakati še 5 let. Fantje iz w3c neumorno pilijo standarde tik nad sredino, nekateri so že izpiljeni, kot je RDF in kup orodij je že napisanih. zanje za vse glavne platforme in jezike, tako da ga lahko takoj uporabite. To so tisti, ki jih vse pogosteje srečujemo v realnih aplikacijah, predvsem pri modelu RDF.
Zelo dobro bi bilo razumeti, zakaj so potrebni, kaj zagotavljajo in kako delati z ontologijami - vendar tokrat ne gre za to.

Torej, poskusimo ugotoviti, kaj dobimo z uporabo modela:

  • Logična dedukcija novih dejstev
  • Zagotavljanje semantičnega iskanja
  • Prilagodljivost podatkovnega modela
  • Izjemna enostavnost izmenjave podatkov med sistemi

Če še nikoli niste študirali formalne logike, potem ne pozabite, da lahko s formalnim opisom dejstev samodejno pridobite številna nova dejstva, ki niso izrecno definirana ... ta tema si zasluži posebno pozornost, medtem ko se je ne bomo dotikali.

Semantično iskanje, zakaj, ker obstaja Google?
Da, lahko ga vnesete in dobili boste karkoli drugega kot nabor uporabnikov. Zakaj? - ker bo Google iskal besedo iz poizvedbe v besedilu dokumentov in vrnil dokumente in ne dejstev.
In če bi razumel, da potrebujemo »uporabniške« objekte vira »habr« in bi bili formalni opisi teh objektov na voljo za indeksiranje v modelu RDF (na primer v obliki zapisa RDFa na strani, tako da iskalnik bi jih lahko indeksiral), bi prejel nabor predmetov, ki smo jih iskali.
Veliko ljudi nasprotuje - "Lahko sledim nekaj povezavam, naredim še nekaj pojasnjevalnih poizvedb in še vedno najdem, kar potrebujem, zakaj vse to?" – odgovor je, da danes ne uporabljamo papirnatih kartotečnih omar, ampak raje vtipkamo par ključnih besed v iskalno vrstico in seveda takoj dobimo informacije. Iz neznanega razloga gremo v službo z avtom, vendar s konjem, ker je bolj priročno.

Na vprašanje - "Kako RDF omogoča semantično iskanje?" - odgovor: Model RDF nudi formalne opise. In kjer so formalni opisi, lahko iskalni agent išče dejstva in znanje.

Google tega danes ne išče – ​​zakaj me mora zdaj skrbeti? Prvič, da pridobimo spodaj opisane ugodnosti, in drugič, da ne zamujamo - naša panoga je taka - "bodi hiter ali bodi mrtev".

Pogovorimo se podrobneje o drugih dveh prednostih; zdi se mi, da jih je veliko lažje razumeti. Najprej pa razjasnimo še nekaj točk.

Kaj je model RDF?

Takoj morate razumeti RDF - to je abstrakten, zelo preprost model, nekoliko v vakuumu. Samo usmerjen graf z nekaj dodatki in opozorili. Lahko pa ga napišete na različne načine, običajno izbira pade na eno od možnosti: N3, N-Triples, Turtle, RDF/XML, RDFa in uporabljeno specifikacijo bo treba preučiti.

Kaj je opisano: Z uporabo RDF lahko opišete tako dokumente, posamezne dele znanja v dokumentu kot predmete resničnega sveta, na primer določeno živo osebo. (tu se nekateri IT ljudje zmedejo).
Vse je identificirano z URI. Še več, čeprav je URI podoben navadnim URL-jem povezav, je nekoliko drugačen, na primer lahko definirate vir - pravo osebo in zanjo nastavite URI »http://example.org/people#Vasya Pupkin« .
Da, lahko pišete v ruščini, ker je Unicode, vendar morate to razumeti to ni url - ne morete ga prilepiti v brskalnik in dobiti osebe- Znanost še ni dosegla te točke.

Poskusimo ugotoviti, kje je fleksibilnost modela in izmenjava podatkov med sistemi.

Poglejmo, kako ljudje komunicirajo:

Svoje misli beležijo (formalizirajo) z določenim jezikom na več načinov, pisno, ustno, potem informacije krožijo po različnih sistemih, se prenašajo od ust do ust, shranjujejo, združujejo itd. A na koncu jo prebere oseba, ki zna tolmačiti ta jezik in prejme misel. Kako natančno se formalizirana misel prenaša od enega vozlišča do drugega v opisani verigi, na koncu nikogar ne zanima.

Če ne znate kitajščine, vam ne bo škodilo, če uporabite ctrl-c ctrl-v z enega mesta na drugega.

RDF deluje na zelo podoben način.

Informacije je treba interpretirati šele, ko jih aplikacija formalizira v RDF in jih prebere agent na drugi strani. Med tema dvema stopnjama ga lahko vsak predela, kakorkoli izmenjuje, ne da bi si nujno predstavljal, kakšen je pomen, ali razumel pomen le dela izjav.

Na primer, izjava RDF (trojček subjekt-predikat-objekt)

Na ta način lahko izmenjujemo s komerkoli brez nepotrebnih premikov, vključno z integracijo s sistemi n+1, pri čemer se ne trudimo več kot sami, da pokažemo svojo spletno stran uporabnikom n+1! Za to vam ni treba ničesar programirati. Vse koncepte, ki jih bo ta sistem potreboval od vašega - bo lahko sprejel in interpretiral.

Za primerjavo, danes - morate eksplicitno povezati polja enega sistema z drugim (pogosto z vsakim) z uporabo XML, XSLT - ali polj, pridobljenih iz API-ja - in mnogi od nas vemo katerega, to je glavobol.

Spoznali smo, da so podatki lahko neodvisni od modela posamezne aplikacije. Tisti. skupek dejstev živi sam po sebi. Lahko jih dodajamo, brišemo, po njih izvajamo poizvedbe, jih razlagamo – vendar so logično neodvisni.

To dejstvo ima naslednjo pomembno prednost - enostavnost spreminjanja modela.

Predstavljajmo si, kaj morate narediti v aplikaciji, ki temelji na relacijskem modelu. Da bi stvari postale dramatične, si predstavljajmo, da je to treba narediti po zagonu, če morate spremeniti podatkovni model, na primer, da povežete neko novo entiteto z uporabniškim objektom, recimo naslovom (ki, mimogrede, ni en vrstica, vendar vsebuje ločena polja za hišo, mesto, ulico itd.). Kaj morate storiti z bazo podatkov? Pravilno popravite par tablic, morda ustvarite nove, dodate povezavo med njimi, spremenite postopke dostopa do podatkov, popravite spletno storitev in končali ste. In seveda moramo spremeniti uporabniški vmesnik.

Malo neprijetno je to početi, se vam ne zdi?

In koliko lažje bi bilo, če bi morali samo dodati nekaj polj v vmesnik in izvesti dejanje dodajanja enega novega stavka za vsako novo polje (včasih se lahko izognete temu minimumu, če imamo več univerzalno zasnovan vmesnik) ? par vrstic kode...
Z modelom RDF za vami bo operacija izgledala takole. Navsezadnje je vse, kar je shranjeno, ogromno število izjav subjekt-predikat-objekt. Tako sprememba podatkovnega modela ni več nekaj, kar pokvari razpoloženje takoj, ko pomislite na to, ali ni super?

Ogrodje opisa virov (RDF, »Resource Description Framework«) je model, ki ga je razvil World Wide Web Consortium za predstavitev podatkov, zlasti metapodatkov. RDF predstavlja izjave O virov v obliki, primerni za strojno obdelavo. RDF je del koncepta semantičnega spleta.

Vir v RDF je lahko katera koli entiteta - bodisi informativna (na primer spletna stran ali slika) ali neinformacijska (na primer oseba, mesto ali kakšen abstraktni koncept). Izjava o viru ima obliko "subjekt - predikat - objekt" in se imenuje trojček . Izjavo »nebo je modro« v terminologiji RDF lahko predstavimo na naslednji način: subjekt je »nebo«, predikat je »ima barvo«, objekt je »moder«. URI-ji se uporabljajo za predstavitev subjektov, odnosov in objektov v RDF.

Niz stavkov RDF tvori usmerjen graf, v katerem so vozlišča subjekti in objekti, robovi pa predstavljajo razmerja.

Zgodba

Zgodovina RDF sega v leto 1990, ko je Tim Berners-Lee predlagal označevanje vrst povezav med dokumenti za lažjo samodejno obdelavo. Vendar vrste povezav niso bile vključene v prvo specifikacijo HTML, vendar je bila ideja povzeta v sistemu za opisovanje metapodatkov MCF. Splošna predstavitev metapodatkov se je odražala v priporočilu W3C za RDF leta 1999. Od takrat so se standardi RDF razvili in pojavila so se nova orodja za delo z RDF.

Niz standardov

  • 2015:
    • Povezana podatkovna platforma 1.0(angleščina) - Uvod v povezane podatke, opis predlaganih pristopov k uporabi RDF na internetu.
    • Predstavitveni format RDFa
      • RDFa Core 1.1 - Tretja izdaja(angleščina) - Opis osnovne sintakse "RDFa" za RDF 1.1
      • RDFa Lite 1.1 - druga izdaja(angleščina) - Opis lahke sintakse »RDFa Lite« za RDF 1.1
      • HTML+RDFa 1.1 - Druga izdaja(angleščina) - Značilnosti sintakse »RDFa« v HTML za RDF 1.1
      • XHTML+RDFa 1.1 - Tretja izdaja(angleščina) - Značilnosti sintakse »RDFa« v XHTML za RDF 1.1
  • leto 2014:
    • Podatkovni model RDF 1.1:
      • RDF 1.1 Koncepti in abstraktna sintaksa(angleščina) - Koncepti in abstraktna sintaksa RDF 1.1
      • RDF Shema 1.1(angleščina) - RDF slovar 1.1
      • RDF 1.1 Semantika(angleščina) - Semantika RDF 1.1
    • Formati predstavitve:
      • RDF 1.1 XML Sintaksa(angleščina) - Opis sintakse »RDF/XML« za RDF 1.1
      • RDF 1.1 Želva(angleščina) - Opis sintakse "Turtle" za RDF 1.1
      • RDF 1.1 N-trojčki(angleščina) - Opis sintakse »N-Triples« za RDF 1.1
      • RDF 1.1 N-Quads(angleščina) - Opis sintakse “N-Quads” za RDF 1.1
      • RDF 1.1 TriG(angleščina) - Opis sintakse "TriG" za RDF 1.1
      • JSON-LD 1.0(angleščina) - Opis sintakse “JSON-LD”, predstavitev podatkov RDF v formatu JSON
      • JSON-LD 1.0 Algoritmi obdelave in API(angleščina) - Opis algoritmov za obdelavo in njihovih API-jev za podatke RDF, predstavljenih v obliki »JSON-LD«
    • Uporabni slovarji in ontologije
      • Besednjak Kataloga Podatkov (DCAT)(angleško) - ontologija konceptov na področju opisovanja kataloga informacij, objavljenih na internetu, in nizov podatkov, ki jih vsebuje
      • Besednjak RDF Data Cube Wocabulary(angleško) - ontologija konceptov na področju opisa večdimenzionalnih nizov podatkov
      • Ontologija Organizacije(angleško) - ontologija pojmov na področju opisovanja strukture organizacij
  • leto 2013:
    • Pravilo Izmenjava Format
      • RIF RDF in OWL Združljivost (druga izdaja)(angleščina) - uporaba priporočenega pristopa W3C za opisovanje in izvajanje pravil z RDF
    • Povezani standardi
      • Internacionalizacija Tag Set (ITS) Različica 2.0(Angleščina)
  • leto 2012:
    • rdf:PlainLiteral: A Datatype for RDF Plain Literals (druga izdaja)(Angleščina)
    • Odražanje relacijskih podatkov v RDF:
      • Neposredno preslikavo relacijskih podatkov v RDF(angleško) - neposredno
      • R2RML: RDB v RDF Preslikavni jezik(angleško) - prilagodljiv
      • Primeri uporabe in zahteve za preslikavo relacijskih baz podatkov v RDF(angleščina) - začetni primeri uporabe in zahteve, 2010
    • (angleško) - ontologija za opis medijskih virov
  • 2008:
  • 2004:
    • (angleščina) - Koncepti in abstraktna sintaksa RDF 1.0
    • RDF Semantika(angleščina) - Semantika RDF 1.0
    • RDF testni primeri(angleščina) - nabor testnih podatkov RDF
    • RDF Primer(angleščina) - Uvod v RDF

Obstaja tudi veliko osnutkov in zapiskov, vključno z Glosar povezanih podatkov(angleško) - glosar vseh pojmov, povezanih z RDF.

Predstavitveni formati

Za snemanje in prenos RDF se uporablja več formatov, vključno z:

Semantika

RDF ponuja orodja za gradnjo informacijskih modelov, vendar se ne ukvarja s semantiko opisanega. Graf RDF lahko razumemo samo kot graf. Interpretacija pomena temelji na zmožnosti uporabnikov RDF, da interpretirajo posamezne URI-je, nizovne literale in strukturo grafa ter iz teh interpretirajo druge URI-je in semantiko podatkov.

Izražanje semantike zahteva slovarji(Angleški besednjaki), taksonomija(Angleške taksonomije) in ontologije (Angleške ontologije) ter prisotnost povezav z njimi v obravnavanem grafu.

  • Slovar je zbirka izrazov, ki imajo enak pomen v vseh kontekstih uporabe tega slovarja.
  • Taksonomija je slovar hierarhično urejeni pogoji.
  • Ontologija uporablja vnaprej določeno rezervirano slovar izraze za opredelitev pojmov in odnosov med njimi za določeno predmetno področje. Ontologije se lahko uporabljajo za izražanje semantike izrazov iz besedišča, njihovih odnosov in kontekstov uporabe.

Večina slovarjev za opisane subjekte ne vsebuje samo predikatov in predmetov, ampak zanje pomeni tudi takšno ali drugačno pomensko obremenitev, ki se običajno ne prilega dejanski RDF predstavitvi slovarja. To so lahko načini uporabe določenih predmetov, pravila, omejitve, priporočila, utemeljitev potrebe po njihovi uporabi itd. To je praviloma opisano v spremni dokumentaciji k slovarju.

RDF shema

Shema RDF ponuja besedišče za RDF, ki se uporablja predvsem za opisovanje drugih besednjakov. Shema RDF:

  • deklarira obstoj virov, med katerimi ločeno identificira literale različnih tipov podatkov, vključno z nizi, ki označujejo jezik, nizi z oznako XML ali HTML;
  • navaja obstoj razredov virov in njihovih podrazredov;
  • deklarira obstoj lastnosti, ki se nanašajo na vire določenega razreda, lahko imajo vire določenih razredov kot objekte in so lahko bolj ozko zasnovana različica bolj splošne lastnosti;
  • izjavlja obstoj tako pogosto uporabljenih lastnosti, kot so "ime", "opis", "sinonim vira" in nekatere druge;
  • opisuje razrede in lastnosti, ki vam omogočajo organiziranje treh vrst seznamov v modelu RDF;
  • opisuje razrede in lastnosti, potrebne za reifikacijo (iz angleščine reification, utelešenje) - zagotavljanje zmožnosti pisanja trojčkov, katerih objekt in subjekt so trojčki.

Opis dodatne pomenske obremenitve tega slovarja se nahaja v vseh treh glavnih standardih RDF - v opisu konceptov RDF (angleščina), v opisu samega slovarja (angleščina) in v opisu semantike RDF (angleščina) .

Zlasti opis semantike RDF navaja, da lahko slovarji le nakazujejo, vendar ne izrecno vsebujejo trojčkov, ki jih je mogoče pridobiti iz preostalih trojčkov slovarja z izvajanjem številnih formalnih pravil, definiranih za slovar, ki izhajajo iz semantike pojmov, ki jih uporablja slovar. Na voljo je tudi seznam pravil, ki jih implicira slovar sheme RDF.

SOVA

Za zapis kompleksnejših logičnih odnosov opisanih virov različnih vsebinskih področij v ontologijah se uporablja jezik OWL.

RDF shranjevanje

Za shranjevanje podatkov RDF se uporabljata dve glavni vrsti pomnilnika: specializirano (domači, "domači", "domači") in ni specializirano (tujerodno). Specializirani repozitoriji omogočajo večjo stopnjo optimizacije, vendar so bolj delovno intenzivni za načrtovanje, saj so izdelani posebej za delo z RDF. Druge zmogljivosti za shranjevanje so enostavnejše za načrtovanje (na primer z uporabo relacijskih mehanizmov DBMS ali rešitev NoSQL), vendar so manj optimizirane za delo z RDF. Specializirani pomnilniki se delijo glede na njihovo sposobnost delovanja s podatki, ki se v celoti nahajajo v RAM-u (in-memory) ali lahko uporabljajo tudi zunanji pomnilnik (na primer trdi disk).

Sistemi RDF se razvijajo za raziskovalno in proizvodno uporabo. Glavni specializirani skladiščni prostori, primerni za proizvodno uporabo, vključujejo:

Aplikacija

Oblikovanje baz znanja oziroma predstavitev njihovih podatkov v okviru različnih projektov v številnih inštitutih, univerzah in drugih organizacijah. Predvsem v raziskovalne namene.

Iskalniki spodbujajo spletne skrbnike k uporabi RDF in podobnih označevalnih jezikov strani za izboljšanje informacijske vsebine povezav do njihovega spletnega mesta v rezultatih iskanja.

V obliki RSS 1.0 se format RDF pogosto uporablja za jedrnato predstavitev seznama novih vnosov na občasno posodobljenih spletnih mestih, kot so spletni dnevniki, viri novic ali spletne revije.

Poleg naštetega RDF format predstavlja podatke za analizo in/ali integracijo v podjetniške informacijske sisteme, kar omogoča njihovo proučevanje s pomočjo SPARQL (projekt D2RQ, na primer), in kadar temelji na industrijskem standardu, na primer ISO 15926 omogoča poenoteno izmenjavo podatkov iz različnih podjetij na ravni industrije.

Uporaba RDF se je povečala s prihodom JSON-LD predstavitve RDF in porastom povezanih podatkov. Google na primer upošteva semantični opis strani v enem od formatov RDF (in z uporabo slovarja Schema.org) in ga uporabi za podrobnejši opis rezultatov iskanja

Ogrodje za opis virov (RDF) je standard W3C za opisovanje spletnih virov, kot so naslov strani, avtor, datum spremembe, vsebina in informacije o avtorskih pravicah.

Morate imeti osnovno znanje

Preden nadaljujete, morate imeti osnovno znanje o naslednjem razumevanju:

  • XHTML
  • Imenski prostori XML

Če želite najprej preučiti te predmete, obiščite našo domačo stran.

Kaj je RDF?

  • RDF se nanaša na okvir opisa virov
  • RDF je ogrodje za opis virov za splet
  • RDF zagotavlja model in slovnico za takšne neodvisne skupine za izmenjavo in uporabo podatkov
  • RDF je zasnovan tako, da ga računalnik bere in razume
  • Namen RDF ni videti ljudem
  • RDF za pisanje uporablja XML
  • RDF je sestavni del dejavnosti semantičnega spleta W3C
  • RDF je priporočilo W3C

RDF - Primeri uporabe

  • Opis prodajnih točk nepremičnine, kot sta cena in razpoložljivost
  • Opis urnika spletnega dogodka
  • Za opis informacij o strani, kot so vsebina, avtor in datum ustvarjanja ali spreminjanja
  • Fotografije in opis ocene vsebine omrežja
  • Opis za iskalnike
  • Opis Elektronska knjižnica

RDF je zasnovan za branje z računalnikom

RDF je namenjen zagotavljanju običajnega načina opisovanja informacij na način, ki ga lahko berejo in razumejo računalniki.

Opis RDF ni namenjen prikazovanju v spletu.

RDF za pisanje uporablja XML

Dokumenti RDF so napisani v XML. Jezik XML, ki ga uporablja RDF, se imenuje RDF/XML.

Z uporabo XML lahko preprosto izmenjujete informacije RDF med operacijskim sistemom in računalnikom z uporabo različnih vrst aplikacijskih jezikov.

RDF in semantični splet

Jezik RDF je sestavni del dejavnosti semantičnega spleta W3C. Cilji konzorcija W3C "Semantic Web Vision":

  • Spletne informacije imajo natančen pomen
  • Spletne informacije lahko računalnik razume in obdela
  • Računalniki lahko integrirajo informacije iz interneta

RDF je standard W3C

RDF je februarja 2004 postal standard W3C.



Vam je bil članek všeč? Delite s prijatelji!