Еластичний пошук

Як створити індекси Elasticsearch

Як створити індекси Elasticsearch
Elasticsearch - одна з частин популярного стеку ELK, що використовується для аналізу журналів та пошуку. Програми та системи постійно реєструють дані, які можуть бути дуже корисними для вирішення проблем та відстеження проблем. Використовуючи стек ELK, ви маєте найкращі інструменти для виконання цих завдань швидко і дуже легко.

У цьому короткому навчальному посібнику ми розглянемо Elasticsearch, зокрема, як створювати індекси в двигуні Elasticsearch. Хоча вам не потрібні будь-які всебічні знання про стек ELK, щоб дотримуватися цього підручника, базове розуміння таких тем може бути вигідним:

ПРИМІТКА: Цей посібник також передбачає, що у вас встановлено та працює Elasticsearch у вашій системі.

Що таке індекси еластичного пошуку?

Без надмірного спрощення або надмірного ускладнення речей, індекс Elasticsearch - це сукупність відповідних документів JSON.

Як згадувалося в попередньому дописі, індекси Elasticsearch - це об'єкти JSON, які вважаються базовою одиницею зберігання в Elasticsearch. Ці пов'язані документи JSON зберігаються в одному блоці, що становить індекс. Подумайте про документи Elasticsearch як про таблиці в реляційній базі даних.

Давайте зв’яжемо індекс Elasticsearch як базу даних у світі SQL.

Як створити індекс Elasticsearch

Elasticsearch використовує потужний та інтуїтивно зрозумілий REST API, щоб представити свої послуги. Ця функціональність дозволяє використовувати HTTP-запити для виконання операцій у кластері Elasticsearch. Тому ми будемо використовувати API створення індексу для створення нового індексу.

У цьому посібнику ми будемо використовувати cURL для надсилання запитів та збереження цілісності та зручності для всіх користувачів. Однак, якщо у вас виникають помилки з cURL, розгляньте можливість використання Kibana Console.

Синтаксис для створення нового індексу в кластері Elasticsearch є:

ВСТАНОВИТИ /

Для створення індексу потрібно лише передати ім’я індексу без інших параметрів, що створює індекс за допомогою налаштувань за замовчуванням.

Ви також можете вказати різні функції індексу, наприклад, в тілі індексу:

  • Налаштування індексу
  • Індекси псевдоніми
  • Зіставлення для полів індексу

Ім'я індексу - обов’язковий параметр; в іншому випадку ви отримаєте помилку для URIL (/)

curl -X PUT “localhost: 9200”
"error": "Неправильний метод HTTP для uri [/] та метод [PUT], дозволено: [DELETE, HEAD, GET]", "status": 405

Щоб створити новий індекс з ім'ям single_index, ми передаємо запит:

PUT / single_index

Для cURL використовуйте команду:

curl -X PUT "localhost: 9200 / single_index?гарненька "

Ця команда повинна призвести до статусу HTTP 200 OK і повідомлення з підтвердженим: true як:


“Визнаний”: правда,
"осколки_визнані": правда,
"index": "single_index"

Наведений вище запит створює індекс single_index із налаштуваннями за замовчуванням, оскільки ми не вказали жодної конфігурації.

Правила іменування індексів

Створюючи імена для індексів Elasticsearch, ви повинні дотримуватися таких стандартів імен:

  1. Ім'я індексу повинно бути лише з малої літери.
  2. Імена індексів не можуть починатися з тире (-), підкреслення (_) або знака додавання (+)
  3. Імен бути не може . або ..
  4. Імена покажчиків не можуть містити спеціальні символи, такі як: \, /, *, ?, “, <, >, |, "(пробіл), #
  5. Довжина імен індексів повинна бути менше 255 байт. Багатобайтові символи будуть враховуватися в загальній довжині імені індексу. Наприклад, якщо довжина одного символу становить 8 байт, загальна довжина назви, що залишилася, становить 255 - 8
  6. В останній версії Elasticsearch імена, які починаються з a . зарезервовані для прихованих індексів та внутрішніх індексів, що використовуються плагінами Elasticsearch.

Як створити тіло індексу

Використовуючи запит PUT для створення індексу, ви можете передавати різні аргументи, що визначають параметри індексу, який ви хочете створити. Значення, які ви можете вказати в тілі, включають:

  • Псевдоніми: Визначає імена псевдонімів для індексу, який ви хочете створити; цей параметр необов’язковий.
  • Налаштування: Це визначає параметри конфігурації індексу, який ви хочете створити. Якщо не вдається вказати будь-які параметри, індекс створюється за допомогою конфігурацій за замовчуванням.
  • Відображення: Це визначає відображення полів в індексі. Технічні характеристики, які ви можете включити в зіставлення, включають:
    • Назва поля
    • Тип даних
    • Параметр відображення

Для прикладу створення індексу з конфігураціями тіла розглянемо запит нижче:

PUT / single_index_with_body

"налаштування":
"number_of_shards": 2,
"number_of_replicas": 2
,
“Відображення”:
"властивості":
"field1": "type": "object"


Для запиту, еквівалентного cURL:

curl -XPUT "http: // localhost: 9200 / single_index_with_body" -H 'Content-Type: application / json' -d '"settings": "number_of_shards": 2, "number_of_replicas": 2, "mappings" : "properties": "field1": "type": "object" '

Наведений вище запит створює новий індекс з ім'ям single_index_with_body з 2 номерами осколків і 2 репліками. Він також створює відображення з полем імені field1 і вводить як об'єкт JSON.

Після того, як ви надішлете запит, ви отримаєте відповідь із статусом запиту:


“Визнаний”: правда,
"осколки_визнані": правда,
"index": "single_index_with_body"

"Підтверджено" показує, чи успішно створено індекс у кластері, тоді як "shards_acknowledged" показує, чи була задіяна необхідна кількість копій осколка для кожного осколка в зазначеному індексі до часу очікування.

Як переглянути індекс Elasticsearch

Щоб переглянути інформацію про створений вами індекс, використовуйте запит, подібний до запиту на створення індексу, але використовуйте метод HTTP замість PUT як:

GET / single_index_with_body

Для curL,

curl -XGET “http: // localhost: 9200 / single_index_with_body”

Ця команда надасть вам детальну інформацію про запитуваний індекс як:


"single_index_with_body":
"псевдоніми": ,
"відображення":
"властивості":
"field1":
"type": "об'єкт"


,
"налаштування":
"індекс":
"маршрутизація":
"виділення":
"включати" :
"_tier_preference": "вміст_даних"


,
"number_of_shards": "2",
"provided_name": "single_index_with_body",
"create_date": "1611045687208",
"number_of_replicas": "2",
"uuid": "3TRkO7xmQcSUOOGtb6pXVA",
"версія":
"створено": "7100299"




Висновок

У цьому посібнику було обговорено, як співпрацювати з Elasticsearch для створення API індексу для створення нових індексів. Ми також обговорили, як створити відповідні імена для індексів та налаштувань конфігурації.

За допомогою цього посібника тепер ви можете створювати та переглядати індекси за допомогою API Elasticsearch.

Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...