万本电子书0元读

万本电子书0元读

顶部广告

Learning Elasticsearch电子书

售       价:¥

22人正在读 | 0人评论 9.8

作       者:Abhishek Andhavarapu

出  版  社:Packt Publishing

出版时间:2017-07-07

字       数:44.3万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Store, search, and analyze your data with ease using Elasticsearch 5.x About 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 comprehensive guide will get you up and running with Elasticsearch 5.x in no time Who This Book Is For If you want to build efficient search and analytics applications using Elasticsearch, this book is for you. It will also benefit developers who have worked with Lucene or Solr before and now want to work with Elasticsearch. No previous knowledge of Elasticsearch is expected. What You Will Learn ? See how to set up and configure Elasticsearch and Kibana ? Know how to ingest structured and unstructured data using Elasticsearch ? Understand how a search engine works and the concepts of relevance and scoring ? Find out how to query Elasticsearch with a high degree of performance and scalability ? Improve the user experience by using autocomplete, geolocation queries, and much more ? See how to slice and dice your data using Elasticsearch aggregations. ? Grasp how to use Kibana to explore and visualize your data ? Know how to host on Elastic Cloud and how to use the latest X-Pack features such as Graph and Alerting In Detail Elasticsearch is a modern, fast, distributed, scalable, fault tolerant, and open source search and analytics engine. You can use Elasticsearch for small or large applications with billions of documents. It is built to scale horizontally and can handle both structured and unstructured data. Packed with easy-to- follow examples, this book will ensure you will have a firm understanding of the basics of Elasticsearch and know how to utilize its capabilities efficiently. You will install and set up Elasticsearch and Kibana, and handle documents using the Distributed Document Store. You will see how to query, search, and index your data, and perform aggregation-based analytics with ease. You will see how to use Kibana to explore and visualize your data. Further on, you will learn to handle document relationships, work with geospatial data, and much more, with this easy-to-follow guide. Finally, you will see how you can set up and scale your Elasticsearch clusters in production environments. Style and approach This comprehensive guide will get you started with Elasticsearch 5.x, so you build a solid understanding of the basics. Every topic is explained in depth and is supplemented with practical examples to enhance your understanding.
目录展开

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

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部