Апацхе Солр

Увод у Апацхе Солр. 2. део Упит за решење

Увод у Апацхе Солр. 2. део Упит за решење
Апацхе Солр [1] је оквир претраживача написан на Јави и заснован на библиотеци претраживања Луцене [6]. У претходном чланку поставили смо Апацхе Солр на Дебиан ГНУ / Линук 11 који ће ускоро бити објављен, покренули смо једно језгро података, учитали примере података и демонстрирали како да извршимо основну претрагу у скупу података помоћу једноставног упит.

Ово је наставак претходног чланка. Покриваћемо како да прецизирате упит, формулишете сложеније критеријуме претраге са различитим параметрима и разумемо различите веб обрасце странице упита Апацхе Солр. Такође, разговараћемо о томе како накнадно обрадити резултат претраге користећи различите излазне формате као што су КСМЛ, ЦСВ и ЈСОН.

Упит Апацхе Солр

Апацхе Солр је дизајниран као веб апликација и услуга која ради у позадини. Резултат је да било која клијентска апликација може комуницирати са Солр-ом тако што ће му слати упите (фокус овог чланка), манипулишући језгром документа додавањем, ажурирањем и брисањем индексираних података и оптимизацијом основних података. Постоје две могућности - преко контролне табле / веб интерфејса или помоћу АПИ-ја слањем одговарајућег захтева.

Уобичајено је користити прва опција ради тестирања, а не ради редовног приступа. На слици испод приказана је контролна табла из корисничког интерфејса Апацхе Солр Администратион са различитим обрасцима упита у веб прегледачу Фирефок.

Прво, из менија испод поља за одабир језгра, одаберите ставку у менију „Упит“. Даље, контролна табла ће приказати неколико поља за унос на следећи начин:

Кликом на дугме Изврши упит покреће се жељени захтев. За практичне примере погледајте испод.

Као друга опција, можете послати захтев помоћу АПИ-ја. Ово је ХТТП захтев који било која апликација може послати Апацхе Солр-у. Солр обрађује захтев и враћа одговор. Посебан случај је повезивање са Апацхе Солр путем Јава АПИ-ја. Ово је препуштено одвојеном пројекту који се зове СолрЈ [7] - Јава АПИ без потребе за ХТТП везом.

Синтакса упита

Синтакса упита је најбоље описана у [3] и [5]. Различити називи параметара директно одговарају именима поља за унос у претходно објашњеним обрасцима. Табела испод их наводи, плус практични примери.

Индекс параметара упита

Параметар Опис Пример
к Главни параметар упита Апацхе Солр - имена поља и вредности. Оцене њихове сличности документују изразе у овом параметру. Ид: 5
аутомобили: * адилла *
*: Кс5
фк Ограничите скуп резултата на надскупове докумената који се подударају са филтером, на пример, дефинисани помоћу Парсер упита упита опсега функција модел
ид, модел
почетак Помици за резултате странице (почетак). Подразумевана вредност овог параметра је 0. 5
редови Одступања за резултате странице (крај). Вредност овог параметра је подразумевано 10 15
врста Одређује листу поља раздвојених зарезима, на основу којих ће се сортирати резултати упита модел узлазно
фл Одређује листу поља која ће се вратити за све документе у скупу резултата модел
ид, модел
вт Овај параметар представља врсту писца одговора за који смо желели да видимо резултат. Вредност овог је подразумевано ЈСОН. јсон
кмл

Претраге се врше путем ХТТП ГЕТ захтева са низом упита у параметру к. Следећи примери ће појаснити како ово функционише. У употреби је цурл за слање упита Солр-у који је инсталиран локално.

Даље, можете дефинисати свој властити руковатељ захтевима да шаље опционалне параметре захтева парсеру упита како би се контролисало које се информације враћају.

Куери Парсерс

Апацхе Солр користи такозвани парсер упита - компоненту која преводи ваш низ претраживања у посебна упутства за претраживач. Анализатор упита стоји између вас и документа који тражите.

Солр долази са разним типовима рашчлањивача који се разликују у начину на који се обрађује послати упит. Стандардни анализатор упита добро функционише за структуриране упите, али је мање толерантан према синтаксним грешкама. Истовремено, ДисМак и Ектендед ДисМак Куери Парсер оптимизовани су за упите сличне природном језику. Дизајнирани су за обраду једноставних фраза које су унели корисници и за тражење појединачних појмова у неколико поља користећи различито пондерисање.

Штавише, Солр такође нуди такозване Фунцтион Куериес (Функцијски упити) који омогућавају комбиновање функције са упитом како би се генерисала одређена оцена релевантности. Ови парсери се називају Фунцтион Куери Парсер и Фунцтион Ранге Куери Парсер. Пример у наставку приказује последњи за одабир свих скупова података за „бмв“ (ускладиштене у пољу података података маке) са моделима од 318 до 323:

цурл хттп: // лоцалхост: 8983 / солр / царс / куери -д '
к = маке: бмв &
фк = модел: [318 ДО 323] '

Пост-обрада резултата

Слање упита Апацхе Солр је један део, али други обрађује резултат претраге. Прво, можете бирати између различитих формата одговора - од ЈСОН-а до КСМЛ-а, ЦСВ-а и поједностављеног Руби формата. Једноставно наведите одговарајући вт параметар у упиту. Пример кода у наставку показује ово за преузимање скупа података у ЦСВ формату за све ставке које користе цурл са есцапеед &:

цурл хттп: // лоцалхост: 8983 / солр / царс / куери?к = ид: 5 \ & вт = цсв

Резултат је листа одвојена зарезима како следи:

Да бисте добили резултат као КСМЛ податке, али два излазна поља чине и моделирају, покрените следећи упит:

цурл хттп: // лоцалхост: 8983 / солр / царс / куери?к = *: * \ & фл = маке, модел \ & вт = кмл

Излаз је различит и садржи и заглавље одговора и стварни одговор:

Вгет једноставно штампа примљене податке на стдоут. Ово вам омогућава накнадну обраду одговора помоћу стандардних алата за наредбени ред. Да наведемо неколико, овај садржи јк [9] за ЈСОН, кслтпроц, кидел, кмлстарлет [10] за КСМЛ, као и цсвкит [11] за ЦСВ формат.

Закључак

Овај чланак приказује различите начине слања упита у Апацхе Солр и објашњава како се обрађује резултат претраге. У следећем делу ћете научити како да користите Апацхе Солр за претрагу у ПостгреСКЛ-у, релационом систему управљања базама података.

О ауторима

Јацкуи Кабета је екологиња, страствени истраживач, тренер и ментор. У неколико афричких земаља радила је у ИТ индустрији и НВО окружењу.

Франк Хофманн је информатички програмер, тренер и аутор и више воли да ради из Берлина, Женеве и Кејптауна. Коаутор књиге за управљање пакетима Дебиан доступне на дпмб.орг

Везе и референце

Контролишите и управљајте кретањем миша између више монитора у оперативном систему Виндовс 10
Двоструки приказ миша омогућава вам контролу и конфигурисање кретања миша између више монитора, успоравајући његово кретање близу границе. Виндовс 10/...
ВинМоусе вам омогућава да прилагодите и побољшате кретање показивача миша на Виндовс рачунару
Ако желите да побољшате подразумеване функције показивача миша, користите бесплатни програм ВинМоусе. Додаје још функција које ће вам помоћи да на нај...
Леви тастер миша не ради у оперативном систему Виндовс 10
Ако уз преносни рачунар или стони рачунар користите наменски миш, али тастер миша не ради у оперативном систему Виндовс 10/8/7 из неких разлога, ево н...