Elasticsearch-ті кезең-кезеңмен енгізу

Қош келдіңіздер!
Бүгін біз Elasticsearch (бұдан әрі ES) толық мәтінді іздеу жүйесі туралы сөйлесетін боламыз, онымен
Docsvision 5.5 платформасы жұмыс істейді.

Elasticsearch-ті кезең-кезеңмен енгізу

1. Орнату

Ағымдағы нұсқаны мына сілтемеден жүктеп алуға болады: www.elastic.co/downloads/elasticsearch
Төменде орнатушының скриншоты:
Elasticsearch-ті кезең-кезеңмен енгізу

2. Функционалдылықты тексеру

Орнату аяқталғаннан кейін бөліміне өтіңіз
http://localhost:9200/
ES күй беті көрсетілуі керек, төмендегі мысал:
Elasticsearch-ті кезең-кезеңмен енгізу

Егер бет ашылмаса, Elasticsearch қызметінің жұмыс істеп тұрғанын тексеріңіз. Windows жүйесінде бұл
Elasticsearch қызметі.
Elasticsearch-ті кезең-кезеңмен енгізу

3. Docsvision қызметіне қосылыңыз

Elasticsearch қосылымы толық мәтінді қызмет бетінде конфигурацияланған
индекстеу.
Elasticsearch-ті кезең-кезеңмен енгізу

Мұнда сіз мыналарды көрсетуіңіз керек:
1. Elasticsearch серверінің мекенжайы (орнату кезінде орнатылады).
2. ДҚБЖ-ға қосылу жолы.
3. Docsvision мекенжайы (ConnectAddress= пішіміндеhttp://SERVER/DocsVision/StorageServer/StorageServerService.
asmx
)
4. «Карталар» және «Каталогтар» қойындысында деректерді конфигурациялау қажет.
индекстеу қажет.
Сондай-ақ, Docsvision қызметі жұмыс істейтін есептік жазбаның екеніне көз жеткізуіңіз керек
Толық мәтінді индекстеу қызметі MS SQL жүйесінде Docsvision дерекқорына кіру мүмкіндігіне ие.
Қосылғаннан кейін префиксі бар жұмыс орындары MS SQL дерекқорында жасалғанына көз жеткізу керек:
"DV:FullText_<DBNAME>_CardWithFilesPrepareRange"
Elasticsearch-ті кезең-кезеңмен енгізу

Параметрлерді аяқтағаннан кейін іздеу жолағы Windows клиентінде ашылады.

4. REST API Elastic

Әкімші Elasticsearch жұмысы туралы әртүрлі ақпаратты пайдалана алады
REST API қамтамасыз етеді.
Келесі мысалдарда біз Insomnia Rest Client қолданбасын қолданамыз.

Жалпы ақпарат алу

