Elasticsearch en systemen voor zoeken in volledige tekst · Les

Beheer van tijdreeksgegevens

Optimaliseer Elasticsearch voor tijdreeksgegevens, waaronder datastromen, ILM (Index Lifecycle Management) en hot-warm-cold-architecturen.

Les 2 van 411 stappen

Beheer van tijdreeksgegevens is een gratis Elasticsearch en systemen voor zoeken in volledige tekst-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Elasticsearch en systemen voor zoeken in volledige tekst. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Elasticsearch en systemen voor zoeken in volledige tekst bevat in totaal 4 lessen.

Wat zijn tijdreeksgegevens?

Tijdreeksgegevens zijn informatie die gedurende een bepaalde periode wordt verzameld, vaak met regelmatige tussenpozen. Je kunt ze zien als een reeks gegevenspunten die op tijd zijn geïndexeerd.

Voorbeelden zijn:

  • Systeemlogboeken: Gebeurtenissen die op een server plaatsvinden.
  • Metingen van IoT-sensoren: Temperatuur en luchtvochtigheid van apparaten.
  • Financiële gegevens: Aandelenkoersen over dagen of uren.

Deze gegevens worden doorgaans alleen toegevoegd en zijn meestal onveranderlijk nadat ze zijn vastgelegd.

Waarom Elasticsearch voor tijdreeksen?

Elasticsearch is een uitstekende keuze voor het beheren van tijdreeksgegevens dankzij de volgende eigenschappen:

  • Schaalbaarheid: Kan enorme hoeveelheden gegevens verwerken.
  • Snelheid: Snelle mogelijkheden voor indexeren en zoeken.
  • Analyse: Krachtige aggregaties voor inzichten.
  • Flexibiliteit: Kan gestructureerde en ongestructureerde gegevens opslaan.

Elasticsearch is bijzonder geschikt voor toepassingen zoals logboekanalyse, metriekbewaking en het beheren van beveiligingsgebeurtenissen.

Kennismaking met gegevensstromen

Gegevensstromen zijn een kernfunctie van Elasticsearch die speciaal is ontworpen voor tijdreeksgegevens. Ze vereenvoudigen het beheer door indien nodig automatisch over te schakelen naar nieuwe indexen.

Wanneer je gegevens in een gegevensstroom indexeert, worden ze altijd naar de huidige schrijfindex geschreven. Query's doorzoeken daarentegen transparant alle achterliggende indexen. Hierdoor wordt het beheren van grote, voortdurend groeiende gegevensverzamelingen veel eenvoudiger.

Je eerste gegevensstroom maken

Om een gegevensstroom te maken, heb je eerst een indextemplate nodig dat de structuur ervan definieert en naar een gegevensstroom verwijst.

Als je vervolgens eenvoudig een document indexeert met de naam van de gegevensstroom, wordt deze automatisch gemaakt op basis van het template:

PUT _index_template/my-data-stream-template
{
  "index_patterns": ["my-data-stream-*"],
  "data_stream": {},
  "priority": 200,
  "template": {
    "settings": {
      "number_of_shards": 1
    },
    "mappings": {
      "properties": {
        "@timestamp": {
          "type": "date",
          "format": "strict_date_optional_time||epoch_millis"
        },
        "message": { "type": "text" }
      }
    }
  }
}

// Indexing a document creates the stream
POST my-data-stream/_doc
{
  "@timestamp": "2023-10-27T10:00:00Z",
  "message": "Sensor reading: 25.5C"
}

Automatiseren met ILM

Index Lifecycle Management (ILM) is een krachtige functie die het beheer van je indices in verschillende fasen van hun levensduur automatiseert.

Voor tijdreeksgegevens helpt ILM je om:

  • Indices automatisch te laten overschakelen wanneer ze een bepaalde grootte of leeftijd bereiken.
  • Oudere, minder vaak geraadpleegde gegevens naar goedkopere opslag te verplaatsen.
  • Gegevens die niet meer nodig zijn te verwijderen.

De vier ILM-fasen

ILM-beleidsregels definiëren acties voor indices in vier hoofdfasen:

  • Hot: Er wordt actief naar indices geschreven en ze worden vaak bevraagd. Hiervoor is snelle opslag nodig.
  • Warm: Er wordt niet meer naar indices geschreven, maar ze worden nog wel bevraagd. Ze kunnen alleen-lezen zijn en eventueel op tragere opslag staan.
  • Cold: Indices worden zelden bevraagd en staan vaak op zeer goedkope, trage opslag.
  • Delete: Indices zijn niet meer nodig en worden veilig uit het cluster verwijderd.

