Elasticsearch-ni bosqichma-bosqich tanishtirish

Xush kelibsiz!
Bugun biz Elasticsearch (keyingi o'rinlarda ES) to'liq matnli qidiruv tizimi haqida gaplashamiz, u bilan
Docsvision 5.5 platformasi ishlamoqda.

Elasticsearch-ni bosqichma-bosqich tanishtirish

1. O'rnatish

Joriy versiyani havoladan yuklab olishingiz mumkin: www.elastic.co/downloads/elasticsearch
Quyidagi o'rnatish skrinshoti:
Elasticsearch-ni bosqichma-bosqich tanishtirish

2. Funktsionallikni tekshirish

O'rnatish tugallangach, o'ting
http://localhost:9200/
ES holati sahifasi ko'rsatilishi kerak, quyidagi misol:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Agar sahifa ochilmasa, Elasticsearch xizmati ishlayotganligiga ishonch hosil qiling. Windowsda bu
Elasticsearch xizmati.
Elasticsearch-ni bosqichma-bosqich tanishtirish

3. Docsvision ga ulaning

Elasticsearch-ga ulanish to'liq matnli xizmat sahifasida sozlangan
indekslash.
Elasticsearch-ni bosqichma-bosqich tanishtirish

Bu erda siz quyidagilarni ko'rsatishingiz kerak:
1. Elasticsearch server manzili (o'rnatish vaqtida o'rnatiladi).
2. DBMSga ulanish qatori.
3. Docsvision manzili (ConnectAddress= formatidahttp://SERVER/DocsVision/StorageServer/StorageServerService.
asmx
)
4. "Kartalar" va "Kataloglar" yorlig'ida siz ma'lumotlarni sozlashingiz kerak
indekslanishi kerak.
Shuningdek, Docsvision xizmati ishlayotgan hisob qaydnomasi mavjudligiga ishonch hosil qilishingiz kerak
To'liq matnni indekslash xizmati MS SQL-da Docsvision ma'lumotlar bazasiga kirish huquqiga ega.
Ulangandan so'ng, MS SQL ma'lumotlar bazasida prefiksli ish o'rinlari yaratilganligiga ishonch hosil qilishingiz kerak:
"DV:FullText_<DBNAME>_CardWithFilesPrepareRange"
Elasticsearch-ni bosqichma-bosqich tanishtirish

Sozlamalarni tugatgandan so'ng, Windows mijozida qidiruv paneli ochiladi.

4. REST API Elastik

Administrator yordamida Elasticsearch ishi haqida turli ma'lumotlarni olish mumkin
REST API tomonidan taqdim etilgan.
Quyidagi misollarda biz Insomnia Rest Client dasturidan foydalanamiz.

Umumiy ma'lumot olish

Xizmat ishga tushgandan so'ng (brauzerda http://localhost:9200/), mumkin
so'rovni bajaring:
http://localhost:9200/_cat/health?v

Keling, Elasticsearch xizmatining holati haqida javob olamiz (brauzerda):
Elasticsearch-ni bosqichma-bosqich tanishtirish
Uyqusizlik holatiga javob:
Elasticsearch-ni bosqichma-bosqich tanishtirish
Keling, Statusga e'tibor beraylik - Yashil, Sariq, Qizil. Rasmiy hujjatlarda statuslar haqida quyidagilar aytiladi:
• Yashil — hammasi yaxshi (klaster to‘liq ishlayapti)
• Sariq - Barcha ma'lumotlar mavjud, ammo klasterdagi ba'zi nusxalar hali unga ajratilmagan
• Qizil — maʼlumotlarning bir qismi biron-bir sababga koʻra mavjud emas (klasterning oʻzi normal ishlaydi)
Klasterdagi tugunlar va ularning holati haqida ma'lumot olish (menda 1 ta tugun bor):
http://localhost:9200/_cat/nodes?v
Elasticsearch-ni bosqichma-bosqich tanishtirish

Barcha ES indekslari:
http://localhost:9200/_cat/indices?v
Elasticsearch-ni bosqichma-bosqich tanishtirish

Docsvision indekslaridan tashqari, boshqa ilovalarning indekslari ham bo'lishi mumkin - yurak urishi,
kibana - agar siz ulardan foydalansangiz. Keraksizlardan keraklilarini saralashingiz mumkin. Masalan,
Faqat nomida %card% bo'lgan indekslarni olaylik:
http://localhost:9200/_cat/indices/*card*?v&s=index
Elasticsearch-ni bosqichma-bosqich tanishtirish

Elasticsearch konfiguratsiyasi

Elasticsearch sozlamalarini olish:
http://localhost:9200/_nodes
Natija juda keng bo'ladi, shu jumladan jurnallarga boradigan yo'llar:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Biz allaqachon indekslar ro'yxatini qanday topishni bilamiz; Docsvision buni avtomatik ravishda amalga oshiradi va indeksga formatdagi nom beradi:
<ma'lumotlar bazasi nomi+indekslangan karta turi>
Siz o'zingizning mustaqil indeksingizni ham yaratishingiz mumkin:
http://localhost:9200/customer?pretty
Faqat bu GET emas, balki PUT so'rovi bo'ladi:
Elasticsearch-ni bosqichma-bosqich tanishtirish

natija:
Elasticsearch-ni bosqichma-bosqich tanishtirish

quyidagi so'rov barcha indekslarni, shu jumladan yangilarini (mijoz) ko'rsatadi:
http://localhost:9200/_cat/indices?v
Elasticsearch-ni bosqichma-bosqich tanishtirish

5. Indekslangan ma'lumotlar haqida ma'lumot olish

Elasticsearch indeks holati

Docsvision tomonidan dastlabki konfiguratsiya tugallangandan so'ng, xizmat ishlashga tayyor bo'lishi va ma'lumotlarni indekslashni boshlashi kerak.
Avvalo, bizga tanish bo'lgan so'rov yordamida indekslar to'ldirilganligini va ularning hajmi standart "baytlardan" kattaroq ekanligini tekshirib ko'raylik:
http://localhost:9200/_cat/indices?v
Natijada, biz ko'ramiz: 87 ta "vazifa" va 72 ta "hujjat" indekslangan, bizning EDMS nuqtai nazaridan:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Biroz vaqt o'tgach, natijalar quyidagicha bo'ladi (sukut bo'yicha, indekslash ishlari har 5 daqiqada ishga tushiriladi):
Elasticsearch-ni bosqichma-bosqich tanishtirish

