Questo tutorial ti accompagnerà attraverso i dettagli dei modelli di indici di ElasticSearch che ti consentono di definire modelli o progetti per gli indici comuni. Ad esempio, se si registrano costantemente i dati da fonti esterne, è possibile definire un progetto per tutti gli indici di registrazione.
NOTA: Prima di iniziare, è bene notare che il tutorial si concentra sull'ultima versione di ElasticSearch-7.8 al momento della scrittura e può variare dalle altre versioni. Presumiamo anche che tu abbia elasticsearch in esecuzione su un sistema da qualche parte.
Iniziamo a lavorare con i modelli di indice Elasticsearch.
Cos'è un modello di indice di Elasticsearch?
Un modello di indice di Elasticsearch è un metodo utilizzato per istruire Elasticsearch a configurare gli indici alla creazione. Ad esempio, un modello di indice utilizzato su un flusso di dati configura gli indici di supporto del flusso al momento della creazione. Un modello di indice viene creato manualmente prima della creazione dell'indice. Quando si crea un indice, il modello applica le impostazioni di configurazione per l'indice.
L'ultima versione di Elasticsearch ha due tipi di modelli utilizzabili. Uno è il modello di indice, E l'altro è Modelli di componenti. Come abbiamo già stabilito, i modelli di indice aiutano a creare indici di elasticarch.
I modelli di componenti sono moduli riutilizzabili o blocchi utilizzati per configurare impostazioni, mappatura e alias. I modelli di componenti non vengono applicati direttamente agli indici creati ma possono aiutare a creare modelli di indice.
Alcuni modelli di indice predefiniti utilizzati da ElaSticSearch includono: Metrics-*-*, Logs-*-* .
Come creare un modello di indice
Per creare nuovi modelli di indice o aggiornare quelli esistenti, utilizziamo l'API del modello put. Usando l'endpoint _index_template, possiamo inviare una richiesta HTTP per aggiungere un modello.
La sintassi generale per la creazione di un modello è:
Put _index_template/template_nameÈ bene notare che il nome del modello è un parametro richiesto. Considera la richiesta di seguito che crea un modello di indice come Template_1
Put _index_template/template_1Per gli utenti Curl, il comando è:
Curl -xput "http: // localhost: 9200/_index_template/template_1" -h 'content -type: applicazione/json' -d '/*Definisci il modello indice*/"index_patterns": ["te*"], "priorità": 1, /* Definisci le impostazioni per gli indici* / "modello": "impostazioni": "numero_of_shards": 2 'ElasticSearch utilizza uno schema jolly per abbinare i nomi degli indici in cui vengono applicati i modelli. Modifica o aggiornamento di un modello di indice non influisce su indici già creati solo quelli che verranno creati dopo aver utilizzato quel modello.
Dall'alto, puoi commentare i tuoi modelli usando il metodo di commento in lingua C. Puoi aggiungere tutti i commenti che desideri, ovunque nel corpo tranne l'apertura di Burly Braces.
Nel corpo di un modello di indice, è possibile includere varie definizioni come:
Ci sono altre proprietà che puoi includere nel corpo del modello di indice. Considera la documentazione per saperne di più.
https: // www.elastico.CO/GUIDA/EN/ELASTICHEARCH/RIFERIMENTO/7.10/INDICE-TEMPlates.html
Di seguito è una richiesta di esempio per creare un nuovo modello con la versione 1.0
Put /_index_template /template_2Non puoi avere più di un modello di indice con uno schema di abbinamento e la stessa priorità. Quindi, assicurarsi di assegnare priorità diverse per abbinare i modelli di pattern.
Come ottenere il modello di indice
Per visualizzare le informazioni su un modello di indice, invia una richiesta GET all'API _index_template. Ad esempio, per visualizzare le informazioni su Template_2, utilizzare la richiesta:
Ottieni _index_template/template_2Il comando Curl è:
Curl -Xget "http: // localhost: 9200/_index_template/template_2"Questo comando dovrebbe visualizzare informazioni su template_2
Puoi anche usare i caratteri jolly per ottenere modelli di abbinamento. Ad esempio, considera la richiesta di seguito per visualizzare tutti i modelli in Elasticsearch.
Ottieni _index_template/*Il comando Curl è.
Curl -xget http: // localhost: 9200/_index_template/*Questo comando dovrebbe fornirti informazioni su tutti i modelli in Elasticsearch
Come eliminare i modelli
Eliminare un modello è semplice come il modello Ottieni ma utilizzando la richiesta di Elimina come:
Elimina _index_template/template_2Puoi usare il comando Curl:
Curl -xdelete "http: // localhost: 9200/_index_template/template_2"Questo comando elimina automaticamente il modello specificato.
Conclusione
Questo tutorial ha riguardato quali sono i modelli di indici di Elasticsearch, come funzionano e come creare, visualizzare ed eliminare i modelli di indice. Queste informazioni di base dovrebbero aiutarti a iniziare a utilizzare i modelli di indice ElaSticSearch.