Een ILM-beleidsregel maken

Hier zie je een voorbeeld van een ILM-beleidsregel die voor tijdreeksgegevens fasen voor overschakelen, forcemerge (voor de warm-fase) en verwijderen definieert:

PUT _ilm/policy/my-ts-policy
{
  "policy": {
    "phases": {
      "hot": {
        "actions": {
          "rollover": {
            "max_age": "7d",
            "max_docs": 10000000,
            "max_size": "50gb"
          }
        }
      },
      "warm": {
        "min_age": "30d",
        "actions": {
          "forcemerge": {
            "max_num_segments": 1
          },
          "shrink": {
            "number_of_shards": 1
          }
        }
      },
      "cold": {
        "min_age": "90d",
        "actions": {
          "freeze": {}
        }
      },
      "delete": {
        "min_age": "180d",
        "actions": {
          "delete": {}
        }
      }
    }
  }
}

Hot-warm-cold-architectuur

Een hot-warm-cold-architectuur optimaliseert het gebruik van resources en de kosten voor tijdreeksgegevens door verschillende typen nodes voor verschillende ILM-fasen te gebruiken.

  • Hot-nodes: Gebruiken snelle CPU's en SSD's voor een hoge indexerings- en querydoorvoer.
  • Warm-nodes: Gebruiken minder krachtige CPU's en HDD's (of tragere SSD's) voor oudere, alleen-lezengegevens.
  • Cold-nodes: Gebruiken zeer goedkope opslag met hoge capaciteit, mogelijk zelfs objectopslag, voor zelden geraadpleegde gegevens.

Node-rollen toewijzen

Je kunt nodes configureren voor specifieke rollen (hot, warm, cold) door node.attr in hun configuratiebestand elasticsearch.yml in te stellen.

ILM-beleidsregels gebruiken deze kenmerken vervolgens om indices automatisch naar de juiste typen nodes te verplaatsen wanneer ze door de verschillende fasen gaan.

# For a hot node
node.roles: [ data ]
node.attr.data: hot

# For a warm node
node.roles: [ data ]
node.attr.data: warm

# For a cold node
node.roles: [ data ]
node.attr.data: cold

Controle van ILM en gegevensstromen

Welke van de volgende uitspraken over de tijdreeksfuncties van Elasticsearch zijn WAAR?

Samenvatting van tijdreeksen

Goed gedaan! Je hebt onderzocht hoe Elasticsearch is geoptimaliseerd voor tijdreeksgegevens.

We hebben het volgende behandeld:

  • Gegevensstromen: Het beheer van indices en het overschakelen ervan vereenvoudigen.
  • ILM (Index Lifecycle Management): Overgangen van indices door de hot-, warm-, cold- en delete-fasen automatiseren.
  • Hot-warm-cold-architecturen: Clusterresources en kosten optimaliseren door verschillende typen nodes aan specifieke ILM-fasen toe te wijzen.

Deze functies zijn essentieel voor het bouwen van schaalbare en kosteneffectieve tijdreeksoplossingen met Elasticsearch.

Gratis beginnen

Leer Elasticsearch en systemen voor zoeken in volledige tekst met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Beheer van tijdreeksgegevens” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Elasticsearch en systemen voor zoeken in volledige tekst, waaronder “Beheer van tijdreeksgegevens”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Elasticsearch en systemen voor zoeken in volledige tekst bevat in totaal 4 lessen.

Wat leer ik in “Beheer van tijdreeksgegevens”?

Optimaliseer Elasticsearch voor tijdreeksgegevens, waaronder datastromen, ILM (Index Lifecycle Management) en hot-warm-cold-architecturen. Je oefent met Elasticsearch en systemen voor zoeken in volledige tekst door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Elasticsearch en systemen voor zoeken in volledige tekst te beginnen?

Ervaring vooraf is niet nodig. Elasticsearch en systemen voor zoeken in volledige tekst op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Beheer van tijdreeksgegevens”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Elasticsearch en systemen voor zoeken in volledige tekst?

Ja. Elke les over Elasticsearch en systemen voor zoeken in volledige tekst bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Geospatiale zoekmogelijkheden
  2. Beheer van tijdreeksgegevens
  3. Strategieën voor productie-uitrol
  4. Index Lifecycle Management
← Terug naar Elasticsearch en systemen voor zoeken in volledige tekst