EN ET

Reindexer

Reindexer on tööriist Elasticsearchi indeksitest koopiate või alamhulkade loomiseks. Reindexeri on võimalik kasutada järgnevate ülesannete teostamiseks:

  • Andmestikust koopia loomiseks;

  • Mitme andmestiku liitmiseks;

  • Alusandmestikust juhuslikult valitud dokumentidega alamhulga loomiseks;

  • Eeldefineeritud kitsenduste ehk päringute alusel andmestiku alamhulga loomiseks;

  • Väljade ümbernimetamiseks;

  • Väljade Elasticsearchi andmetüübi muutmiseks.

Loomine

Parameetrid

description:

Reindekeerimise protsessi nimi.

indices:

Nimekiri reindekseeritavatest Elasticsearchi indeksitest (andmestikest).

fields:

Nimekiri uude andmestikku ülekantavatest väljadest. Vaikimisi on valitud kõik väljad.

query:

Eeldefineeritud Elasticsearchi otsingupäring. Välja tühjaks jätmisel (juhul kui random_size parameeter on samuti väärtustamata), kantakse uude andmestikku üle kõik lähteandmestiku dokumendid.

new_index:

Uue indeksi (andmestiku) nimi.

random_size:

Juhusliku alamhulga suurus. Välja väärtustamisel koostatakse uus indeks (andmestik) valitud arvust juhuslikest dokumentidest. Välja väärtustamata jätmisel kantakse uude andmestikku üle kõik lähteandmestiku (või kitsendatud otsingupäringule „query“ vastavad) dokumendid.

field_type:

Nimekiri Elasticsearchi väljatüüpidest järgnevas vormingus:

[{"field_name": "new_field_type"}]

GUI

Uue reindekseerimisprotsessi loomiseks navigeeri: „Tools“ -> „Reindexer“ nagu kujutatud joonisel Joonis 24.

_images/reindexer_nav.png

Joonis 24 Navigatsioon Reindexeri tööriistani

Eduka navigatsiooni korral peaksid nägema joonisega Joonis 25 analoogset lehte, mille ülemises vasakus nurgas asub nupp nimega „Create“.

_images/reindexer_create_button.png

Joonis 25 Reindexeri loomisnupp

„Create“ nupule vajutamise tagajärjel avaneb uus aken pealkirjaga „New Reindexer“ nagu kujutatud joonisel Joonis 26.

_images/reindexer_create_new.png

Joonis 26 Tühi Reindexeri loomisaken

Täida nõutud väljad ja vajuta nupule „Create“ akna alumises paremas nurgas (Joonis 27).

_images/reindexer_create.png

Joonis 27 Täidetud Reindexeri loomisaken

Loodud Reindexer ilmub nüüd reindekseerimisprotsesside tabelisse (Joonis 28).

_images/reindexer_task_list.png

Joonis 28 Reindekseerimisprotsesside tabel

API

Viide: http://localhost:8000/api/v1/redoc/#operation/projects_reindexer_create

Otspunkt /projects/{project_pk}/reindexer/

Näide:

curl -X POST "http://localhost:8000/api/v1/projects/1/reindexer/" \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Token 8229898dccf960714a9fa22662b214005aa2b049" \
-d '{
      "description": "reindex imdb reviews",
      "indices": ["imdb_reviews"],
      "fields": ["review_text", "doc_id"],
      "new_index": "imdb_reviews_copy"
    }'

Vastus:

{
    "id": 81,
    "url": "https://localhost:8000/api/v1/projects/1/reindexer/1/",
    "author_username": "my_username",
    "description": "rewindex imdb reviews",
    "fields": ["review_text", "doc_id"],
    "query": "{\"query\": {\"match_all\": {}}}",
    "new_index": "imdb_reviews_copy",
    "random_size": 0,
    "field_type": [],
    "task": {
        "id": 153610,
        "status": "created",
        "progress": 0.0,
        "step": "",
        "errors": "[]",
        "time_started": "2020-10-27T11:37:06.276108+02:00",
        "last_update": null,
        "time_completed": null,
        "total": 0,
        "num_processed": 0
    }
}