/elastic

Elasticsearch presentation materials

Primary LanguageJava

AGENDA

  1. Introduction (PRESENTATION)
  2. Downloading and running an Elasticsearch node
    • Elasticsearch
    • Kibana => Sense
  3. Basic concepts (PRESENTATION)
    • cluster & node
    • index
    • type
    • document
    • near realtime (NRT)
  4. Basic configuration
    • elasticsearch.yml
    • logging.yml
  5. Adding, updating, retrieving and deleting data (CRUD)
    • cluster / node checking
    • create / delete index
    • create document (wit provided id and generated id)
    • retrieve single data
    • retrieve multiple data by search
    • delete data
    • update data
    • indexing bulk data
    • multiple get
  6. Query syntax / basic search queries
    • search all data
    • lite search
    • query search: match, match_phrase
    • filter search
    • simple aggregations
  7. Basic text analysis theory and practice
    • the '_all' field & searching by example
    • exact values vs full text values
    • inverted index, analysis and analyzers (PRESENTATION)
    • build-in analyzers && custom analyzer definition (tokenizer, token_filter, char_filter)
  8. Mappings overview & query/filtering consequences
    • check the mapping of existing index
    • elasticsearch data types (PRESENTATION)
    • customizing field mappings (type, index, analyzer)
    • why use mappings - example
    • testing existing mapping
    • complex core field types (arrays, multilevel objects - object data type, nested object data type)
    • multiple fields mapping (old multifields) - one field for search and for example second field for sorting
  9. Searching one more time (accounts.json file)
  10. Analytical aggregations
    • basics concepts (buckets, metrics)
    • basic examples (buckets, metrics, buckets inside buckets)
    • statistics
    • histograms, date histograms
    • aggregations with query, global bucket, bucket filtering, post filter
    • bucket sorting
    • approximate aggregations
  11. JAVA clients
  12. Advanced subjects (PRESENTATION + DEMO)
    • shards, replicas
    • modeling data (application side joins, denormalization, nested objects, parent-child relationship)
  13. Where to find more resources

Import accounts.json: curl -XPOST 'localhost:9200/bank/account/_bulk?pretty' --data-binary "@accounts.json" curl 'localhost:9200/_cat/indices?v'

WHAT is RELEVANCE

LINKS: