Elastisch zoeken

Hoe een Elasticsearch-indexsjablonen te configureren

Hoe een Elasticsearch-indexsjablonen te configureren
Indices zijn een essentiële Elasticsearch-functie zonder welke het waarschijnlijk niet zou werken zoals het doet. Hoewel Elasticsearch-indexen kunnen variëren afhankelijk van het beoogde gebruik, hebben ze de neiging om gemeenschappelijke eigenschappen te delen. Gezien dit kan het vermoeiend zijn om vergelijkbare eigenschappen voor alle indices te creëren. In plaats daarvan is het veel efficiënter om een ​​sjabloon te maken waarnaar we kunnen verwijzen bij het maken van een index.

Deze zelfstudie leidt u door de ins en outs van Elasticsearch-indexsjablonen waarmee u sjablonen of blauwdrukken voor algemene indices kunt definiëren. Als u bijvoorbeeld voortdurend gegevens uit externe bronnen logt, kunt u een blauwdruk definiëren voor alle logindexen.

OPMERKING: Voordat we beginnen, is het goed om op te merken dat de tutorial zich richt op de nieuwste versie van Elasticsearch-7.8 op het moment van schrijven - en het kan afwijken van andere versies. We gaan er ook vanuit dat Elasticsearch ergens op een systeem draait.

Laten we aan de slag gaan met Elasticsearch-indexsjablonen.

Wat is een Elasticsearch-indexsjabloon??

Een Elasticsearch-indexsjabloon is een methode die wordt gebruikt om Elasticsearch opdracht te geven indexen te configureren bij het maken. Een indexsjabloon dat wordt gebruikt op een gegevensstroom, configureert bijvoorbeeld de backing-indexen van de stroom bij het maken.  Er wordt handmatig een indexsjabloon gemaakt voordat de index wordt gemaakt. Bij het maken van een index past de sjabloon de configuratie-instellingen voor de index toe.

De nieuwste versie van Elasticsearch heeft twee soorten bruikbare sjablonen. Een is de is indexsjabloon, en de andere is componentsjablonen. Zoals we al hebben vastgesteld, helpen indexsjablonen bij het maken van Elasticsearch-indexen.

Componentsjablonen zijn herbruikbare modules of blokken die worden gebruikt om instellingen, mapping en aliassen te configureren. Componentsjablonen worden niet rechtstreeks toegepast op de gemaakte indices, maar kunnen helpen bij het maken van indexsjablonen.

Enkele standaardindexsjablonen die door Elasticsearch worden gebruikt, zijn: metrics-*-*, logs-*-* .

Een indexsjabloon maken

Om nieuwe indexsjablonen te maken of bestaande bij te werken, gebruiken we de PUT-sjabloon-API. Met behulp van het eindpunt _index_template kunnen we een HTTP-verzoek sturen om een ​​sjabloon toe te voegen.

De algemene syntaxis voor het maken van een sjabloon is:

PUT _index_template/template_name

Het is goed om te weten dat de sjabloonnaam een ​​vereiste parameter is. Overweeg het onderstaande verzoek waarmee een indexsjabloon wordt gemaakt als template_1

PUT _index_template/template_1

/* Definieer het indexpatroon */
"index_patterns" : ["te*"],
"prioriteit" : 1,
/* Definieer instellingen voor de indices*/
"sjabloon":
"instellingen" :
"aantal_scherven" : 2


Voor gebruikers van cURL is de opdracht:

curl -XPUT "http://localhost:9200/_index_template/template_1" -H 'Content-Type: application/json' -d'  /* Definieer het indexpatroon */  "index_patterns" : ["te*"], "priority" : 1,  /* Definieer instellingen voor de indices*/  "template":     "settings" :       "number_of_shards" : 2      '

Elasticsearch gebruikt een jokertekenpatroon om indexnamen te matchen waar de sjablonen worden toegepast. Het wijzigen of bijwerken van een indexsjabloon heeft geen invloed op reeds gemaakte indices, alleen op de indexen die worden gemaakt na gebruik van die sjabloon.

Van bovenaf kunt u commentaar geven op uw sjablonen met behulp van de C-Language-commentaarmethode. Je kunt zoveel opmerkingen toevoegen als je wilt, overal in het lichaam, behalve de opening van de accolades.

In de hoofdtekst van een indexsjabloon kunt u verschillende definities opnemen, zoals:

