Please enable JavaScript.
Coggle requires JavaScript to display documents.
ELK - Coggle Diagram
ELK
Elasticsearch
-
Concepts
Document
Documents are the things you're searching for. They can be any structured JSON. Every document has a unique ID.
-
Indices
-
Index contain inverted indices that allow search across everything within them at once, and mappings that define schemas for the data within.
-
Inverted index
The purpose of an inverted index, is to store text in a structure that allows for very efficient and fast full-text searches. When performing full-text searches, we are actually querying an inverted index and not the JSON documents that we defined when indexing the documents
Mapping
-
Elasticsearch has reasonable defaults to map our data into the right type, however, there are situations where we need to be explicit.
Maps can define field types (date, integer, float, etc)
-
-
-
-
-
Data Modeling
Normalized data
Minimizes storage space, make it easy to change data
However, requires multiple queries to 'join' information
-
Denormalized data
-
Information is duplicated, but only one query
-
Flattened Data type
Allow to map the entire document into a single field in order to avoid 'mapping explosion' of multiple inner fields
Limitations
Fields of the flattened data type will be treated as keywords (no analyzers or tokenizers). For instance, it is not possible to perform partial match.
Queries
Sorting
It is not possible to sort by analyzed fields. Workaround: map the field also a 'raw' subfield with type 'keyword'.
-
-
Installation
- Use docker-compose to setup 3 elasticsearch nodes + 1 kibana node
- Increase amount of memory available: sysctl -w vm.max_map_count=262144
- Check if elasticsearch nodes are up: curl -X GET "localhost:9200/_cat/nodes?v&pretty"
-
-
-
-
-
-