Elastisk sökning

Varför togs ES-kartläggningstyper bort i ES v6.0?

Varför togs ES-kartläggningstyper bort i ES v6.0?

Vad är kartläggningstyper?

I Elasticsearch tillhör varje dokument ett index och en typ. Ett index kan betraktas som en databas medan en typ kan ses som en tabell jämfört med en relationsdatabas. En kartläggningstyp var en logisk partition av ett objekt med andra objekt som tillhörde andra kartläggningstyper i samma index.

Varje mappningstyp har sina egna fält. Till exempel en typ av användare kan ha följande fält:


"id": 123,
"name": "Shubham",
"webbplats": 1

En annan mappningstyp i samma index hemsida kan ha följande fält som skiljer sig helt från användare typ:


"id": 1,
"title": "LinuxHint",
"länk": "https: // linuxhint.com / "

När du söker efter ett dokument i ett index kan sökningen ha begränsats till ett enda dokument genom att ange ett enda fält som:

GET idx_name / user, website / _search

"fråga":
"match":
"id": 1


De _typ dokumentfältet kombinerades med dess _id att generera en _uid fält så dokument med samma _id kan existera i ett enda index.

Läs Elasticsearch Tutorial för nybörjare för en djupare förståelse för Elasticsearch Architecture och kom igång med den med Install ElasticSearch på Ubuntu.

Varför tas kartläggningstyper bort?

Precis som vad vi sa ovan när vi förklarade hur index och typer liknade en databas och en tabell i en relationsdatabas, tänkte Elasticsearch-teamet samma sak men så var inte fallet eftersom Lucene Engine inte följer samma analogi. Detta beror på följande skäl:

Alternativ till kartläggningstyper

Även om beslutet har fattats måste vi fortfarande skilja på olika typer av data. Nu är det första alternativet att separata dokument i sitt eget index som har två fördelar:

Ett annat alternativ till att separera data är att behålla en anpassning _typ fält i varje dokument vi infogar, som:

PUT db_name / doc / 123

"type": "user",
"id": 123,
"name": "Shubham",
"webbplats": 1

PUT db_name / doc / webbplats

"type": "webbplats",
"id": 1,
"title": "LinuxHint",
"länk": "https: // linuxhint.com / "

Detta är en utmärkt användning om du letar efter en komplett anpassad lösning.

Schema för borttagning av mappningstyper

Eftersom borttagning av mappningstyper är en stor förändring gör ES-teamet processen långsamt. Här är ett schema för utrullningen extraherad från elastiken.co:

Slutsats

I den här lektionen tittade vi på varför Elasticsearch Mapping-typer togs bort och kommer inte att stödjas i kommande versioner.

Mus Mellan musknappen fungerar inte i Windows 10
Mellan musknappen fungerar inte i Windows 10
De mittknappen hjälper dig att bläddra igenom långa webbsidor och skärmar med mycket data. Om det slutar, kommer du sluta använda tangentbordet för at...
Mus Hur man ändrar vänster och höger musknapp på Windows 10 PC
Hur man ändrar vänster och höger musknapp på Windows 10 PC
Det är en hel norm att alla datormusenheter är ergonomiskt utformade för högerhänta användare. Men det finns musenheter tillgängliga som är speciellt ...
Mus Emulera musklick genom att sväva med Clickless Mouse i Windows 10
Emulera musklick genom att sväva med Clickless Mouse i Windows 10
Att använda en mus eller tangentbord i fel hållning av överdriven användning kan resultera i många hälsoproblem, inklusive stam, karpaltunnelsyndrom o...