Қызмет іске қосылғаннан кейін (шолғышта http://localhost:9200/), сіз жасай аласыз
сұрауды іске қосыңыз:
http://localhost:9200/_cat/health?v

Elasticsearch қызметінің күйі туралы жауап алайық (браузерде):
Elasticsearch-ті кезең-кезеңмен енгізу
Ұйқысыздық күйіне жауап:
Elasticsearch-ті кезең-кезеңмен енгізу
Күйге назар аударайық - жасыл, сары, қызыл. Ресми құжаттамада мәртебелер туралы былай делінген:
• Жасыл — бәрі жақсы (Кластер толығымен жұмыс істейді)
• Сары - барлық деректер қолжетімді, бірақ кластердегі кейбір көшірмелер оған әлі бөлінбеген
• Қызыл – деректердің бір бөлігі қандай да бір себептермен қолжетімсіз (кластердің өзі қалыпты жұмыс істейді)
Кластердегі түйіндер және олардың күйі туралы күйлерді алу (менде 1 түйін бар):
http://localhost:9200/_cat/nodes?v
Elasticsearch-ті кезең-кезеңмен енгізу

Барлық ES индекстері:
http://localhost:9200/_cat/indices?v
Elasticsearch-ті кезең-кезеңмен енгізу

Docsvision индекстерінен басқа, басқа қолданбалардың индекстері де болуы мүмкін - жүрек соғысы,
кибана - егер сіз оларды қолдансаңыз. Қажеттілерін қажетсізінен сұрыптауға болады. Мысалы,
Атауында %card% болатын индекстерді ғана алайық:
http://localhost:9200/_cat/indices/*card*?v&s=index
Elasticsearch-ті кезең-кезеңмен енгізу

Elasticsearch конфигурациясы

Elasticsearch параметрлерін алу:
http://localhost:9200/_nodes
Нәтиже журналдарға апаратын жолдарды қоса алғанда, өте кең болады:
Elasticsearch-ті кезең-кезеңмен енгізу

Біз индекстер тізімін қалай білуге ​​болатынын білеміз; Docsvision мұны автоматты түрде жасайды, индекске форматта атау береді:
<деректер базасының аты+индекстелген картаның түрі>
Сіз өзіңіздің тәуелсіз индексіңізді жасай аласыз:
http://localhost:9200/customer?pretty
Тек бұл GET емес, PUT сұрауы болады:
Elasticsearch-ті кезең-кезеңмен енгізу

нәтижесі:
Elasticsearch-ті кезең-кезеңмен енгізу

келесі сұрау барлық индекстерді, соның ішінде жаңаларын (тұтынушыны) көрсетеді:
http://localhost:9200/_cat/indices?v
Elasticsearch-ті кезең-кезеңмен енгізу

5. Индекстелген деректер туралы ақпарат алу

Elasticsearch индексінің күйі

Docsvision арқылы бастапқы конфигурациялау аяқталғаннан кейін қызмет жұмыс істеуге және деректерді индекстеуді бастауға дайын болуы керек.
Ең алдымен, индекстердің толтырылғанын және олардың өлшемі стандартты «байттардан» үлкен екенін бізге бұрыннан таныс сұрау арқылы тексерейік:
http://localhost:9200/_cat/indices?v
Нәтижесінде біз мынаны көреміз: 87 «тапсырма» және 72 «құжат» индекстелген, біздің EDMS тұрғысынан:
Elasticsearch-ті кезең-кезеңмен енгізу

Біраз уақыттан кейін нәтижелер келесідей болады (әдепкі бойынша индекстеу тапсырмалары әрбір 5 минут сайын іске қосылады):
Elasticsearch-ті кезең-кезеңмен енгізу

Құжаттардың көбейгенін көріп отырмыз.

Сізге қажет картаның индекстелгенін қалай білуге ​​болады?

• Алдымен, Docsvision қолданбасындағы карта түрі Elascticsearch параметрлерінде көрсетілген деректерге сәйкес келетініне көз жеткізуіңіз керек.
• Екіншіден, карталар массивінің индекстелуін күтіңіз – ол Docsvision жүйесіне кірген кезде деректер жадта пайда болғанша біраз уақыт өтуі керек.
• Үшіншіден, картаны CardID арқылы іздеуге болады. Мұны келесі сұрау арқылы жасауға болады:

http://localhost:9200/_search?q=_id=2116C498-9D34-44C9-99B0-CE89465637C9

Егер карта жадта болса, біз оның «шикі» деректерін көреміз, егер жоқ болса, біз келесідей нәрсені көреміз:
Elasticsearch-ті кезең-кезеңмен енгізу

Elasticsearch түйінінде картаны іздеу

Сипаттама өрісінің дәл сәйкестігі бойынша құжатты табыңыз:
http://localhost:9200/_search?q=description: Исходящий tv1
нәтижесі:
Elasticsearch-ті кезең-кезеңмен енгізу

Сипаттамасында «Кіріс» жазбасы бар құжатты іздеңіз
http://localhost:9200/_search?q=description like Входящий
нәтижесі:
Elasticsearch-ті кезең-кезеңмен енгізу

Тіркелген файлдың мазмұны бойынша картаны іздеңіз
http://localhost:9200/_search?q=content like ‘AGILE’
нәтиже:
Elasticsearch-ті кезең-кезеңмен енгізу

Құжат түрінің барлық карталарын табайық:
http://localhost:9200/_search?q=_type:CardDocument

немесе тапсырма түріндегі барлық карталар:
http://localhost:9200/_search?q=_type:CardTask

Дизайндарды қолдану және және Elasticsearch JSON түрінде беретін параметрлерді пайдаланып, келесі сұрауды жинай аласыз:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Орёл офиc and Employee_FirstName:Konstantin

Ол Аты = Константин болатын және Eagle кеңсесіндегі пайдаланушылар арасында тапсырма түріндегі барлық карталарды көрсетеді.
қоспағанда LIKE Басқа құжатталған параметрлер бар:
айырмашылығы, өрістер, құжаттар, мазмұн және т.б.
Олардың барлығы сипатталған осында.

Бүгінге бәрі осы!

#docsvision #docsvisionECM

Пайдалы сілтемелер:

  1. Ұйқысыз демалыс клиенті https://insomnia.rest/download/#windows
  2. https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html
  3. https://www.elastic.co/guide/en/elasticsearch/reference/1.4/_exploring_your_data.html
  4. https://stackoverflow.com/questions/50278255/elasticsearch-backup-on-windows-and-restore-on-linux
  5. https://z0z0.me/how-to-create-snapshot-and-restore-snapshot-with-elasticsearch/
  6. https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-mlt-query.html#_document_input_parameters
  7. http://qaru.site/questions/15663281/elasticsearch-backup-on-windows-and-restore-on-linux

Ақпарат көзі: www.habr.com

пікір қалдыру