Skip to content
Menu

Organisera data med Elastic Ingest Pipeline

Att omvandla och bearbeta data innan indexering är en funktion i Elastic som ger stor nytta, detta kan göras med hjälp av verktyget Ingest Pipeline vilket gör det både enklare och smidigare. Efter man har processat data läggs de transformerade dokumenten till i en dataström eller ett index. Det är möjligt att skapa och hantera dessa pipelines med hjälp av Ingest API eller genom Kibana. Det som krävs för att få tillgång till denna funktion är att minst en nod i Elastic-klustret är en “ingest node”, den parametern är default satt redan vid uppsättning av Elastic-stacken.

Fördelar med Ingest Pipeline

Fördelarna med Ingest Pipeline är att man enkelt får ett städat och strukturerat index samt det användarvänliga GUI. Vidare möjligheten att simulera och att tillämpa en felhantering genom ’fail’ processor.

Vad är en Pipeline?

En pipeline är i korta drag ett JSON-dokument bestående av en beskrivning och en eller flera processer. Varje process exekveras i den ordning den definieras, det finns åtskilliga inbyggda processer att använda. Beskrivningen ’Description’ är inte nödvändig men är ett bra sätt att beskriva och lista vad som sker i din pipeline. Det ger en bra struktur.

Ett exempel på process är ’Lowercase’ som konverterar en sträng till motsvarande gemener. Om fältet är en array av strängar kommer alla medlemmar i arrayen att konverteras. I alla dessa processortyper kan villkor sättas som definierar när proceduren skall köras. Detta skrivs i ’Painless’ antingen inline eller som lagrade script.
Ett annat exempel är hur man kan hantera felaktigheter i pipeline. Pipeline exekverar sekventiellt och stannar vid första undantaget, vilket inte alltid är önskvärt.
Genom att sätta parametern ’on-failure’ definieras en lista av vad som skall köras omedelbart efter ett misslyckande. Man kan använda denna parameter både på processor och på pipeline-nivå. På detta sätt kan man kapsla felhantering för analys och därmed få en bättre utpekning.

 

I Elastic finns två tillvägagångsätt för att generera en pipeline:

 

Det är ingen skillnad på vad man kan göra i API eller Kibanas interface, det är snarare en smaksak hur man väljer att arbeta. Ytterligare en bra funktion är simulering. Genom att simulera pipeline kan man testa processen innan den används i produktion. För att utföra en simulering krävs ett dokument, antingen ett befintligt som definierats med ’id’ eller så skrivs ett nytt dokument manuellt i simuleringsfrågan.

För att koppla en pipeline till ett index krävs det att lägga till en rad i indexets inställningar:
’Index.default_pipeline : <– namn på pipeline –>’.

Att tillämpa pipeline på ett befintligt index och påverka dokument som redan finns används ’reindex’.
’_update_by_query?pipeline=<– namn på pipeline –>’

 

 

 

Läs mer:

Stockholm

Sjöängsvägen 5
192 72, Sollentuna

Ring: 010-333 10 60

Gävle

Hamntorget 6, Gävle

Ring: 010-333 10 60

Östersund

Infanterigatan 20c, Östersund

Ring: 010-333 10 60

Örebro

Drottninggatan 29, 
Örebro

Ring: 010-333 10 60

Gasell_vinnare_2016_2-opti
Barnsupporter_2023_SoMe_Juni_440x220-For-Linked-IN
AAA-Compose-IT_

Copyright © 2005-2024 Compose IT Nordic AB. Headquarters: Stockholm, Sweden.
All rights reserved. Compose IT Nordic AB. Sjöängsvägen 5, Sollentuna. Organization number: 556840-9840