Tak určitě! Zde je překlad vysvětlení a příkladů pro Index a Mapping v Elasticsearch:
Index v Elasticsearch
An Index in Elasticsearch je obdobou databáze v tradičních systémech správy databází(DBMS). Uchovává sbírku souvisejících dokumentů. Každá Index obvykle odpovídá specifickému typu dat ve vaší aplikaci. Například v aplikaci elektronického obchodu můžete vytvořit aplikaci Index pro ukládání informací o produktech a jinou Index pro ukládání informací o uživatelích a objednávkách.
Každý Index vstup Elasticsearch je rozdělen na menší fragmenty pro distribuci dat. Shard je malá část Index a každý Shard může být uložen na samostatném uzlu v rámci Elasticsearch clusteru. Rozdělení dat na fragmenty optimalizuje výkon vyhledávání a dotazů a zlepšuje škálovatelnost systému.
Chcete-li například vytvořit nový Index s názvem products
v Elasticsearch, můžete pomocí rozhraní API nebo nástrojů pro správu, jako je Kibana, spustit následující příkaz:
PUT /products
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 2
}
}
Ve výše uvedeném příkladu jsme vytvořili Index products
3 shard
a 2 replica
od každého shard
, abychom zajistili dostupnost a zálohování dat.
Mapping v Elasticsearch
Mapping je proces definování způsobu Elasticsearch ukládání a zpracování dat v rámci Index. Když přidáte nový dokument do Index, Elasticsearch používá Mapping k určení datového typu každého pole v dokumentu. To pomáhá Elasticsearch pochopit, jak zpracovávat a vyhledávat data v různých oblastech.
Například, pokud máme Index products
a chceme definovat Mapping pole name
(název produktu) a price
(cena produktu) jako textové a plovoucí typy, můžeme provést následující příkaz:
PUT /products/_mapping
{
"properties": {
"name": {
"type": "text"
},
"price": {
"type": "float"
}
}
}
Ve výše uvedeném příkladu jsme definovali Mapping pro products
Index, přičemž name
pole má datový typ text
a pole price datový typ float
. To zajišťuje, že když Elasticsearch obdrží nové dokumenty pro products
Index, uloží a zpracuje name
pole a "cena" podle definovaných datových typů.
Index a Mapping hrají klíčovou roli při organizování a správě dat v Elasticsearch. Pomáhají Elasticsearch efektivně porozumět a zpracovávat data, optimalizovat operace vyhledávání a dotazů a poskytují systému flexibilní možnosti škálovatelnosti.