Basisbeginselen van mappings en gegevenstypen
Maak kennis met het concept mapping, leer hoe Elasticsearch gegevenstypen afleidt en hoe u eenvoudige expliciete mappings voor uw velden definieert.
Basisbeginselen van mappings en gegevenstypen is een gratis Elasticsearch en systemen voor zoeken in volledige tekst-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Elasticsearch en systemen voor zoeken in volledige tekst. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Elasticsearch en systemen voor zoeken in volledige tekst bevat in totaal 4 lessen.
Mapping: de blauwdruk van je gegevens
Wanneer je gegevens in Elasticsearch zet, moet Elasticsearch begrijpen welk soort gegevens elk onderdeel bevat. Daarvoor gebruik je mapping.
Mapping lijkt op een schema waarin de velden van je documenten en hun gegevenstypen worden vastgelegd, zoals tekst, getallen of datums.
Waarom mapping belangrijk is
Zie mapping als een blauwdruk voor je zoekmachine. Het vertelt Elasticsearch:
- Hoe elk veld moet worden opgeslagen
- Hoe elk veld moet worden geïndexeerd (voorbereid op zoeken)
- Hoe elk veld kan worden doorzocht en geanalyseerd
Zonder de juiste mapping werken je zoekopdrachten misschien niet zoals verwacht!
Dynamische mapping: de gok van Elasticsearch
Elasticsearch is slim! Als je een document indexeert zonder eerst een mapping te definiëren, probeert het voor elk veld het gegevenstype te raden. Dit heet dynamische mapping.
Dat is handig om snel te beginnen, maar niet altijd ideaal als je nauwkeurige controle over je gegevens nodig hebt.
Voorbeeld van dynamische mapping
Laten we dynamische mapping in actie bekijken. We indexeren een document in een nieuwe index met de naam my_books. Elasticsearch maakt de index automatisch aan en raadt de veldtypen.
PUT /my_books/_doc/1
{
"title": "The Art of Search",
"author": "Jane Doe",
"published_year": 2023,
"is_available": true,
"pages": 320
}Dynamische mappings bekijken
Na het indexeren kunnen we de automatisch gegenereerde mapping voor my_books ophalen om te zien welke gegevenstypen Elasticsearch voor elk veld heeft afgeleid.
Je ziet typen zoals text, keyword, long en boolean.
GET /my_books/_mappingBeperkingen van dynamische mapping
Dynamische mapping is handig, maar heeft beperkingen. Elasticsearch kan een plaatsnaam bijvoorbeeld als text mappen (voor zoeken in volledige tekst), terwijl je die eigenlijk als keyword nodig hebt (voor exact filteren).
Dit kan leiden tot inefficiënte zoekopdrachten of onverwachte resultaten. Daarom is expliciete mapping zo belangrijk.
Expliciete mappings definiëren
Bij expliciete mapping definieer je het schema zelf voordat je documenten indexeert. Zo krijg je volledige controle over de manier waarop je gegevens worden opgeslagen en geïndexeerd.
Je definieert mappings wanneer je een index maakt, in het object mappings, onder properties.
PUT /my_custom_index
{
"mappings": {
"properties": {
"field_name": { "type": "data_type" }
}
}
}Veelgebruikte gegevenstypen: Text en Keyword
Twee fundamentele typen zijn text en keyword:
text: wordt gebruikt voor zoeken in volledige tekst, bijvoorbeeld in boekbeschrijvingen. Tekst wordt geanalyseerd, in woorden opgesplitst en verwerkt.keyword: wordt gebruikt voor het vergelijken van exacte waarden, filteren en sorteren, bijvoorbeeld van product-ID's en tags. Keywords worden ongewijzigd opgeslagen.
Voorbeeld van expliciete mapping: Text en Keyword
Zo map je product_name expliciet voor zoekopdrachten en product_id voor exact filteren.
Let erop dat we de index met de mapping maken voordat we documenten toevoegen.
PUT /products_v1
{
"mappings": {
"properties": {
"product_name": { "type": "text" },
"product_id": { "type": "keyword" }
}
}
}Snelle controle: gegevenstypen kiezen
Je bouwt een Elasticsearch-index voor een e-commerceplatform. Welke gegevenstypen zijn het meest geschikt voor de volgende velden, zodat zoeken en filteren efficiënt verlopen?
Samenvatting: de structuur van je gegevens beheersen
Goed gedaan! Je hebt de basis van Elasticsearch-mapping geleerd.
- Mapping definieert de structuur en typen van de documentvelden.
- Dynamische mapping is de functie van Elasticsearch om typen automatisch te raden.
- Expliciete mapping geeft je volledige controle. Je kunt typen definiëren zoals
text(voor zoeken),keyword(voor exacte overeenkomsten) en numerieke typen zoalsintegerenfloat.
Controle over je mappings is essentieel voor krachtige en nauwkeurige zoekopdrachten!
Leer Elasticsearch en systemen voor zoeken in volledige tekst met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Basisbeginselen van mappings en gegevenstypen” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Elasticsearch en systemen voor zoeken in volledige tekst, waaronder “Basisbeginselen van mappings en gegevenstypen”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Elasticsearch en systemen voor zoeken in volledige tekst bevat in totaal 4 lessen.
Wat leer ik in “Basisbeginselen van mappings en gegevenstypen”?
Maak kennis met het concept mapping, leer hoe Elasticsearch gegevenstypen afleidt en hoe u eenvoudige expliciete mappings voor uw velden definieert. Je oefent met Elasticsearch en systemen voor zoeken in volledige tekst door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Elasticsearch en systemen voor zoeken in volledige tekst te beginnen?
Ervaring vooraf is niet nodig. Elasticsearch en systemen voor zoeken in volledige tekst op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.
Hoe lang duurt de les “Basisbeginselen van mappings en gegevenstypen”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Elasticsearch en systemen voor zoeken in volledige tekst?
Ja. Elke les over Elasticsearch en systemen voor zoeken in volledige tekst bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Documenten indexeren in Elasticsearch
- CRUD-bewerkingen met documenten
- Basisbeginselen van mappings en gegevenstypen
- Bulkindexering en de Bulk API