سیمالټ ویب او لینک شوي ډاټا د بهرنی فضا په څیر دي: هلته ژوند نشته. د لږ یا لږ اوږدې مودې لپاره هلته د تګ لپاره ... زه نه پوهیږم چې دوی تاسو ته د ماشوم په توګه د ځواب په ځواب کې څه وویل "زه غواړم یو خلاباز شم." مګر تاسو کولی شئ وګورئ چې په ځمکه کې څه پیښیږي؛ دا خورا اسانه ده چې شوکیا ستورپوه یا حتی مسلکي شي.
مقاله به په وروستي ، د څو میاشتو څخه زاړه نه وي ، د RDF ذخیره کولو نړۍ رجحاناتو باندې تمرکز وکړي. په لومړۍ پراګراف کې استعاره د کټ لاندې د عصري اندازې اعلاناتي عکس څخه الهام اخیستل کیږي.
I. د RDF لاسرسي لپاره ګراف کیو ایل
د بکس څخه بهر دا فرصت د دې لخوا چمتو شوی دی:
که چیرې ذخیره داسې فرصت چمتو نکړي، دا د مناسب "حل کونکي" په لیکلو سره په خپلواکه توګه پلي کیدی شي. دا هغه څه دي چې دوی یې کړي، د بیلګې په توګه، په فرانسوي پروژه کې
د سیمانټیک ویب او لینک شوي ډیټا د ارتودوکس پیروان له نظره ، دا ټول ، البته ، غمجن دي ، ځکه چې داسې بریښي چې د راتلونکي ډیټا سیلو شاوخوا رامینځته شوي ادغام لپاره ډیزاین شوي ، او مناسب پلیټ فارمونه ندي (د RDF پلورنځي ، البته) .
د SPARQL سره د GraphQL پرتله کولو تاثیرات دوه چنده دي.
- له یوې خوا ، ګراف کیو ایل د SPARQL لرې خپلوان په څیر ښکاري: دا د پوښتنو د بیا نمونې کولو او ضرب کولو ستونزې حل کوي چې د REST لپاره ځانګړي دي - پرته له دې ، شاید ، دا به په پام کې نیولو امکان ونلري. د پوښتنې ژبهلږترلږه د ویب لپاره؛
- له بلې خوا، د GraphQL سخت سکیما مایوسه ده. په دې اساس، د دې "انځور پیژندنه" د RDF بشپړ انعکاس په پرتله خورا محدود ښکاري. او د ملکیت لارو هیڅ انلاګ شتون نلري ، نو دا حتی روښانه نده چې ولې دا "ګراف-" دی.
II. د MongoDB لپاره اډاپټرونه
یو رجحان د تیر یو بشپړونکی.
- اوس په Stardog کې
ممکنه ده - په ځانګړې توګه، ټول په ورته ګراف کیو ایل کې - د MongoDB ډیټا نقشه په مجازی RDF ګرافونو کې تنظیم کړئ؛ - Ontotext GraphDB په دې وروستیو کې لري
دا اجازه ورکوي په MongoDB پوښتنې کې SPARQL کې ټوټې داخل کړئ.
که موږ د JSON سرچینو ته د اډاپټرونو په اړه په پراخه کچه وغږیږو ، کوم چې لږ یا لږ "په الوتنه کې" اجازه ورکوي چې د JSON نمایندګي وکړي چې پدې سرچینو کې د RDF په توګه زیرمه شوي ، موږ کولی شو خورا اوږدمهاله یادونه وکړو.
د لومړیو دوو رجحاناتو لنډیز، موږ کولی شو ووایو چې د RDF ذخیره د "پولیګلوټ دوام" په شرایطو کې د ادغام او عملیاتو لپاره بشپړ چمتووالی ښیي. په هرصورت، دا معلومه ده چې دا وروستی د اوږدې مودې لپاره د فیشن څخه بهر دی، او د هغې لخوا بدل شوی
په لنډه توګه، هیڅ لاره. زه غواړم یو جلا مقاله د څو ماډل DBMSs موضوع ته وقف کړم، مګر د اوس لپاره دا یادونه کیدی شي چې اوس مهال د ګراف ماډل پر بنسټ د څو ماډل DBMSs شتون نلري (RDF د دې یو ډول ګڼل کیدی شي) . ځینې کوچني ملټي ماډلینګ - د بدیل LPG ګراف ماډل لپاره د RDF ذخیره کولو ملاتړ - به په کې بحث وشي
III. OLTP vs. OLAP
په هرصورت، ورته ګارټینر
مګر د RDF ذخیره د OLTP-OLAP پیمانه چیرته موقعیت لري؟ زه به په دې ډول ځواب ورکړم: نه هلته او نه دلته. د دې لپاره چې د دوی هدف څه وي، ځینې دریم لنډیز ته اړتیا ده. د یو اختیار په توګه زه وړاندیز کوم OLIP - آنلاین فکري پروسس کول.
په هرصورت، بیا هم:
- د MongoDB سره د ادغام میکانیزمونه په GraphDB کې پلي شوي لږ نه دي
اراده د لیکلو فعالیت مسلو په اړه کار کول؛ - سټارډوګ حتی نور هم په بشپړ ډول ځي
بیا لیکي انجن، بیا د ریکارډ فعالیت ښه کولو هدف سره.
اوس اجازه راکړئ بازار ته یو نوی لوبغاړی معرفي کړم. د IBM Netezza او Amazon Redshift جوړونکو څخه -
SELECT ?month (COUNT(?event) OVER (PARTITION BY ?month) AS ?events) WHERE { … }
IV. RocksDB
لا دمخه لوړ
لومړی، قضاوت کول
دوهم، په اړوندو موضوعاتو کې پروژې (دا محصولات ندي) په RocksDB کې رامینځته شوي.
د مثال په توګه، ای بی په RocksDB کې کاروي
یو بل مثال - یو چې څو میاشتې وړاندې څرګند شو
V. د LPG ملاتړ
اجازه راکړئ تاسو ته د LPG ګرافونو او RDF ګرافونو ترمینځ اصلي توپیر یادونه وکړم.
په LPG کې، د سکیلر ملکیتونه د څنډې مثالونو ته ټاکل کیدی شي، پداسې حال کې چې په RDF کې دوی یوازې د څنډې "ډولونو" ته ټاکل کیدی شي (مګر نه یوازې د سکیلر ملکیتونه، بلکې عادي اړیکې هم). د LPG په پرتله د RDF دا محدودیت
په ښکاره ډول، د "LPG مالتړ" دنده په دوو برخو ویشل کیږي:
- د RDF ماډل کې بدلونونه رامینځته کول چې په دې کې د LPG جوړښتونو انډول کول امکان لري؛
- د RDF پوښتنې ژبې کې بدلونونه رامینځته کول چې پدې بدل شوي ماډل کې ډیټا ته لاسرسی ممکن کوي ، یا د LPG پوښتنو په مشهورو ژبو کې دې ماډل ته د پوښتنو کولو وړتیا پلي کوي.
V.1. د معلوماتو ماډل
دلته ډیری ممکنه لارې شتون لري.
V.1.1. د سنگلټون ملکیت
د RDF او LPG همغږي کولو لپاره ترټولو لفظي لاره شاید ده
- پر ځای، د مثال په توګه، predicate
: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. نورې لارې چارې
تاسو نشئ کولی د رسمي سیمانټیکونو سره زحمت وکړئ ، مګر په ساده ډول فرض کړئ چې درې ګونی ځانګړي پیژندونکي لري ، کوم چې البته URIs دي ، او د دې URIs سره نوي درې ګونی رامینځته کړئ. ټول هغه څه چې پاتې دي په SPARQL کې دې URIs ته لاسرسی ورکول دي. نو
په Allegrograph کې
:bob :marriedTo :alice {"since" : "2013-09-13"}
V.2. پوښتنې ژبې
د ماډل په کچه په یو ډول یا بل ډول د LPG ملاتړ کولو سره ، تاسو اړتیا لرئ په داسې ماډل کې د معلوماتو په اړه پوښتنې رامینځته کړئ.
SELECT * { <<:bob :isMarriedTo ?wife>> :since ?since }
- انزوګراف هم ملاتړ کوي
SPARQL* او ملاتړ ته ځيسایپر , په Neo4j کې د پوښتنې ژبه. - سټارډوګ خپل ملاتړ کوي
پراختیا SPARQL اوبیا ګریملین تاسو کولی شئ د دې په کارولو سره په SPARQL کې درې اړخیز URI او "میټا معلومات" ترلاسه کړئ:
SELECT * {
BIND (stardog:identifier(:bob, :isMarriedTo, ?wife) AS ?id)
?id :since ?since
}
- Allegrograph هم خپل ملاتړ کوي
پراختیا SPARQL:
SELECT * { ("since" ?since) franz:attributesNameValue ( :bob :marriedTo ?wife ) }
په هرصورت، GraphDB په یو وخت کې د Tinkerpop/Gremlin ملاتړ وکړ پرته له دې چې د LPG ملاتړ وکړي، مګر دا په 8.0 یا 8.1 نسخه کې ودرېد.
VI. د جوازونو سختول
د "انتخاب درې پلستر" او "د خلاصې سرچینې ټرپلسټور" سیټونو په تقاطع کې هیڅ وروستي اضافه شوي ندي. د نوي خلاصې سرچینې RDF پلورنځي د ورځني کارونې لپاره د غوره انتخاب څخه خورا اوږده لاره ده ، او نوي درې پلورنځي چې زه یې غواړم وکاروم (لکه انزو ګراف) تړلې سرچینې دي. بلکه، موږ کولی شو د کمښت په اړه خبرې وکړو ...
البته، خلاصې سرچینې په تیرو وختونو کې نه دي تړل شوي، مګر د خلاصې سرچینې ځینې ذخیره ورو ورو نور د غوره کولو ارزښت نه لیدل کیږي. Virtuoso، چې د خلاصې سرچینې نسخه لري، زما په نظر، په کیګونو کې ډوب دی. بلیزګراف د AWS لخوا پیرودل شوی او د ایمیزون نیپچون اساس یې رامینځته کړی؛ اوس دا روښانه نده چې ایا لږترلږه یو بل به خوشې شي. یوازې جینا پاتې ده ...
که خلاص سرچینه خورا مهمه نده ، مګر تاسو یوازې دا هڅه کول غواړئ ، نو هرڅه هم د پخوا په پرتله لږ ګلابي دي. د مثال په ډول:
- سټارډوګ
ودرېږي وړیا نسخه توزیع کړئ (په هرصورت ، د منظم نسخې آزموینې موده دوه چنده شوې)؛ - в
GraphDB کلاوډ ، چیرې چې تاسو دمخه وړیا لومړني پلان غوره کولی شئ ، د نوي کارونکي راجسټریشن ځنډول شوي.
په عموم کې، د اوسط IT شخص لپاره، ځای ورځ تر بلې د لاسرسي وړ کیږي؛ د هغې پراختیا د شرکتونو ډیری برخه کیږي.
سرچینه: www.habr.com