- •I also would like to thank Frank van Harmelen who offered me a job and Мен сондай-ақ маған жұмыс ұсынды және кім Франк Ван Harmelen алғысымды білдіргім келеді
- •1.2 Parallel and distributed reasoning 1.2 параллель және таратылған пайымдау
- •2.6 The MapReduce programming model 2.6 MapReduce бағдарламалау моделі
- •100 1 Млн Құрылғыны пайдалану үштіктің мен нәтижелері sublinear ауқымдылығы көрсетеді.
- •3.3 Сөздік кодтау
- •4.1 Неге біз сөздік кодтау мұқтажбыз
- •140Mb туралы, бұл әлі күнге дейін нақты машиналар үшін мүмкін, бірақ аз емес сома болып табылады
- •300 Млн бірегей ресурстары. Мөлшерін, біздің алдыңғы баға жасай отырып,
- •4.4.1 Шолу
- •3 Тапсырма өз міндеті id кодтау байт. Міндет id маркер өзіндік ретінде әрекет
- •Id және мәні ретінде үштік толық емес тіпті редукторы өңдеуге бар, сондықтан
- •13 Біз, өйткені тіпті біз жабу есептеу тіркелген нүктеге жетті
- •5.4 Үшінші және қорытынды жүзеге асыру
- •ValuesToMatch. (мәндер) қосу
- •Inverseofproperties (егер. (мәні бар. Береді,), содан кейін
- •6.4 Үшінші блок: sameAs есептілігі
- •6.5. Төртінші блок: сыныбы және subproperty есебіне 61 эквиваленттік
- •6.5 Төртінші блок: сыныбында бастап эквиваленттік және
- •6.7 Алтыншы блок: мұраға сияқты
- •6.8 Жетінші блок: hasValue мәлімдемелер
- •64 Тораптар келді.
- •12 Сағат, 130 жұмыс орны іске қосылды және астам 3.8b үштіктің алынған.
Id және мәні ретінде үштік толық емес тіпті редукторы өңдеуге бар, сондықтан
айырмашылық әлі де аз, сондықтан көп мәндер осы, тек 8 байт әрбір болып табылады. Егер
Түйіндердің жиілігі айырмашылық елеулі емес, біркелкі таралған, бірақ егер
біз, онда проблема туындайды бірнеше өте танымал ресурс бар
нөмірлерін пайдаланыңыз. Бұл мәселені шешу үшін, біз бастапқыда болып табылатын ресурстар анықтауға болады
өте танымал және бір редукторы тапсырмасы өңделетін арқылы алдын алу.
Біз есептейді тапсырманы іске қосу арқылы танымал ресурстарды анықтауға болады
деректер ресурстарды жағдай. Біз қолмен, біз аламыз, ол жасадық кейін
немесе сценарий, ең танымал ресурстарына нөмірін тағайындау және осы сақтауға
кішкентай мәтіндік файлда бірлестігі.
Бұл файл түрлендіргіш арқылы жүктелген және хэш кестеде жадында сақталуы мүмкін
Page 34 |
MAPREDUCE функциялары ретінде 34CHAPTER 4. сөздік кодтау
А-жад кэш. Картография шығару алдында луын олар жоғын тексеріңіз
ресурстар осы хэш кестеде бар. Егер олар бар болса, оның орнына орнату
олар нысанда нақты жалған кілтін орнату кілті ретінде ресурстар:
«FAKE» + Random_data + «-» + ID_MANUALLY_ASSIGNED
кездейсоқ деректер бірдей ID соңында барлық луын жол бермейді
Сонымен редукторы. Редукторы, егер ол бірінші тексереді пернеге бірқатар тағайындайды кезде
кілті «FAKE» басталады және ол егер бұл жай ғана соңына өндіреді
сол нөмірді орнына жаңа бір жол және пайдалану. Осылайша, біз барлық сендіргім
сол ресурстар, олар әр түрлі арқылы өңделеді, тіпті егер сол нөмірді алады
редукторлары. Біз қатты бірге теңдестіру жүктеме әсерін азайту кэшін пайдалану
есептеу жеделдету әсері.
Page 35 |
5-тарау
Сондай-ақ RDFS пайымдау
MapReduce функциялары
Бөлімінде 2.4. 1-біз RDFS пайымдау артта теориясын сипатталған. Біз оны анықталған
біз біз әзірге белгіленген енгізу белгілі бір ережелерін қолдану ұстап, онда процесс ретінде
Түзету нүктесін жетеді.
RDFS пайымдау түрлі жолдармен жасалуы мүмкін. әзірлеу процесі
Алгоритмнің өте қарапайым және манекен жүзеге асыру басталды және ол
ол түпкілікті және тексерілген нұсқасы аяқталды дейін көптеген өзгерістерге ұшырады.
Бұл бөлімде алғашқы аңғалдық бастап үш ықтимал алгоритмдері сипаттайды
бір тазарған және оңтайландырылған нұсқасын аяқталатын. Осы түсініктеме
бірге әзірленді бағдарламасын әзірлеу процесін көрсетеді
Бұл жұмыс. бірінші екі нұсқасы, енді ағымдағы код бар
олар ескірген және inefficients болып табылады. үшінші және соңғы алгоритм болып табылады
толығырақ сипатталған және ол қойылымдар бағалау үшін пайдаланылатын бірі болып табылады
Біздің тәсіл.
Неинтересно ережелер есептемегенде 5.1
RDFS reasoner 14 ережелер (кестеде хабарлады бір Ruleset тұрады 2.1 )
біз деректер жүгінуге бар екенін. Бұл Ruleset жылы белгілі бір ережелері бар
бұл тривиальное және қызықсыз болып табылады және біз оларды талқылау қоспаймыз.
Бұл ережелер, оларды қалдырып шешім ереже саны 1,4a, 4В, 6 және 10-болып табылады
олар үшін пайдаланылуы мүмкін емес қарапайым шығу фактісі туралы өтірік жүзеге
одан әрі туынды. Басқа сөзбен айтқанда айтты, олар туралы ақпаратты, бұл өндіруге емес,
біздің ойымыздың мақсаттары үшін жарамды болып табылады. Бұл ережелер тек бір үштік пайдалану жұмыс
кіріс және жағдайда, пайдаланушы стандартты RDFS ретінде өзін ұстай reasoner талап
reasoner (сондықтан бұл тривиальное шығу, сондай-ақ оралған), біз оңай іске асырылатын болады
жай бойынша бірыңғай қолдануға және соңында теңдестірілген MapReduce тапсырмасын жүктеу
есептеу.
Бұл ережелер үлгі үшін алайық маңызсыз неге жақсы түсіндіру
35
Page 36 |
36
MAPREDUCE функциялары ретінде 5-тарау RDFS Пайдасына
ережелер 4А және 4В. Негізінен қандай осы ережелер істеу анық кез келген URI интерфейсін белгілеу болып табылады
пән немесе rdfs түрі ретінде үш нысан болып табылады: Ресурс. Бұл ережелер, болмашы нәрсе
және шын мәнінде жүзеге асыру үшін өте оңай, бірақ олардың шығу үшін пайдаланылуы мүмкін емес
одан әрі тұжырым. Ереже 4а шығаруды пайдалана отырып, өрт алатын жалғыз ережелері
және 4В ережелері 2,3,7 және 9, бірақ олар ешқашан болады. себебі тұр
біз келсе, содан кейін ережелер 2 және 3-өрт RDF деп факт: түрі доменді болуы керек немесе
онымен байланысты диапазоны. Түрі: Сондай-ақ, біз содан кейін ережелері 7 және 9 өрт RDF деп келсе,
тағы бір нәрсе немесе rdfs бір subproperty ретінде анықталуы қажет: сыныбында ретінде Ресурс
тағы бір нәрсе. Түрі мен rdfs: RDF екі жылдан бері Ресурс стандартты URIs болып табылады
RDF тілі арқылы анықталған пайдаланушы олардың семантикалық өзгертуге рұқсат етілмейді
теңшелетін домендерді немесе ауқымдарды қосуды немесе бір нәрсе сыныбында, оларды анықтайтын
басқа. Мұндай үштік енгізу бар, онда олар жай, өйткені елемеу керек
Осы (толығырақ стандартты тілін қайта көріңіз қауіпті үштік болып табылады
туралы онтология Айдап әкету бөлімінде делінген 3 ). Біз кіріс деректерді болжауға егер
таза және стандартқа сай, содан кейін 2,3,7 және 9 өрт ешқашан және біз ережелері
safetly ережелері 4А және 4В пайдаланылуы мүмкін емес шығысты өндіруге деп үміттене алады
одан әрі пікірлерден үшін. Сонымен мотивация тасталды басқа, сондай-ақ қолданылады
ережелер. Біз осы неинтересно ережелер қалдыру кейін, ережелер жиынтығы ішкі жиындары болып
9 әр түрлі ережелер жасалған.
5.2 Бастапқы және аңғалдық жүзеге асыру
Біз бірінші түрлендіреді техникалық тапсырманы қолданылады дамыған бағдарламасы
біз үшін неғұрлым ыңғайлы форматта N-бөлмелі форматында деректер. Бұл жұмыс
біздің ойымыздың тапсырма үшін маңызды емес, ол қатаң техникалық болып табылады. тек
бұл жасайды нәрсе деп аталатын файлдар сақталған Java объектілерін ақпаратты түрлендіру болып табылады
«SequenceFile».
А «SequenceFile» <кілті, мәні> туралы мәндер сияқты ақпаратты сақтайтын файл болып табылады.
Пернелері мен құндылықтар Екі нақты іске асыру, атап айтқанда, Java объектілері болып табылады
«WritableComparable» деп аталады Hadoop интерфейс. Бұл интерфейс кейбір анықтайды
нысандар ағынының өздерін сериялау үшін пайдалануға әдістері (бұл болып табылады
SequenceFile жағдайда filestream). деректерді енгізу, сақтау артықшылығы
реттік файлын пайдаланып Hadoop автоматты түрде алады, бұл шын мәнінде жатыр ком-
Осы файлдарды және ол алдын ала анықталған оқып енгізу оқырмандар ұсынады баспасөз және тарқатып
ашық жолмен оларды. ақпарат қазірдің өзінде <K, V> ретінде кодталған
Кіріс айналдырмай тікелей жолмен оқуға болады.
Бұл бастапқы нұсқасын пайымдау әр 9 түрлі жұмыс орындарын, арқылы жүзеге асырылады
оларға бір ережені жүзеге асырады. Біз жеткенше Бұл жұмыс орындары қайталана іске қосылды
Түзету нүктесі. Олар барлық өте, себебі біз барлық бір жұмыс орындарын сипаттау емес,
Әр басқаларға ұқсас. Оның орнына, біз жай ғана бір ережені алып және жұмысқа хабарлауға болады
мысал.
5.2.1 Мысал пайымдау тапсырма
біз мысал ретінде қабылдайды ереже болып табылады:
Page 37 |
5.3. ЕКІНШІ ЖҮЗЕГЕ АСЫРУ
37
егер
а RDF: түрі B
және В rfds: subClassOf C
содан кейін RDF: түрі C
Біз осы ережені қолдану керек болса, біз бірінші жалпы болса, іздеу керек
Кіріс деректер кез келген екі үштіктің арасында элементі. үштік келуі тиіс
ереже тайпасының жазылған форматында бар. Бұл, атап айтқанда, мысалда
Екінші болуы тиіс, ал түрі: үштік бір предикат ретінде URI RDF болуы тиіс
орнына rdfs: subClassOf. екі үштіктің осы, кем дегенде бір элемент ортақ керек
Атап айтқанда, егер бірінші нысаны субъектісі ретінде бірдей болуы керек
Екінші.
Біз бірінші түрлі қосылуға тырысыңыз процесі ретінде пайымдау сипаттауға болады
содан кейін үштік, және The мүмкін қосылу жағдайда, жаңа ақпарат сендіреді. Егер біз
Осы тұрғыдан астында дифференциалдау процесін қараңыз, біз мәселені жазуға болады
қосылады барлық ықтимал табу проблема ретінде белгілі ережені қолдану
деректер ақпарат арасындағы.
Біз деректер біз бір жоғарыда хабарлады ереже үшін қосылу жүзеге асыру мүмкін
MapReduce жұмыс. Мұндай жұмыс жылы кіріс үштік болып табылады ма түрлендіргіш тексереді
Үштік немесе «сыныбы» Үш «теріңіз». Бұл түрі үштік болса, онда ол жаңа қойылуы шығарады
үш және сондай-ақ құны ретінде негізгі объектісі Triple өзі бар. Оның орнына, ол, егер
тармағы үштік болып табылады, ол негізгі Triple пәндік орнына объектісі ретінде шығарады.
олардың кілті сәйкес редукторы ерік топ луын. Екенін білдіреді
нысанымен кейбір «түрі» үштіктің бар болса, басқа тақырыбына тең
Олар топтастырылған болады үштіктің «сыныбы». редукторы қайталау болады
жадында тобында үштіктің екі түрін үнемдеу тізімі. Ол жалғасуда, содан кейін болады
жаңа алынған ақпаратты шығаратын. Біз алгоритімінде алгоритмі есеп 4.
Барлық тоғыз түрлі ережелер бірдей құрылымға ие: картография шығысты
кілттері сияқты матч балл болуы мүмкін ықтимал URI жолдарын пайдаланып луын. The
редукторы матч орын және ол орын кезде олар тексереді
жай шығу жаңа ақпарат.
Бұл бірінші іске асыру көптеген проблемалар бар. бірінші және ең
маңызды жүктеуді теңдестіру проблема болып табылады. Егер URI өте танымал болып табылады және пайдаланылатын болса,
көптеген қосылады, содан кейін сол URI қатысы бар барлық үштіктің бір жіберіледі
оларды жадыда сақтауға қабілетті болуы тиіс редукторы. Тағы бір проблема сүйенеді
біз байланысты жұмыс орындарын айнымалы санын іске қосу үшін қажет екендігін
Кіріс деректер. Мысалы, біз сыныбында транзитивность ережесін (11 ереже, егер
кестеде 2.1 кіріс құрамында болса), ол бәрін алуға LOGn жұмыс орындарын өтеді
N үштіктің сыныбында тізбегі (а сыныбында В, В сыныбында C, C сыныбында D және т.б.).
Осының бәрі іске асыру жарамсыз етеді және шын мәнінде, бұл нұсқа болды
бірден бас тартты. Екінші жүзеге асыру тәсілдері
жай жоғарыдағы суретте екі проблемаларды еңсеру үшін түрлі жолмен проблема.
5.3 Екінші жүзеге асыру
алдыңғы жүзеге асыру мүмкін үшін тап болды негізгі проблемалар
Тізімдегі қайта:
Page 38 |
38
MAPREDUCE функциялары ретінде 5-тарау RDFS Пайдасына
Алгоритм 4 RDFS пайымдау: мысал аңғалдық жүзеге асыру
Картада (басты, мәні):
// Кілт: маңызды емес
// Мәні: үштік
мәні болса. предикатты = RDF: содан кейін теріңіз
шығыс (мәні. нысан, мән)
elseif мәні. предикатты = rdfs: сыныбында, содан кейін
шығыс (мәні. пәні, мәні)
(кілтін итератора мәндерін) азайту:
құндылықтар үштік үшін
. (Triple предикатты = RDF, егер: содан кейін теріңіз
түрлері. (үштік) қосу
тағы
сыныбында. (үштік) қосу
(түрлері бойынша typeTriple) үшін істеу
(кіші subclassTriple) үшін істеу
newTriple = typeTriple. тақырыбы, RDF: түрі, subclassTriple. зат
шығару (нөл, newTriple)
• жүктемені теңгеру Ақау: редукторы фазасында қосылу істеп про- болуы мүмкін
көптеген үштіктің ортақ өте танымал URIs бар болған жағдайда көп мәселе;
• күрделілігі бағдарлама сыныптар тіпті бір тізбегі бар болса,
деректер біз толық жабу есептеу үшін көптеген қосымша жұмыс орындарын керек.
Екінші жүзеге асыру ережесін ның қайта реттеу осы екі мәселені шешеді
орындау тәртібі мен жадында схема үштіктің тиеу.
5.3.1 ереже орындау тәртібі
Біз барлық тоғыз ережелері шығару үштік төрт түрлі байқайсыз. Ереже
5 және 12 шығыс subproperty қарым-қатынастарды анықтау схемасы үштіктің. Барлық осы
subPropertyOf: олар rdfs өйткені үштік өзгелердің ажыратуға болады
предикат ретінде. Алдыңғы ережелерге қарағанда ережесі 8, 11 және 13 қайтару ұқсас үштік
бірақ rdfs бар: subClassOf предикат ретінде. Ереже 2, 3 және 9 шығыс деректер утраивает
жекелеген ресурстар түрін анықтайды. Барлық осы үштіктің үлесі RDF: түрі ретінде
предикат. Тек әр сипаттағы болуы мүмкін үш 7 шығаруларын билік.
Біз ережелерін тайпасының қарасақ, онда біз, сондай-ақ белгілі бір бо- лып жасауға қабілетті
пайымын. Схемасымен Ереже 5 және 10 ғана жұмыс сыныбы анықтау немесе утраивает
ресурстар арасындағы subproperty қарым-қатынас. Бар Ереже 8, 9, 12 және 13 жұмыс
(RDF: түрі) бар үштіктің жиыны (rdfs: subClassOf) немесе (rdfs: subPropertyOf)
Page 39 |
5.3. ЕКІНШІ ЖҮЗЕГЕ АСЫРУ
39
предикат ретінде. Тек 2, 3 және 7-жүзінде енгізу кез келген үштік қабылдайды болады билік. The
біз ережелері орындалуын іске себебі, егер ережелер арасындағы қарым-қатынастар пайдалы
арнайы ретпен біз үшін қажетті тапсырмаларының санын шектеуге болады
толық жабу. Сурет 5.1 есептерді осы ережелерге арасындағы байланыс.
5.1-сурет: RDFS ережелері қарым-қатынас
тамаша ереже орындау суреттің төменгі бастау керек және
жоғарғы өтіңіз. Яғни, біз бірінші транзитивность ережелер (ереже 5 қолданылуы тиіс дегенді білдіреді
және 11), содан кейін ережені 7 қолдануға, содан кейін 9 билік, 2 және 3 билік, сайып келгенде, Ереженің 8
12 және 13. Бұл үш ережелері пайдаланылуы мүмкін ықтимал шығаруға болады үштік
бастапқы транзитивность ережелер бойынша, бірақ біз мұқият қарап, егер біз осы қарағанда қараңыз
олай емес. 8-ереже ережелер 9 және 11 пайдаланылуы мүмкін, бұл үштік шығарады.
Шығыс, бұл ресурс х еді, өйткені біз әдетте 9 істі жоққа
Ресурс: rdfs түрі болып табылады. Бұл туралы әр ресурс үшін жарамды болып табылады және ол болуы мүмкін
тривиальной себебі тасталды бір ереже ереже 4а арқылы, сондай-ақ алынған.
8-ереже ереже 11 өрт жасай алар еді. Біз туралы надклассового бар екенін іс жоққа
rdfs: біз схема қайтадан анықталуы мүмкін емес деп болжауға, өйткені ресурс бірақ ол
оның сыныбында бар болуы мүмкін. Бұл жағдайда біз мәлімдеме материалдандырылған болады
Ресурс: бұл нәрсе rdfs тармағы болып табылады дейді. Бұл туралы мүмкін емес
сондықтан цикл аяқталады, қандай да бір қосымша туынды үшін пайдаланылуы мүмкін.
SubPropertyOf rdfs: мүшесі 12 шығаруларын нысаны rdfs бір үштік ереже. Осы
Өрт ережелерді 5 және 7 жасай алатын. Екі жағдайда да шығыс бұл үштік болады
Page 40 |
40
MAPREDUCE функциялары ретінде 5-тарау RDFS Пайдасына
енді пайдалану мүмкін емес. ереже 13. Ереженің 9 және 11-бірге өрт алар еді сол оқиға
subClassOf rdfs: әріптік бірақ олар нысаны rdfs шығару үштік немесе еді
немесе с rdfs: түрі rdfs: әріптік (осы соңғы бір дұрыстығы өйткені біз даулы болып табылады
) ресурс әріптік екенін кірісіп отырғанын. Қалай болғанда да екі жағдайда да осы үштіктің
кез келген туынды әкеп соқпайды.
ең маңызды қарау осы соңғы ережелері жасайды, бұл мүмкін емес болып табылады
Бұл ережелер қайтадан күйдіру жасай аласыз туынды. Басқаша айтқанда жоқ,
ережелерін орындау негізгі цикл. Бұл қарастыру Біз маңызды
бұл қоспағанда (бірнеше рет бір жұмысты қайта іске қажеті жоқ дегенді білдіреді
іс ережесі) өзімен бірге рекурсивті болып табылады. Біз ережелер 8, 12 қолданылған соң
