የትርጉም ድር እና የተገናኘ ዳታ እንደ ውጫዊ ጠፈር ናቸው፡ እዚያ ምንም ሕይወት የለም። ብዙ ወይም ባነሰ ረጅም ጊዜ ወደዚያ ለመሄድ... “ጠፈርተኛ መሆን እፈልጋለሁ” ብለው በልጅነታቸው ምን እንደነገሩዎት አላውቅም። ነገር ግን በምድር ላይ በሚሆኑበት ጊዜ ምን እየተከሰተ እንዳለ መመልከት ይችላሉ; አማተር የሥነ ፈለክ ተመራማሪ ወይም እንዲያውም ባለሙያ መሆን በጣም ቀላል ነው።
ጽሑፉ ከበርካታ ወራት ያልበለጡ፣ ከዓለም የRDF ማከማቻ አዝማሚያዎች ላይ ያተኩራል። በመጀመሪያው አንቀጽ ላይ ያለው ዘይቤ ተመስጧዊ በሆነው በቁርጡ ስር ባለው እጅግ በጣም ግዙፍ የማስታወቂያ ምስል ነው።
I. GraphQL ለ RDF መዳረሻ
ከሳጥኑ ውጭ ይህ እድል የቀረበው በ:
ማከማቻው እንደዚህ አይነት እድል ካልሰጠ, ተገቢውን "መፍትሄ" በመጻፍ በተናጥል ሊተገበር ይችላል. ለምሳሌ በፈረንሣይ ፕሮጀክት ውስጥ ያደረጉት ይህንኑ ነው።
ከኦርቶዶክስ የትርጓሜ ድር እና የተገናኘ መረጃ አንፃር ፣ ይህ ሁሉ ፣ በእርግጥ ፣ የሚያሳዝን ነው ፣ ምክንያቱም በሚቀጥለው የውሂብ silo ዙሪያ ለተገነቡ ውህደቶች የተነደፈ ስለሚመስል ፣ እና ተስማሚ መድረኮች (አርዲኤፍ መደብሮች ፣ በእርግጥ) .
GraphQLን ከSPARQL ጋር በማነጻጸር ያለው ግንዛቤ ሁለት እጥፍ ነው።
- በአንድ በኩል ፣ GraphQL የ SPARQL የሩቅ ዘመድ ይመስላል-ለ REST የተለመዱትን የመልሶ ማቋቋም እና የብዙ መጠይቆችን ችግሮች ይፈታል - ያለ እሱ ፣ ምናልባት ፣ ከግምት ውስጥ ማስገባት አይቻልም። የጥያቄ ቋንቋ, ቢያንስ ለድር;
- በሌላ በኩል፣ የግራፍQL ግትር ንድፍ ተስፋ አስቆራጭ ነው። በዚህ መሠረት የእሱ "ውስጠ-ግንዛቤ" ከ RDF ሙሉ አንጸባራቂነት ጋር ሲነጻጸር በጣም የተገደበ ይመስላል. እና የንብረት ዱካዎች አናሎግ የለም, ስለዚህ ለምን "ግራፍ-" እንደሆነ እንኳን በጣም ግልጽ አይደለም.
II. ለMongoDB አስማሚዎች
ከቀዳሚው ጋር የሚጣመር አዝማሚያ።
- አሁን በስታርዶግ ውስጥ
ሊሆን ይችላል - በተለይም ሁሉም በተመሳሳይ GraphQL ላይ - የሞንጎዲቢ ውሂብን ካርታ ወደ ምናባዊ RDF ግራፎች ያዋቅሩ; - Ontotext GraphDB በቅርቡ አለው።
ይህ ይፈቅዳል በሞንጎዲቢ መጠይቅ ላይ ቁርጥራጮችን ወደ SPARQL ያስገቡ።
በእነዚህ ምንጮች ውስጥ የተከማቸውን JSON እንደ RDF ለመወከል ብዙ ወይም ባነሰ “በመብረር ላይ” ስለሚፈቅዱ ስለ JSON ምንጮች አስማሚዎች በሰፊው ከተነጋገርን የረጅም ጊዜ የቆዩትን እናስታውሳለን።
የመጀመሪያዎቹን ሁለት አዝማሚያዎች ማጠቃለል, የ RDF ማከማቻዎች በ "ፖሊግሎት ጽናት" ሁኔታዎች ውስጥ ለመዋሃድ እና ለመሥራት ሙሉ ዝግጁነት ያሳያሉ ማለት እንችላለን. ይሁን እንጂ ይህ የኋለኛው ከረዥም ጊዜ ጀምሮ ከፋሽን ወጥቷል, እና እየተተካ እንደሆነ ይታወቃል
በአጭሩ፣ በምንም መንገድ። ለባለብዙ-ሞዴል ዲቢኤምኤስ ርዕስ የተለየ መጣጥፍ መስጠት እፈልጋለሁ ፣ ግን ለአሁኑ በአሁኑ ጊዜ ምንም ባለብዙ-ሞዴል ዲቢኤምኤስ በግራፍ ሞዴል ላይ “የተመሰረቱ” አለመኖሩን ልብ ሊባል ይችላል (RDF እንደ እሱ ዓይነት ሊቆጠር ይችላል) . አንዳንድ ትንሽ ባለብዙ ሞዴሊንግ - RDF ማከማቻ ድጋፍ ለተለዋጭ LPG ግራፍ ሞዴል - በ ውስጥ ውይይት ይደረጋል
III. OLTP vs. ኦላፕ
ሆኖም ግን, ተመሳሳይ ጋርትነር
ግን የ RDF ማከማቻዎች በ OLTP-OLAP ልኬት ላይ የት ይገኛሉ? እኔ በዚህ መንገድ እመልሳለሁ: እዚያም እዚህም የለም. የታሰቡትን ለማመልከት፣ አንዳንድ ሦስተኛው ምህጻረ ቃል ያስፈልጋል። እንደ አማራጭ ሀሳብ አቀርባለሁ። ኦሊፕ - የመስመር ላይ አእምሯዊ ሂደት።
ሆኖም፣ አሁንም፡-
- በግራፍዲቢ ውስጥ የተተገበረው ከMongoDB ጋር ያለው የውህደት ስልቶች ትንሽ አይደሉም
የታሰበ ነው። የአፈፃፀም ጉዳዮችን ለመጻፍ ዙሪያ ለመስራት; - ስታርዶግ የበለጠ እና ሙሉ በሙሉ ይሄዳል
እንደገና ይጽፋል ሞተር, እንደገና የመቅዳት አፈጻጸምን ለማሻሻል ግብ ጋር.
አሁን አንድ አዲስ ተጫዋች ለገበያ ላስተዋውቅ። ከ IBM Netzza እና Amazon Redshift ፈጣሪዎች -
SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE { … }
IV. RocksDB
ቀድሞውኑ ከፍ ያለ
በመጀመሪያ ፣ በመመዘን
በሁለተኛ ደረጃ፣ በሚመለከታቸው ርዕሰ ጉዳዮች ላይ ፕሮጀክቶች (ማለትም፣ ምርቶች አይደሉም) በRoksDB ላይ ተፈጥረዋል።
ለምሳሌ፣ ኢቤይ RocksDBን ይጠቀማል
ሌላ ምሳሌ - ከጥቂት ወራት በፊት የታየ
V. LPG ድጋፍ
በ LPG ግራፎች እና RDF ግራፎች መካከል ያለውን ዋና ልዩነት ላስታውስዎ።
በኤልፒጂ ውስጥ የስክላር ባህርያት ወደ ጠርዝ አጋጣሚዎች ሊመደቡ ይችላሉ, በ RDF ውስጥ ግን "አይነቶችን" (ነገር ግን የመለኪያ ባህሪያት ብቻ ሳይሆን ተራ ግንኙነቶች) ብቻ ሊመደቡ ይችላሉ. ይህ የRDF ገደብ ከ LPG ጋር ሲነጻጸር
በግልጽ እንደሚታየው የ “LPG ድጋፍ” ተግባር በሁለት ክፍሎች ይከፈላል-
- በውስጡ የ LPG አወቃቀሮችን ለመምሰል በሚያስችል የ RDF ሞዴል ላይ ለውጦችን ማድረግ;
- በዚህ በተሻሻለው ሞዴል ውስጥ ውሂብን ለመድረስ በሚያስችል የRDF መጠይቅ ቋንቋ ላይ ለውጦችን ማድረግ ወይም ለዚህ ሞዴል መጠይቆችን በታዋቂ LPG መጠይቅ ቋንቋዎች መተግበር።
V.1. የውሂብ ሞዴል
እዚህ ብዙ ሊሆኑ የሚችሉ አቀራረቦች አሉ.
V.1.1. የነጠላቶን ንብረት
RDF እና LPGን ለማስማማት በጣም ትክክለኛው አቀራረብ ምናልባት ሊሆን ይችላል።
- በምትኩ, ለምሳሌ, ተሳቢው
:isMarriedTo
ትንበያዎች ጥቅም ላይ ይውላሉ:isMarriedTo1
,:isMarriedTo2
እና የመሳሰሉት. - እነዚህ ተንብዮዎች የአዳዲስ የሶስትዮሽ ርዕሰ ጉዳዮች ይሆናሉ፡-
:isMarriedTo1 :since "2013-09-13"^^xsd:date
እና ሌሎች. - የእነዚህ ተሳቢዎች ምሳሌዎች ከጋራ ተሳቢ ጋር ያለው ግንኙነት በቅጹ ሦስት እጥፍ የተቋቋመ ነው።
:isMarriedTo1 rdf:singletonPropertyOf :isMarriedTo
. - በእርግጥ ፣
rdf:singletonPropertyOf rdfs:subPropertyOf rdf:type
ነገር ግን ለምን ብቻ መጻፍ እንደሌለብህ አስብ:isMarriedTo1 rdf:type :isMarriedTo
.
የ "LPG ድጋፍ" ችግር እዚህ በ RDFS ደረጃ ተፈትቷል. እንዲህ ዓይነቱ ውሳኔ በተገቢው ውስጥ ማካተትን ይጠይቃል
V.1.2. ማሻሻያ በትክክል ተከናውኗል
ያነሱ የዋህነት አቀራረቦች የሚመነጩት የንብረት ሁኔታዎች በሶስትዮሽ ሙሉ በሙሉ ፈጣን መሆናቸውን ከመገንዘብ ነው። ስለ ትሪፕሎች አንድ ነገር ለመናገር በመቻላችን ስለ ንብረት ጉዳዮች ማውራት እንችላለን።
ከእነዚህ ዘዴዎች ውስጥ በጣም ጠንካራው
<<:bob :isMarriedTo :alice>> :since "2013-09-13"^^xsd:date .
V.1.3. ሌሎች አቀራረቦች
በመደበኛ የትርጓሜ ትምህርት መጨነቅ አይችሉም፣ ነገር ግን በቀላሉ ሶስት ፕሌቶች የተወሰኑ መለያዎች እንዳሏቸው ያስቡ፣ እነሱም፣ በእርግጥ፣ ዩአርአይዎች፣ እና ከእነዚህ ዩአርአይዎች ጋር አዲስ ሶስት እጥፍ ይፈጥራሉ። የቀረው በSPARQL ውስጥ የእነዚህን ዩአርአይዎች መዳረሻ መስጠት ነው። ስለዚህ
በአሌግሮግራፍ
:bob :marriedTo :alice {"since" : "2013-09-13"}
V.2. የጥያቄ ቋንቋዎች
በአምሳያው ደረጃ LPGን በአንድ ወይም በሌላ መንገድ ከደገፉ በእንደዚህ ዓይነት ሞዴል ውስጥ በመረጃ ላይ መጠይቆችን ማድረግ ያስፈልግዎታል።
SELECT * { <<:bob :isMarriedTo ?wife>> :since ?since }
- አንዞግራፍም ይደግፋል
ስፓርክኤል* እና ሊደግፍ ነው።ቀፎ ፣ የጥያቄ ቋንቋ በNeo4j። - ስታርዶግ የራሱን ይደግፋል
ማስፋፋት SPARQL እናእንደገና ግሬምሊን እንደዚህ ያለ ነገር በመጠቀም በSPARQL ውስጥ የሶስትዮሽ ዩአርአይ እና “ሜታ-መረጃ” ማግኘት ይችላሉ።
SELECT * {
BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)
?id :since ?since
}
- አሌግሮግራፍም የራሱን ይደግፋል
ማስፋፋት ስፓርክኤል፡
SELECT * { ("since" ?since) franz:attributesNameValue ( :bob :marriedTo ?wife ) }
በነገራችን ላይ ግራፍዲቢ በአንድ ጊዜ LPGን ሳይደግፍ Tinkerpop/Gremlinን ደግፏል፣ነገር ግን ይህ በስሪት 8.0 ወይም 8.1 ቆሟል።
VI. የፈቃድ ማጥበብ
በ"triplestore of choice" እና "open source triplestore" ስብስቦች መገናኛ ላይ በቅርብ ጊዜ የተጨመሩ ነገሮች የሉም። አዲሱ የክፍት ምንጭ RDF ማከማቻዎች ለዕለታዊ አጠቃቀም ጥሩ ምርጫ ከመሆን በጣም ሩቅ ናቸው፣ እና እኔ ልጠቀምባቸው የምፈልጋቸው አዲሶቹ ባለ ሶስት እጥፍ መደብሮች (እንደ አንዞግራፍ ያሉ) የተዘጉ ምንጮች ናቸው። ይልቁንስ ስለ መቀነስ ማውራት እንችላለን...
በእርግጥ ክፍት ምንጭ ከዚህ ቀደም አልተዘጋም ነገር ግን አንዳንድ የክፍት ምንጭ ማከማቻዎች ቀስ በቀስ እንደ ምርጫ አይታዩም። የክፍት ምንጭ እትም ያለው Virtuoso በእኔ አስተያየት በትልች ውስጥ ሰምጦ ነው። Blazegraph በ AWS የተገዛ እና የአማዞን ኔፕቱን መሠረት ፈጠረ; አሁን ቢያንስ አንድ ተጨማሪ መለቀቅ ይኑር አይኑር ግልፅ አይደለም። ጄና ብቻ ቀረች...
ክፍት ምንጭ በጣም አስፈላጊ ካልሆነ ፣ ግን እሱን መሞከር ይፈልጋሉ ፣ ከዚያ ሁሉም ነገር እንዲሁ ከበፊቱ ያነሰ ሮዝ ነው። ለምሳሌ:
- ስታርዶግ
ይቆማል ነፃውን ስሪት ማሰራጨት (ይሁን እንጂ የመደበኛ ስሪት የሙከራ ጊዜ በእጥፍ ጨምሯል); - в
ግራፍዲቢ ደመና , ከዚህ ቀደም ነፃ መሰረታዊ እቅድ መምረጥ የሚችሉበት, አዲስ የተጠቃሚ ምዝገባዎች ታግደዋል.
በአጠቃላይ፣ ለአማካይ የአይቲ ሰው፣ ቦታ ከጊዜ ወደ ጊዜ ተደራሽ እየሆነ መጥቷል፣ እድገቱ የኮርፖሬሽኖች ዕጣ እየሆነ ነው።
ምንጭ: hab.com