No artigo anterior#008: Como definir o mapeamento no Elasticsearch definimos um mapping diretamente no índice, porém podemos criar um template e criar o índice a partir dele. Essa estratégia é útil quando criamos índices temporais.
PUT/_template/customers{"index_patterns":["customers_*"],"aliases":{"customers":{}},"mappings":{"properties":{"id":{"type":"text"},"age":{"type":"integer"},"email":{"type":"text"},"name":{"type":"text"},"createdAt":{"type":"date"}}}}
O campoindex_patterns
será usado para corresponder aos nomes dos índices durante a criação. Exemplo:customers_2022_02
,customers_2022_03
, uma vez que o nome do índice corresponde ao patterncustomers_*
o índice é criado com o mapping definido no template.
PUT/customers_2022_02
GET/customers_2022_02/_mapping{"customers_2022_02":{"mappings":{"properties":{"age":{"type":"integer"},"createdAt":{"type":"date"},"email":{"type":"text"},"id":{"type":"text"},"name":{"type":"text"}}}}}
O campoaliases
também é bem útil quando queremos buscar em todos índices criados a partir do template. Exemplo:customers_2022_02
,customers_2022_03
, podemos pesquisar em ambos índices utilizando apenas o nomecustomers
.
GET/customers/_search{"query":{"match_all":{}}}
Sua vez de praticar, te vejo em breve.
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse