{"id":33363,"date":"2019-10-31T21:52:11","date_gmt":"2019-10-31T18:52:11","guid":{"rendered":"https:\/\/prohoster.info\/blog\/chto-sejchas-proishodit-s-rdf-hranilishhami\/"},"modified":"2019-10-31T21:52:11","modified_gmt":"2019-10-31T18:52:11","slug":"chto-sejchas-proishodit-s-rdf-hranilishhami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","title":{"rendered":"Co se te\u010f d\u011bje se skladovac\u00edmi RDF?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Semantic Web a Linked Data jsou podobn\u00e9 bl\u00edzk\u00e9mu vesm\u00edru: \u017eivot tam nen\u00ed. Abychom se tam vydali na del\u0161\u00ed dobu... no, nev\u00edm, co v\u00e1m v d\u011btstv\u00ed \u0159\u00edkali na ot\u00e1zku \"chci b\u00fdt astronautem\". Ale pozorovat, co se d\u011bje, lze i na Zemi; st\u00e1t se amat\u00e9rsk\u00fdm nebo dokonce profesion\u00e1ln\u00edm astronomem je mnohem snaz\u0161\u00ed.<\/p>\n<p><\/p>\n<p>Tento \u010dl\u00e1nek se zam\u011b\u0159\u00ed na aktu\u00e1ln\u00ed trendy ze sv\u011bta RDF \u00falo\u017ei\u0161\u0165, kter\u00e9 jsou maxim\u00e1ln\u011b n\u011bkolik m\u011bs\u00edc\u016f star\u00e9. Metafora v prvn\u00edm odstavci byla inspirov\u00e1na epickou reklamn\u00ed grafikou pod t\u00edmto odstavcem.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<b class=\"spoiler_title\">Epick\u00e1 grafika<\/b><\/p>\n<p><img decoding=\"async\" alt=\"Co se te\u010f d\u011bje se skladovac\u00edmi RDF?\" src=\"\/wp-content\/uploads\/2019\/05\/3d157fb2f771f3dc622dacc8dab0a9ee.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h2 id=\"i-graphql-dlya-dostupa-k-rdf\">I. GraphQL pro p\u0159\u00edstup k RDF<\/h2>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.zdnet.com\/article\/graphql-for-databases-a-layer-for-universal-database-access\/\">\u0158\u00edk\u00e1 se<\/a><\/noindex>, \u017ee GraphQL se pokou\u0161\u00ed st\u00e1t univerz\u00e1ln\u00edm jazykem pro p\u0159\u00edstup k datab\u00e1z\u00edm. Jak je to ale s mo\u017enost\u00ed p\u0159\u00edstupu k RDF pomoc\u00ed GraphQL?<\/p>\n<p><\/p>\n<p>\"Z krabice\" tuto mo\u017enost poskytuj\u00ed:<\/p>\n<p><\/p>\n<ul>\n<li>Stardog (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/graphql-and-paths\/\">blog<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_executing_graphql_queries\">dokumentace<\/a><\/noindex>);<\/li>\n<li>produkty TopQuadrant (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.topquadrant.com\/2018\/07\/05\/graphql-webinar\/\">webin\u00e1\u0159<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.topquadrant.com\/technology\/graphql\/\">dokumentace<\/a><\/noindex>).<\/li>\n<\/ul>\n<p><\/p>\n<p>Pokud \u00falo\u017ei\u0161t\u011b tuto mo\u017enost nenab\u00edz\u00ed, implementuj\u00ed ji sami naps\u00e1n\u00edm p\u0159\u00edslu\u0161n\u00e9ho \u201erozpozn\u00e1va\u010de\u201c (resolver). Tak to ud\u011blali nap\u0159\u00edklad ve francouzsk\u00e9m projektu <noindex><a rel=\"nofollow\" href=\"https:\/\/framagit.org\/datatourisme\/api\/tree\/master\/src\/Resolver\">DataTourisme<\/a><\/noindex>. Nebo u\u017e nemus\u00edme nic ps\u00e1t, sta\u010d\u00ed vz\u00edt <noindex><a rel=\"nofollow\" href=\"https:\/\/www.hypergraphql.org\/\">HyperGraphQL<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Z pohledu ortodoxn\u00edho zast\u00e1nce Semantic Web a Linked Data je to samoz\u0159ejm\u011b smutn\u00e9, proto\u017ee to vypad\u00e1, \u017ee je ur\u010deno pro integrace stav\u011bn\u00e9 kolem dal\u0161\u00edch data silos, nikoli pro platformy (samoz\u0159ejm\u011b, RDF \u00falo\u017ei\u0161\u0165).<\/p>\n<p><\/p>\n<p>Dojmy ze srovn\u00e1n\u00ed GraphQL se SPARQL z\u016fst\u00e1vaj\u00ed rozporupln\u00e9.<\/p>\n<p><\/p>\n<ul>\n<li>Na jedn\u00e9 stran\u011b, GraphQL vypad\u00e1 jako vzd\u00e1len\u00fd p\u0159\u00edbuzn\u00fd SPARQL: \u0159e\u0161\u00ed typick\u00e9 probl\u00e9my REST, jako je nadm\u011brn\u00e9 na\u010d\u00edt\u00e1n\u00ed a v\u00edcen\u00e1sobn\u00e9 dotazy \u2014 bez kter\u00fdch by se asi nedalo pova\u017eovat <em>za jazyk dotaz\u016f<\/em>, i kdy\u017e pro web;<\/li>\n<li>Na druh\u00e9 stran\u011b, zklam\u00e1v\u00e1 rigidnost struktury GraphQL. Odpov\u00eddaj\u00edc\u00edm zp\u016fsobem se jeho \u201eintrospektivnost\u201c zd\u00e1 b\u00fdt velmi omezen\u00e1 v porovn\u00e1n\u00ed s plnou reflexivitou RDF. A neexistuje \u017e\u00e1dn\u00fd ekvivalent property paths, tak\u017ee nen\u00ed jasn\u00e9, pro\u010d se naz\u00fdv\u00e1 \"Graph-\".<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"ii-adaptery-k-mongodb\">II. Adaptory pro MongoDB<\/h2>\n<p><\/p>\n<p>Trend, kter\u00fd dopl\u0148uje p\u0159edchoz\u00ed.<\/p>\n<p><\/p>\n<ul>\n<li>ve Stardog nyn\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/native-mongodb-support-is-here\/\">mo\u017en\u00e9<\/a><\/noindex> \u2014 zejm\u00e9na na stejn\u00e9m GraphQL \u2014 je nastavena konverze dat z MongoDB do virtu\u00e1ln\u00edch RDF graf\u016f;<\/li>\n<li>GraphDB ned\u00e1vno <noindex><a rel=\"nofollow\" href=\"http:\/\/graphdb.ontotext.com\/documentation\/8.8\/standard\/integrating-graphdb-with-mongodb.html\">umo\u017e\u0148uje<\/a><\/noindex> umo\u017e\u0148uje vkl\u00e1dat fragmenty MongoDB Query do SPARQL.<\/li>\n<\/ul>\n<p><\/p>\n<p>Pokud mluv\u00edme obecn\u011bji o adaptorech k JSON zdroj\u016fm, kter\u00e9 umo\u017e\u0148uj\u00ed v\u00edce \u010di m\u00e9n\u011b \u201ena b\u011b\u017e\u00edc\u00edm p\u00e1su\u201c p\u0159edstavovat JSON ulo\u017een\u00fd v t\u011bchto zdroj\u00edch jako RDF, m\u016f\u017eeme vzpomenout na pom\u011brn\u011b star\u00fd <noindex><a rel=\"nofollow\" href=\"https:\/\/ci.mines-stetienne.fr\/sparql-generate\/\">SPARQL Generate<\/a><\/noindex>, kter\u00fd lze p\u0159ipojit, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/sparql-generate\/sparql-generate\">nap\u0159\u00edklad<\/a><\/noindex>, k Apache Jena.<\/p>\n<p><\/p>\n<p>Shrnuj\u00edc\u00ed prvn\u00ed dva trendy lze \u0159\u00edci, \u017ee RDF \u00falo\u017ei\u0161t\u011b vykazuj\u00ed plnou p\u0159ipravenost k integrac\u00edm a fungov\u00e1n\u00ed v podm\u00ednk\u00e1ch \u201epolyglot persistence\u201c. Je zn\u00e1mo, \u017ee to posledn\u00ed u\u017e d\u00e1vno nen\u00ed v m\u00f3d\u011b a na jeho m\u00edsto <noindex><a rel=\"nofollow\" href=\"https:\/\/www.gartner.com\/en\/documents\/3105622\">se bl\u00ed\u017e\u00ed<\/a><\/noindex> multimodelnost. A jak to vypad\u00e1 s multimodelnost\u00ed ve sv\u011bt\u011b RDF \u00falo\u017ei\u0161\u0165?<\/p>\n<p><\/p>\n<p>Pokud to shrneme, tak nijak. T\u00e9matu multimodeln\u00edch DBMS bychom cht\u011bli v\u011bnovat samostatn\u00fd \u010dl\u00e1nek, zat\u00edm si m\u016f\u017eeme pov\u0161imnout, \u017ee multimodeln\u00ed DBMS, \u201ezalo\u017een\u00e9\u201c na grafov\u00e9m modelu (jednu jeho variantu lze pova\u017eovat za RDF), v sou\u010dasnosti neexistuj\u00ed. O n\u011bjak\u00e9 mal\u00e9 multimodelnosti \u2014 podpo\u0159e RDF \u00falo\u017ei\u0161ti alternativn\u00edho grafov\u00e9ho modelu LPG \u2014 bude vypr\u00e1v\u011bno v <noindex><a rel=\"nofollow\" href=\"#v-podderzhka-lpg\">odd\u00edle V<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h2 id=\"iii-oltp-vs-olap\">III. OLTP vs. OLAP<\/h2>\n<p><\/p>\n<p>Nicm\u00e9n\u011b, i Gartner <noindex><a rel=\"nofollow\" href=\"https:\/\/www.gartner.com\/en\/documents\/3467318\">p\u00ed\u0161e<\/a><\/noindex>, \u017ee multimodelnost je podm\u00ednka sine qua non p\u0159edev\u0161\u00edm pro <em>opera\u010dn\u00ed<\/em> DBMS. To je samoz\u0159ejm\u00e9: v situaci \u201epolyglot persistence\u201c vznikaj\u00ed hlavn\u00ed probl\u00e9my s transak\u010dnost\u00ed.<\/p>\n<p><\/p>\n<p>Ale kde se nach\u00e1zej\u00ed RDF \u00falo\u017ei\u0161t\u011b na \u0161k\u00e1le OLTP\u2014OLAP? Odpov\u011bd\u011bl bych takto: ani tam, ani tam. K ozna\u010den\u00ed toho, k \u010demu jsou ur\u010dena, je pot\u0159eba n\u011bjak\u00e1 t\u0159et\u00ed zkratka. Jako variantu bych navrhl <em>OLIP<\/em> \u2014 Online Intellectual Processing.<\/p>\n<p><\/p>\n<p>A p\u0159esto:<\/p>\n<p><\/p>\n<ul>\n<li>mechanismy integrace v GraphDB jsou ur\u010den\u00e9 nejen pro obch\u00e1zen\u00ed probl\u00e9m\u016f s v\u00fdkonem z\u00e1pisu; <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ontotext.com\/company\/news\/ontotexts-graphdb-8-8-0-enriches-the-knowledge-graph-experience\/\">Stardog jde je\u0161t\u011b d\u00e1l a zcela<\/a><\/noindex> p\u0159episuje<\/li>\n<li>motor, op\u011bt s c\u00edlem zv\u00fd\u0161it v\u00fdkon z\u00e1pisu. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/announcing-stardog-7-beta\/\">A nyn\u00ed dovolte mi p\u0159edstavit nov\u00e9ho hr\u00e1\u010de na trhu. Od tv\u016frc\u016f IBM Netezza a Amazon Redshift \u2014<\/a><\/noindex> AnzoGraph<\/li>\n<\/ul>\n<p><\/p>\n<p>. Obr\u00e1zek z reklamy na produkt zalo\u017een\u00fd na n\u011bm byl um\u00edst\u011bn na za\u010d\u00e1tku \u010dl\u00e1nku. AnzoGraph se prezentuje jako GOLAP \u0159e\u0161en\u00ed. Co \u0159\u00edk\u00e1te na SPARQL s oknov\u00fdmi funkcemi? \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cambridgesemantics.com\/product\/anzograph\/\">SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE {  \u2026  }<\/a><\/noindex>IV. RocksDB<\/p>\n<p><\/p>\n<pre><code class=\"sql\">D\u0159\u00edve u\u017e<\/code><\/pre>\n<p><\/p>\n<h2 id=\"iv-rocksdb\">byl odkaz<\/h2>\n<p><\/p>\n<p>na ozn\u00e1men\u00ed Stardog 7 Beta, kde se \u0159\u00edkalo, \u017ee Stardog hodl\u00e1 pou\u017e\u00edt jako podkladov\u00fd syst\u00e9m \u00falo\u017ei\u0161t\u011b RocksDB \u2014 \u00falo\u017ei\u0161t\u011b \u201ekl\u00ed\u010d-hodnota\u201c, facebookov\u00fd fork googleovsk\u00e9ho LevelDB. Pro\u010d u\u017e stoj\u00ed za to mluvit o ur\u010dit\u00e9m trendu? <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/blog\/announcing-stardog-7-beta\/\">Za prv\u00e9, podle<\/a><\/noindex> \u010dl\u00e1nku na Wikipedii<\/p>\n<p><\/p>\n<p>, na RocksDB \u201ep\u0159ech\u00e1zej\u00ed\u201c nejen RDF \u00falo\u017ei\u0161t\u011b. Existuj\u00ed projekty zam\u011b\u0159en\u00e9 na pou\u017eit\u00ed RocksDB jako \u00falo\u017ei\u0161t\u011b v ArangoDB, MongoDB, MySQL a MariaDB, Cassandra. <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/RocksDB#Alternative_backend\">Za druh\u00e9, na RocksDB se d\u011blaj\u00ed projekty (tj. neprodukty) p\u0159\u00edslu\u0161n\u00e9 tematiky.<\/a><\/noindex>, do RocksDB \u201ep\u0159esazuj\u00ed\u201c nejen RDF \u00falo\u017ei\u0161t\u011b. Existuj\u00ed projekty, kter\u00e9 vyu\u017e\u00edvaj\u00ed RocksDB jako \u00falo\u017en\u00fd engine v ArangoDB, MongoDB, MySQL a MariaDB, Cassandra.<\/p>\n<p><\/p>\n<p>Za druh\u00e9, na RocksDB se realizuj\u00ed projekty (tj. nikoli produkty) odpov\u00eddaj\u00edc\u00ed tematice.<\/p>\n<p><\/p>\n<p>Nap\u0159\u00edklad eBay pou\u017e\u00edv\u00e1 RocksDB v <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/eBay\/beam\">platform\u011b<\/a><\/noindex> pro sv\u016fj \u201egraf znalost\u00ed\u201c. Mimochodem, je zaj\u00edmav\u00e9 \u010d\u00edst: <em>jazyk dotaz\u016f za\u010dal jako intern\u00ed form\u00e1t, ale v posledn\u00ed dob\u011b se hodn\u011b p\u0159ibli\u017euje SPARQL.<\/em>. Jako v anekdot\u011b: kolik knowledge graph nevytv\u00e1\u0159\u00edme, v\u017edy dostaneme RDF.<\/p>\n<p><\/p>\n<p>Dal\u0161\u00edm p\u0159\u00edkladem je slu\u017eba, kter\u00e1 se objevila p\u0159ed n\u011bkolika m\u011bs\u00edci, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.wikidata.org\/wiki\/Wikidata:History_Query_Service\">Wikidata History Query Service<\/a><\/noindex>. P\u0159ed jej\u00edm vznikem jsme museli na historick\u00e9 \u00fadaje Wikidat p\u0159istupovat p\u0159es <noindex><a rel=\"nofollow\" href=\"https:\/\/www.mediawiki.org\/wiki\/Wikidata_Query_Service\/User_Manual\/MWAPI\">MWAPI<\/a><\/noindex> p\u0159es standardn\u00ed Mediawiki API. Nyn\u00ed je mnoho v\u011bc\u00ed mo\u017en\u00e9 na \u010dist\u00e9m SPARQL. \u201ePod kapotou\u201c tak\u00e9 b\u011b\u017e\u00ed RocksDB. Mimochodem, WDHQS vytvo\u0159il, zd\u00e1 se, \u010dlov\u011bk, kter\u00fd se zab\u00fdval importem Freebase do Google Knowledge Graph.<\/p>\n<p><\/p>\n<h2 id=\"v-podderzhka-lpg\">V. Podpora LPG<\/h2>\n<p><\/p>\n<p>P\u0159ipom\u00edn\u00e1m hlavn\u00ed rozd\u00edl mezi LPG grafy a RDF grafy.<\/p>\n<p><\/p>\n<p>V LPG mohou b\u00fdt k instanc\u00edm hran\u011b p\u0159id\u011blov\u00e1ny skal\u00e1rn\u00ed vlastnosti, zat\u00edmco v RDF mohou b\u00fdt p\u0159id\u011blov\u00e1ny pouze k \u201etyp\u016fm\u201c hran. (Na druhou stranu, nejen skal\u00e1rn\u00ed vlastnosti, ale i b\u011b\u017en\u00e9 vztahy). Tento limit RDF ve srovn\u00e1n\u00ed s LPG <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/swbp-n-aryRelations\/\">se p\u0159ekon\u00e1v\u00e1<\/a><\/noindex> r\u016fzn\u00fdmi technikami modelov\u00e1n\u00ed. Limit LPG v porovn\u00e1n\u00ed s RDF se p\u0159ekon\u00e1v\u00e1 obt\u00ed\u017en\u011bji, ale LPG grafy jsou v\u00edce podobn\u00e9 obr\u00e1zk\u016fm z u\u010debnice Harari, proto je lid\u00e9 cht\u011bj\u00ed.<\/p>\n<p><\/p>\n<p>Je z\u0159ejm\u00e9, \u017ee \u00fakol \u201epodporovat LPG\u201c se d\u011bl\u00ed na dv\u011b \u010d\u00e1sti:<\/p>\n<p><\/p>\n<ol>\n<li>proveden\u00ed zm\u011bn do modelu RDF, kter\u00e9 umo\u017e\u0148uj\u00ed imituje v n\u011bm LPG konstrukce;<\/li>\n<li>proveden\u00ed zm\u011bn v dotazovac\u00edm jazyce RDF, kter\u00e9 umo\u017e\u0148uj\u00ed p\u0159\u00edstup k dat\u016fm v tomto zm\u011bn\u011bn\u00e9m modelu, \u2014 nebo implementace mo\u017enosti dotazovat se na tento model v popul\u00e1rn\u00edch dotazovac\u00edch jazyc\u00edch LPG.<\/li>\n<\/ol>\n<p><\/p>\n<h3 id=\"v1--model-dannyh\">V.1. Data Model<\/h3>\n<p><\/p>\n<p>Zde existuje n\u011bkolik mo\u017en\u00fdch p\u0159\u00edstup\u016f.<\/p>\n<p><\/p>\n<p><strong>V.1.1. Singleton Property<\/strong><\/p>\n<p><\/p>\n<p>Nejv\u00edce doslovn\u00fd p\u0159\u00edstup k harmonizaci RDF a LPG \u2014 to je asi <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ncbi.nlm.nih.gov\/pmc\/articles\/PMC4350149\/\">singleton property<\/a><\/noindex>:<\/p>\n<p><\/p>\n<ul>\n<li>Nam\u00edsto nap\u0159\u00edklad predik\u00e1tu <code>:isMarriedTo<\/code> pou\u017e\u00edvaj\u00ed se predik\u00e1ty <code>:isMarriedTo1<\/code>, <code>:isMarriedTo2<\/code> atd.<\/li>\n<li>Pak se tyto predik\u00e1ty st\u00e1vaj\u00ed subjekty nov\u00fdch trojic: <code>:isMarriedTo1 :since \"2013-09-13\"^^xsd:date<\/code> a dal\u0161\u00ed.<\/li>\n<li>Vztah t\u011bchto instanc\u00ed predik\u00e1t\u016f s obecn\u00fdm predik\u00e1tem se nastavuje trojicemi typu <code>:isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo<\/code>.<\/li>\n<li>Je z\u0159ejm\u00e9, \u017ee <code>rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type<\/code>, ale zamyslete se, pro\u010d byste nem\u011bli prost\u011b napsat <code>:isMarriedTo1 rdf:type :isMarriedTo<\/code>.<\/li>\n<\/ul>\n<p><\/p>\n<p>\u00dakol \u201epodporuj\u00edc\u00ed LPG\u201c se zde \u0159e\u0161\u00ed na \u00farovni RDFS. Takov\u00e9 \u0159e\u0161en\u00ed vy\u017eaduje proveden\u00ed zm\u011bn v odpov\u00eddaj\u00edc\u00edm <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/rdf-schema\/\">standard<\/a><\/noindex>. N\u011bkter\u00e9 zm\u011bny mohou b\u00fdt vy\u017eadov\u00e1ny od RDF \u00falo\u017ei\u0161\u0165, kter\u00e1 podporuj\u00ed p\u0159ipojen\u00ed odvozenin, zat\u00edmco Singleton Property lze zat\u00edm ch\u00e1pat jednodu\u0161e jako dal\u0161\u00ed techniku modelov\u00e1n\u00ed.<\/p>\n<p><\/p>\n<p><strong>V.1.2. Reifikace spr\u00e1vn\u011b<\/strong><\/p>\n<p><\/p>\n<p>M\u00e9n\u011b naivn\u00ed p\u0159\u00edstupy vych\u00e1zej\u00ed z uv\u011bdom\u011bn\u00ed si, \u017ee instance vlastnost\u00ed mohou b\u00fdt pln\u011b instancov\u00e1ny trojicemi. Pokud budeme schopni n\u011bco \u0159\u00edct o trojic\u00edch, budeme m\u00edt mo\u017enost hovo\u0159it i o instanc\u00edch vlastnost\u00ed.<\/p>\n<p><\/p>\n<p>Nejrozs\u00e1hlej\u0161\u00ed z t\u011bchto p\u0159\u00edstup\u016f je <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1409.3288\">RDF*<\/a><\/noindex>, tak\u00e9 zn\u00e1m\u00fd jako RDR, <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.blazegraph.com\/wiki\/index.php\/Reification_Done_Right\">kter\u00fd se zrodil<\/a><\/noindex> v \u00fatrob\u00e1ch Blazegraphu. Od sam\u00e9ho po\u010d\u00e1tku <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.cambridgesemantics.com\/anzograph\/userdoc\/lpgs.htm\">byl zvolen<\/a><\/noindex> pro sebe a AnzoGraph. Solidnost p\u0159\u00edstupu se ur\u010duje t\u00edm, \u017ee v jeho r\u00e1mci <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/abs\/1406.3399\">jsou<\/a><\/noindex> o\u010dek\u00e1van\u00e9 zm\u011bny v <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/TR\/rdf11-mt\/\">RDF Semantics<\/a><\/noindex>. Podstata je v\u0161ak nesm\u00edrn\u011b jednoduch\u00e1. V Turtle serializaci RDF ji\u017e te\u010f m\u016f\u017eeme ps\u00e1t p\u0159ibli\u017en\u011b takto:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">&lt;&gt; :since \"2013-09-13\"^^xsd:date .<\/code><\/pre>\n<p><\/p>\n<p><strong>V.1.3. Dal\u0161\u00ed p\u0159\u00edstupy<\/strong><\/p>\n<p><\/p>\n<p>Nemus\u00edme se zab\u00fdvat form\u00e1ln\u00ed s\u00e9mantikou, jednodu\u0161e m\u016f\u017eeme br\u00e1t v \u00favahu, \u017ee trojice maj\u00ed ur\u010dit\u00e9 identifik\u00e1tory, kter\u00e9 jsou samoz\u0159ejm\u011b URI, a sestavovat nov\u00e9 trojice s t\u011bmito URI. Bude sta\u010dit poskytnout p\u0159\u00edstup k t\u011bmto URI ve SPARQL. T\u00edmto zp\u016fsobem <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_motivation_implementation\">poch\u00e1zej\u00ed<\/a><\/noindex> Stardog. <\/p>\n<p><\/p>\n<p>V Allegrographu <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-attributes.html\">\u0161li<\/a><\/noindex> prost\u0159edn\u00ed cestou. Je zn\u00e1mo, \u017ee identifik\u00e1tory trojic v Allegrographu <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-index.html\">polo\u017eka \u201eP\u0159esunout karty\u201c. Krom\u011b toho<\/a><\/noindex>, ale p\u0159i implementaci trojkov\u00fdch atribut\u016f venku se nezobrazuj\u00ed. Nicm\u00e9n\u011b ke form\u00e1ln\u00ed s\u00e9mantice je to st\u00e1le velmi daleko. Zaj\u00edmav\u00e9 je, \u017ee atributy trojic nejsou URI a hodnoty t\u011bchto atribut\u016f tak\u00e9 mohou b\u00fdt jen liter\u00e1ly. Vyznava\u010di LPG dost\u00e1vaj\u00ed p\u0159esn\u011b to, co cht\u011bli. V speci\u00e1ln\u011b vynalezen\u00e9m form\u00e1tu NQX p\u0159\u00edklad, podobn\u00fd uveden\u00e9mu v\u00fd\u0161e pro RDF*, vypad\u00e1 takto:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">:bob :marriedTo :alice {\"since\" : \"2013-09-13\"}<\/code><\/pre>\n<p><\/p>\n<h3 id=\"v2-yazyki-zaprosov\">V.2. Dotazovac\u00ed jazyky<\/h3>\n<p><\/p>\n<p>Podporuj\u00edc t\u00edm \u010di on\u00edm zp\u016fsobem LPG na \u00farovni modelu, je t\u0159eba umo\u017enit prov\u00e1d\u011bn\u00ed dotaz\u016f k dat\u016fm v takov\u00e9m modelu.<\/p>\n<p><\/p>\n<ul>\n<li>Blazegraph pro dotazy na RDF* podporuje <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.blazegraph.com\/wiki\/index.php\/Reification_Done_Right\">SPARQL*.<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/blazegraph\/tinkerpop3\/blob\/master\/README.md\">Gremlin<\/a><\/noindex>Dotaz na SPARQL* vypad\u00e1 takto:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\"> SELECT * { &lt;&gt; :since ?since }<\/code><\/pre>\n<p><\/p>\n<ul>\n<li>AnzoGraph tak\u00e9 podporuje <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.cambridgesemantics.com\/anzograph\/userdoc\/lpgs.htm\">SPARQL*.<\/a><\/noindex> a pl\u00e1nuje podporovat <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cambridgesemantics.com\/cambridge-semantics-adds-opencypher-anzograph-2\/\">Cypher<\/a><\/noindex>, dotazovac\u00ed jazyk v Neo4j. <\/li>\n<li>Stardog podporuje vlastn\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_integration_with_sparql_2\">roz\u0161\u00ed\u0159en\u00ed<\/a><\/noindex> SPARQL a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.stardog.com\/docs\/#_example_2\">op\u011bt<\/a><\/noindex> Gremlin. Z\u00edskat v SPARQL URI trojice a \"meta-informace\" lze pomoc\u00ed p\u0159ibli\u017en\u011b takov\u00e9 konstrukce:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\">SELECT * {\n    BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)\n    ?id :since ?since\n}<\/code><\/pre>\n<p><\/p>\n<ul>\n<li>Allegrograph tak\u00e9 podporuje vlastn\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/franz.com\/agraph\/support\/documentation\/current\/triple-attributes.html#Querying-Attributes-using-SPARQL\">roz\u0161\u00ed\u0159en\u00ed<\/a><\/noindex> SPARQL:<\/li>\n<\/ul>\n<p><\/p>\n<pre><code class=\"sql\"> SELECT * { (\"since\" ?since) franz:attributesNameValue ( :bob :marriedTo ?wife ) }<\/code><\/pre>\n<p><\/p>\n<p>Mimochodem, GraphDB n\u011bjakou dobu podporovala Tinkerpop\/Gremlin, ani\u017e by v tom \u010dase podporovala LPG, ale ve verzi 8.0 nebo 8.1 to p\u0159estalo.<\/p>\n<p><\/p>\n<h2 id=\"vi-uzhestochenie-licenziy\">VI. Zp\u0159\u00edsn\u011bn\u00ed licenc\u00ed<\/h2>\n<p><\/p>\n<p>V posledn\u00ed dob\u011b nedo\u0161lo k \u017e\u00e1dn\u00fdm p\u0159\u00edr\u016fstk\u016fm na pomez\u00ed mezi \u201etriplestore of choice\u201c a \u201eopen source triplestore\u201c. Nov\u00e9 RDF \u00falo\u017ei\u0161t\u011b s otev\u0159en\u00fdm zdrojov\u00fdm k\u00f3dem se st\u00e1le vzdaluje od toho, aby se stalo spr\u00e1vnou volbou pro ka\u017edodenn\u00ed pou\u017eit\u00ed a zdrojov\u00fd k\u00f3d nov\u00fdch RDF \u00falo\u017ei\u0161\u0165, kter\u00e1 by st\u00e1la za vyzkou\u0161en\u00ed (nap\u0159\u00edklad AnzoGraph), je uzav\u0159en. Sp\u00ed\u0161e lze mluvit o \u00fabytc\u00edch\u2026<\/p>\n<p><\/p>\n<p>Samoz\u0159ejm\u011b, \u017ee otev\u0159en\u00fd zdrojov\u00fd k\u00f3d se d\u0159\u00edve nezav\u0159e, ale n\u011bkter\u00e1 \u00falo\u017ei\u0161t\u011b s otev\u0159en\u00fdm zdrojov\u00fdm k\u00f3dem postupn\u011b p\u0159est\u00e1vaj\u00ed b\u00fdt pova\u017eov\u00e1na za seri\u00f3zn\u00ed volbu. Virtuoso, kter\u00e9 m\u00e1 open-source verzi, podle m\u00e9ho n\u00e1zoru tonou v chyb\u00e1ch. Blazegraph byl zakoupen AWS a stal se z\u00e1kladem Amazon Neptune; nyn\u00ed nen\u00ed jasn\u00e9, zda bude je\u0161t\u011b n\u011bjak\u00e9 nov\u00e9 vyd\u00e1n\u00ed. Z\u016fst\u00e1v\u00e1 pouze Jena\u2026<\/p>\n<p><\/p>\n<p>Pokud ov\u0161em otev\u0159en\u00fd zdrojov\u00fd k\u00f3d nen\u00ed p\u0159\u00edli\u0161 d\u016fle\u017eit\u00fd a chcete si prost\u011b vyzkou\u0161et, je to tak\u00e9 m\u00e9n\u011b optimistick\u00e9 ne\u017e d\u0159\u00edve. Nap\u0159\u00edklad:<\/p>\n<p><\/p>\n<ul>\n<li>Stardog <noindex><a rel=\"nofollow\" href=\"https:\/\/community.stardog.com\/t\/update-to-enterprise-and-community-trials\/1533\">ukon\u010dil<\/a><\/noindex> distribuci bezplatn\u00e9 verze (nicm\u00e9n\u011b doba zku\u0161ebn\u00edho obdob\u00ed se zdvojn\u00e1sobila);<\/li>\n<li>v <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.ontotext.com\/\">GraphDB Cloud<\/a><\/noindex>, kde d\u0159\u00edve bylo mo\u017en\u00e9 zvolit bezplatn\u00fd z\u00e1kladn\u00ed pl\u00e1n, byla pozastavena registrace nov\u00fdch u\u017eivatel\u016f.<\/li>\n<\/ul>\n<p><\/p>\n<p>Obecn\u011b plat\u00ed, \u017ee pro oby\u010dejn\u00e9ho IT u\u017eivatele se vesm\u00edr st\u00e1v\u00e1 st\u00e1le m\u00e9n\u011b a m\u00e9n\u011b dostupn\u00fdm, jeho zvl\u00e1dnut\u00ed se st\u00e1v\u00e1 v\u00fdsadou korporac\u00ed.<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/451206\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430\u00a0\u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb. \u041d\u043e \u043f\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0437\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0441\u044c \u043d\u0430 \u0417\u0435\u043c\u043b\u0435; \u0441\u0442\u0430\u0442\u044c \u0430\u0441\u0442\u0440\u043e\u043d\u043e\u043c\u043e\u043c-\u043b\u044e\u0431\u0438\u0442\u0435\u043b\u0435\u043c \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043e \u0441\u0432\u0435\u0436\u0438\u0445, \u043d\u0435 \u0441\u0442\u0430\u0440\u0435\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25082,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33363","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0427\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 RDF-\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u043c\u0438? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:52:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:52:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Co se nyn\u00ed d\u011bje s RDF \u00falo\u017ei\u0161ti? | ProHoster","description":"Semantic Web a Linked Data jsou jako bl\u00edzk\u00fd vesm\u00edr: nen\u00ed tam \u017e\u00e1dn\u00fd \u017eivot. Abyste se tam dostali na v\u00edc ne\u017e kr\u00e1tkou dobu\u2026 no, nev\u00edm, co v\u00e1m \u0159\u00edkali v d\u011btstv\u00ed na ot\u00e1zku \u201echci se st\u00e1t astronautem\u201c.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0427\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 RDF-\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u043c\u0438? | ProHoster","og:description":"Semantic Web \u0438 Linked Data \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u0431\u043b\u0438\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u0441\u043c\u043e\u0441\u0443: \u0436\u0438\u0437\u043d\u0438 \u0442\u0430\u043c \u043d\u0435\u0442. \u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0442\u0443\u0434\u0430 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0440\u043e\u043a\u2026 \u043d\u0443, \u043d\u0435 \u0437\u043d\u0430\u044e, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0432\u0430\u043c \u0432 \u0434\u0435\u0442\u0441\u0442\u0432\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u00ab\u0445\u043e\u0447\u0443 \u0441\u0442\u0430\u0442\u044c \u043a\u043e\u0441\u043c\u043e\u043d\u0430\u0432\u0442\u043e\u043c\u00bb.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/chto-sejchas-proishodit-s-rdf-hranilishhami","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:52:11+00:00","article:modified_time":"2019-10-31T18:52:11+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33363","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 14:56:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:42:22","updated":"2026-01-21 14:56:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/33363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=33363"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/33363\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/25082"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=33363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=33363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=33363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}