售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Title Page
Copyright
Learning Elasticsearch
Credits
About the Author
About the Reviewers
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
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
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
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
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
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
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
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 "did you mean" feature
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
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
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
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
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