Cargando…

Learning Elasticsearch.

Store, search, and analyze your data with ease using Elasticsearch 5.xAbout This Book* Get to grips with the basics of Elasticsearch concepts and its APIs, and use them to create efficient applications* Create large-scale Elasticsearch clusters and perform analytics using aggregation* This comprehen...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Andhavarapu, Abhishek
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing, 2017.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Cover
  • Copyright
  • Credits
  • About the Author
  • About the Reviewer
  • www.PacktPub.com
  • Customer Feedback
  • Table of Contents
  • Preface
  • Chapter 1: Introduction to Elasticsearch
  • Basic concepts of Elasticsearch
  • Document
  • Index
  • Type
  • Cluster and node
  • Shard
  • Interacting with Elasticsearch
  • Creating a document
  • Retrieving an existing document
  • Updating an existing document
  • Updating a partial document
  • Deleting an existing document
  • How does search work?
  • Importance of information retrieval
  • Simple search query
  • Inverted index
  • Stemming
  • Synonyms
  • Phrase search
  • Apache Lucene
  • Scalability and availability
  • Relation between node, index, and shard
  • Three shards with zero replicas
  • Six shards with zero replicas
  • Six shards with one replica
  • Distributed search
  • Failure handling
  • Strengths and limitations of Elasticsearch
  • Summary
  • Chapter 2: Setting Up Elasticsearch and Kibana
  • Installing Elasticsearch
  • Installing Java
  • Windows
  • Starting and stopping Elasticsearch
  • Mac OS X
  • Starting and stopping Elasticsearch
  • DEB and RPM packages
  • Debian package
  • RPM package
  • Starting and stopping Elasticsearch
  • Sample configuration files
  • Verifying Elasticsearch is running
  • Installing Kibana
  • Mac OS X
  • Starting and stopping Kibana
  • Windows
  • Starting and stopping Kibana
  • Query format used in this book (Kibana Console)
  • Using cURL or Postman
  • Health of the cluster
  • Summary
  • Chapter 3: Modeling Your Data and Document Relations
  • Mapping
  • Dynamic mapping
  • Create index with mapping
  • Adding a new type/field
  • Getting the existing mapping
  • Mapping conflicts
  • Data type
  • Metafields
  • How to handle null values
  • Storing the original document
  • Searching all the fields in the document
  • Difference between full-text search and exact match.
  • Core data types
  • Text
  • Keyword
  • Date
  • Numeric
  • Boolean
  • Binary
  • Complex data types
  • Array
  • Object
  • Nested
  • Geo data type
  • Geo-point data type
  • Specialized data type
  • IP
  • Mapping the same field with different mappings
  • Handling relations between different document types
  • Parent-child document relation
  • How are parent-child documents stored internally?
  • Nested
  • Routing
  • Summary
  • Chapter 4: Indexing and Updating Your Data
  • Indexing your data
  • Indexing errors
  • Node/shards errors
  • Serialization/mapping errors
  • Thread pool rejection error
  • Managing an index
  • What happens when you index a document?
  • Updating your data
  • Update using an entire document
  • Partial updates
  • Scripted updates
  • Upsert
  • NOOP
  • What happens when you update a document?
  • Merging segments
  • Using Kibana to discover
  • Using Elasticsearch in your application
  • Java
  • Transport client
  • Dependencies
  • Initializing the client
  • Sniffing
  • Node client
  • REST client
  • Third party clients
  • Indexing using Java client
  • Concurrency
  • Translog
  • Async versus sync
  • CRUD from translog
  • Primary and Replica shards
  • Primary preference
  • More replicas for query throughput
  • Increasing/decreasing the number of replicas
  • Summary
  • Chapter 5: Organizing Your Data and Bulk Data Ingestion
  • Bulk operations
  • Bulk API
  • Multi Get API
  • Update by query
  • Delete by query
  • Reindex API
  • Change mappings/settings
  • Combining documents from one or more indices
  • Copying only missing documents
  • Copying a subset of documents into a new index
  • Copying top N documents
  • Copying the subset of fields into new index
  • Ingest Node
  • Organizing your data
  • Index alias
  • Index templates
  • Managing time-based indices
  • Shrink API
  • Summary
  • Chapter 6: All About Search
  • Different types of queries.
  • Sample data
  • Querying Elasticsearch
  • Basic query (finding the exact value)
  • Pagination
  • Sorting based on existing fields
  • Selecting the fields in the response
  • Querying based on range
  • Handling dates
  • Analyzed versus non-analyzed fields
  • Term versus Match query
  • Match phrase query
  • Prefix and match phrase prefix query
  • Wildcard and Regular expression query
  • Exists and missing queries
  • Using more than one query
  • Routing
  • Debugging search query
  • Relevance
  • Queries versus Filters
  • How to boost relevance based on a single field
  • How to boost score based on queries
  • How to boost relevance using decay functions
  • Rescoring
  • Debugging relevance score
  • Searching for same value across multiple fields
  • Best matching fields
  • Most matching fields
  • Cross-matching fields
  • Caching
  • Node Query cache
  • Shard request cache
  • Summary
  • Chapter 7: More Than a Search Engine (Geofilters, Autocomplete, and More)
  • Sample data
  • Correcting typos and spelling mistakes
  • Fuzzy query
  • Making suggestions based on the user input
  • Implementing
  • Term suggester
  • Phrase suggester
  • Implementing the autocomplete feature
  • Highlighting
  • Handling document relations using parent-child
  • The has_parent query
  • The has_child query
  • Inner hits for parent-child
  • How parent-child works internally
  • Handling document relations using nested
  • Inner hits for nested documents
  • Scripting
  • Script Query
  • Post Filter
  • Reverse search using the percolate query
  • Geo and Spatial Filtering
  • Geo Distance
  • Using Geolocation to rank the search results
  • Geo Bounding Box
  • Sorting
  • Multi search
  • Search templates
  • Querying Elasticsearch from Java application
  • Summary
  • Chapter 8: How to Slice and Dice Your Data Using Aggregations
  • Aggregation basics
  • Sample data
  • Query structure.
  • Multilevel aggregations
  • Types of aggregations
  • Terms aggregations (group by)
  • Size and error
  • Order
  • Minimum document count
  • Missing values
  • Aggregations based on filters
  • Aggregations on dates (range, histogram)
  • Aggregations on numeric values (range, histogram)
  • Aggregations on geolocation (distance, bounds)
  • Geo distance
  • Geo bounds
  • Aggregations on child documents
  • Aggregations on nested documents
  • Reverse nested aggregation
  • Post filter
  • Using Kibana to visualize aggregations
  • Caching
  • Doc values
  • Field data
  • Summary
  • Chapter 9: Production and Beyond
  • Configuring Elasticsearch
  • The directory structure
  • zip/tar.gz
  • DEB/RPM
  • Configuration file
  • Cluster and node name
  • Network configuration
  • Memory configuration
  • Configuring file descriptors
  • Types of nodes
  • Multinode cluster
  • Inspecting the logs
  • How nodes discover each other
  • Node failures
  • X-Pack
  • Windows
  • Mac OS X
  • Debian/RPM
  • Authentication
  • X-Pack basic license
  • Monitoring
  • Monitoring Elasticsearch clusters
  • Monitoring indices
  • Monitoring nodes
  • Thread pools
  • Elasticsearch server logs
  • Slow logs
  • Summary
  • Chapter 10: Exploring Elastic Stack (Elastic Cloud, Security, Graph, and Alerting)
  • Elastic Cloud
  • High availability
  • Data reliability
  • Security
  • Authentication and roles
  • Securing communications using SSL
  • Graph
  • Graph UI
  • Alerting
  • Summary
  • Index.