Er zijn andere eigenschappen die u kunt opnemen in de hoofdtekst van de indexsjabloon. Bekijk de documentatie voor meer informatie.

https://www.elastisch.co/gids/nl/elastisch zoeken/referentie/7.10/index-sjablonen.html

Hieronder vindt u een voorbeeldverzoek om een ​​nieuwe sjabloon te maken met versie 1.0

PUT /_index_template/template_2

"index_patterns" : ["remp*", "re*"],
"prioriteit" : 1,
"sjabloon":
"instellingen" :
"aantal_scherven" : 2,
"aantal_replica's": 0

,
"versie 1.0

U kunt niet meer dan één indexsjabloon hebben met een overeenkomend patroon en dezelfde prioriteit. Zorg er daarom voor dat u verschillende prioriteiten toewijst aan patroonsjablonen.

Indexsjabloon verkrijgen

Om informatie over een indexsjabloon te bekijken, stuurt u een GET-verzoek naar de _index_template API. Als u bijvoorbeeld informatie over template_2 wilt bekijken, gebruikt u het verzoek:

GET _index_template/template_2

Het cURL-commando is:

curl -XGET "http://localhost:9200/_index_template/template_2"

Deze opdracht zou informatie moeten weergeven over template_2


"index_templates" : [

"naam" : "sjabloon_2",
"index_template" :
"index_patterns" : [
"remp*",
"opnieuw*"
],
"sjabloon" :
"instellingen" :
"inhoudsopgave" :
"number_of_shards" : "2",
"aantal_replica's" : "0"


,
"bestaande uit" : [ ],
"prioriteit" : 1,
"versie 1


]

U kunt ook jokertekens gebruiken om overeenkomende sjablonen te krijgen. Overweeg bijvoorbeeld het onderstaande verzoek om alle sjablonen in Elasticsearch te bekijken.

GET _index_template/*

Het cURL-commando is.

curl -XGET http://localhost:9200/_index_template/*

Deze opdracht zou u informatie moeten geven over alle sjablonen in Elasticsearch


"index_templates" : [

"naam" : "ilm-geschiedenis",
"index_template" :
"index_patterns" : [
"ilm-geschiedenis-3*"
],
"sjabloon" :
"instellingen" :
"inhoudsopgave" :
"formaat" : "1",
"levenscyclus" :
"name" : "ilm-history-ilm-policy",
"rollover_alias" : "ilm-history-3"
,
"verborgen" : "waar",
"number_of_shards" : "1",
"auto_expand_replicas" : "0-1",
"aantal_replica's" : "0"

,
"toewijzingen" :
"dynamisch" : false,
"eigendommen" :
"index_leeftijd" :
"type" : "lang"
,
"@tijdstempel" :
"format" : "epoch_millis",
"type" : "datum"
,
"fout details" :
"typ Text"
,
"succes":
"type" : "booleaans"
,
"inhoudsopgave" :
"type" : "zoekwoord"
,
"staat" :
"dynamisch" : waar,
"type" : "object",
--------------------------UITGANG afgekapt-----------------------------------

Sjablonen verwijderen

Het verwijderen van een sjabloon is net zo eenvoudig als de GET-sjabloon, maar met het DELETE-verzoek als:

VERWIJDER _index_template/template_2

U kunt het cURL-commando gebruiken:

curl -XDELETE "http://localhost:9200/_index_template/template_2"

Deze opdracht verwijdert automatisch de opgegeven sjabloon.

Conclusie

In deze zelfstudie werd besproken wat Elasticsearch-indexsjablonen zijn, hoe ze werken en hoe u indexsjablonen kunt maken, bekijken en verwijderen. Deze basisinformatie zou u moeten helpen om aan de slag te gaan met het gebruik van Elasticsearch-indexsjablonen.

5 beste arcade-spellen voor Linux
Tegenwoordig zijn computers serieuze machines die worden gebruikt om te gamen. Als je de nieuwe hoge score niet kunt halen, weet je wat ik bedoel. In ...
Strijd om Wesnoth 1.13.6 Ontwikkeling vrijgegeven
Strijd om Wesnoth 1.13.6 die vorige maand werd uitgebracht, is de zesde ontwikkelingsrelease in de 1.13.x-serie en het levert een aantal verbeteringen...
Hoe League Of Legends op Ubuntu 14 te installeren.04
Als je fan bent van League of Legends, dan is dit een kans voor jou om League of Legends te testen. Merk op dat LOL wordt ondersteund op PlayOnLinux a...