Elasticsearch基础

  Elasticsearch是一个开源搜索服务器项目,是优秀的全文搜索和分析引擎。数据库

1.数据架构的主要概念数组

  (1)索引服务器

    索引(index)是Elasticsearch对逻辑数据的存储,因此它能够分为更小的部分。能够看做关系型数据的表。架构

    Elasticsearch能够把索引放在一台机器或分散在多台服务器上,每一个索引有一个或多个分片(shard),每一个分片能够有多个副本。对象

  (2)文档排序

    存储在Elasticsearch中的主要实体叫作文档(document)。能够看做关系型数据库的一行记录。索引

    文档由多个字段组成,每一个字段能够屡次出如今一个文档中,这样的字段叫作多值字段。每一个字段是有类型,如文本,数值,日期等。字段也能够是复杂类型,一个字段包含其余子文档或数组。内存

    字段类型在Elasticsearch中很重要,由于它给出了各类操做(如分析或排序)如何被操做的信息。文档不须要固定的结构,每一个文档能够有不一样的字段。文档

  (3)文档类型博客

    在Elasticsearch中,一个索引对象能够存储多个不一样用途的对象。如一个博客引用程序中能够保存文章和评论。

  (4)映射

    Elasticsearch在映射中存储有关字段的信息,如数值字段和从网页上抓取的文本字段须要有不一样的分析。每一个文档类型都有本身的映射,即便咱们没有定义。

  从上面咱们知道Elasticsearch把数据存储在一个或多个索引上,每一个索引包含各类类型的文档。每一个文档有不少字段,映射定义了Elasticsearch如何字段这些字段。

2.Elasticsearch主要概念

  (1)节点和集群

    Elasticsearch能够做为一个独立的单个搜索服务器,不过为了处理大型数据集,实现容错和高可用,Elasticsearch能够运行在多台服务器上,这些服务器组成集群,单台服务器成为节点。

  (2)分片

    在处理大量数据时,单个节点因为内存有限、磁盘有限,从而没法快速响应客户端请求,这种状况下,数据能够分为较小的部分(分片),每一个分片在不一样服务器上,最后把结果合并起来。

    分片能加快索引。

  (3)副本

    副本只是一个分片的精确复制,每一个分片能够有零个或多个副本。也就是说Elasticsearch能够有多个相同的分片,其中之一被选择去更改索引操做,这个分片称为主分片,其他是副分片,当主分片丢失时,集群会把副本提高为主分片。

相关文章
相关标签/搜索