Hujjatlar soni ko‘payganini ko‘ramiz.

Sizga kerak bo'lgan karta indekslanganligini qanday bilasiz?

• Birinchidan, Docsvision'dagi karta turi Elascticsearch sozlamalarida ko'rsatilgan ma'lumotlarga mos kelishiga ishonch hosil qilishingiz kerak.
• Ikkinchidan, kartalar qatori indekslanishini kuting - u Docsvision-ga kirganida, ma'lumotlar xotirada paydo bo'lishidan oldin biroz vaqt o'tishi kerak.
• Uchinchidan, siz CardID bo'yicha kartani qidirishingiz mumkin. Buni quyidagi so'rov bilan qilishingiz mumkin:

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

Agar karta xotirada bo'lsa, biz uning "xom" ma'lumotlarini ko'ramiz, agar bo'lmasa, biz shunga o'xshash narsani ko'ramiz:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Elasticsearch tugunida karta qidirilmoqda

Ta'rif maydoniga to'liq mos keladigan hujjatni toping:
http://localhost:9200/_search?q=description: Исходящий tv1
natija:
Elasticsearch-ni bosqichma-bosqich tanishtirish

uning tavsifida "Kirish" yozuvi bo'lgan hujjatni qidiring
http://localhost:9200/_search?q=description like Входящий
natija:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Ilova qilingan fayl mazmuni bo'yicha kartani qidiring
http://localhost:9200/_search?q=content like ‘AGILE’
natija:
Elasticsearch-ni bosqichma-bosqich tanishtirish

Hujjat turidagi barcha kartalarni topamiz:
http://localhost:9200/_search?q=_type:CardDocument

yoki vazifa turidagi barcha kartalar:
http://localhost:9200/_search?q=_type:CardTask

Dizaynlardan foydalanish va va Elasticsearch JSON ko'rinishida beradigan parametrlar bilan siz quyidagi so'rovni to'plashingiz mumkin:
http://localhost:9200/_search?q=_type:CardTask and Employee_RoomNumber: Орёл офиc and Employee_FirstName:Konstantin

Unda Ismi = Konstantin va Eagle ofisida bo'lgan foydalanuvchilar orasida vazifa turidagi barcha kartalar ko'rsatiladi.
tashqari kABI Boshqa hujjatlashtirilgan parametrlar mavjud:
farqli o'laroq, maydonlar, hujjatlar, kontent va boshqalar.
Ularning barchasi tasvirlangan shu yerda.

Bugun hammasi shu!

#docsvision #docsvisionECM

Foydali havolalar:

  1. Insomnia Rest mijozi 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

Manba: www.habr.com

a Izoh qo'shish