Elasticsearch

  • 添加索引
    • 一个存储关联数据的地方
    • 用来指向一个或者多个分片(shards)的逻辑命名空间(logical namespcase)
    • 应用程序直接与索引通信
  • 一个分片(shard)
    • 一个最小级别的"工作单元(worker unit)"
    • 保存索引中所有数据的一部分
    • 就是一个Lucene实例
    • 就是一个完成的搜索引擎
    • 文档存储在分片中,在分片中被索引
  • 分片
    • Elasticsearch在集群中分发数据关键
    • 是数据的容器
    • 文档存储在分片中
    • 分片分配到集群中的节点上
    • 集群扩容或者缩小,elasticsearch将自动在节点上迁移分片,以保证集群平衡
  • 主/复制分片(primary / replica shard)
    • 分片可以是主分片也可以是复制分配
    • 索引中的每个文档属于一个单独的主分片
    • 主分片数量决定索引最多存储的数据
    • 复制分片是主分片的一个副本
      • 提供数据灾备
      • 提供读请求
    • 索引创建完毕,主分配数量就固定,复制分片数量可以随时调整

数据

  1. 文档
    1. 对象(object)和文档(document)是等价相通
    2. 对象是一个json结构体,类似于哈希、hashmap、字典或者关联数据
    3. 对象(object)中还可能包含其他对象(object)
    4. Elasticsearch中文档(document)
      1. 最顶层结构/跟对象(root object)序列化成json数据以ID标识并存储于elasticsearch中
    5. 文档元数据(metadata)
      1. _index:类似于关系型数据库里的"数据库",我们存储和索引关联数据的地方
      2. _type:类似于关系新数据库中的一个类,定义了属性或与对象关联的数据。
      3. _id:标识一个唯一的文档
  2. 索引
    1. 索引一个文档通过(index API)使数据可以被存储和搜索。
  3. 获取
    1. 获取文档
      1. GET /website/blog/123?pretty
      2. Pretty 美化json输出
      3. _sourc包含原始文档
    2. 检索文档的一部分
      1. GET /website/blog/123?_source=title,text
  4. 存在
    1. 检索文档是否存在
      1. curl -i -XHEAD http://localhost:9200/website/blog/123
  5. 更新
    1. 重建索引(更新整个文档)

      PUT /websit/blog/123

      {

          "title":"my first blog entry"

          ……

      }

  6. 创建
  7. 删除
  8. 版本控制
  9. 局部更新
  10. Mget
  11. 批量

ElasticSearch关键概念的更多相关文章

  1. Elasticsearch基础概念理解

    熟悉ES中的几个关键概念: 节点(Node):一个elasticsearch运行的实例,其实就是一个java进程.一般情况下,一台机器运行在一台机器上. 集群(Cluster): 好几个有相同集群名称 ...

  2. Elasticsearch基本概念和使用

    Elasticsearch基本概念和使用 1.操作索引 1.1.基本概念 Elasticsearch也是基于Lucene的全文检索库,本质也是存储数据,很多概念与MySQL类似的. 对比关系: 索引( ...

  3. ElasticSearch 核心概念

    ElasticSearch核心概念-Cluster ElasticSearch核心概念-shards ElasticSearch核心概念-replicas ElasticSearch核心概念-reco ...

  4. Kafka学习之(一)了解一下Kafka及关键概念和处理机制

    Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模小打的网站中所有动作流数据.优势 高吞吐量:非常普通的硬件Kafka也可以支持每秒100W的消息,即使在非常廉价的商用机器上也能做 ...

  5. ElasticSearch 全文检索— ElasticSearch 核心概念

    ElasticSearch核心概念-Cluster 1)代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是去中心化,字 ...

  6. ELK 学习笔记之 elasticsearch基本概念和CRUD

    elasticsearch基本概念和CRUD: 基本概念: CRUD: 创建索引: curl -XPUT 'http://192.168.1.151:9200/library/' -d '{" ...

  7. Docker关键概念阐述

    要了解Docker需要对其体系结构中的几个关键概念有所了解,主要包括image.container.service.swarm.stack等. 在介绍这几个概念时,会使用到一个测试环境,这个测试环境是 ...

  8. Elasticsearch入门教程(二):Elasticsearch核心概念

    原文:Elasticsearch入门教程(二):Elasticsearch核心概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:ht ...

  9. 【ElasticSearch】概念

    小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 对小史面试情况感兴趣的同学可以观看面试现场系列. 随着央视诗词大会的热播,小史开始对诗词感兴趣 ...

随机推荐

  1. express入门学习(一)

    一.安装express cnpm || npm  install express --save ; 1. Hello  World var express = require('express'); ...

  2. TP 等框架在配置虚拟主机伪静态注意事项

    在配置虚拟主机的伪静态 .htaccess 文件时需要注意 ? 符号的添加与否处理 例如TP 框架来讲 无 ? 符号,在有的虚拟主机中必须这样配置,否则无法解析(试了多个公司的虚拟主机只要加了?符号就 ...

  3. 在Google Chrome中快速解除网页屏蔽鼠标右键、复制等限制

    第一步,将书签栏设置为显示状态!   第二步,添加新书签——>在标签栏点击右键,选择“添加网页”. 第三步,设置新书签的内容. 1.起名.这个凭个人爱好吧 2.网址栏输入: javascript ...

  4. C# 调用 taskkill命令结束服务进程

    获取服务映像名称 windows服务安装后会在注册表中存储服务信息,路径是HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[服务名称] 通过I ...

  5. app流畅度测试--使用手机自带功能

    1.进入开发者选项,在“监控”选项卡找到“GPU呈现模式分析”的选项 2.开启后,即可以条形图和线形图的方式显示系统的界面相应速度 3.那么要如何根据曲线判断系统是否流畅呢?实际上这个曲线表达的是GP ...

  6. 80X86计算机组织

    计算机主要由运算器.控制器.存储器.和输入输出设备构成. 主频: 主频是指芯片所用的主时钟频率,它直接影响计算机的运行速度,由于处理器体系结构的差别,同样的主频可能产生不同的计算速度,但主频仍然是反映 ...

  7. 01 Spring Boot 的简单配置和使用

    Spring Boot 简介 使用 Spring Boot 可以让我们快速创建一个基于 Spring 的项目,而让这个 Spring 项目跑起来我们只需要很少的配置就可以了. 创建 Spring Bo ...

  8. Error:Artifact 'xx.war exploded' has invalid extension

    环境信息:  IDEA 13 ,  MAVEN, JBOSS 7. 配置信息: 常规配置. 出错信息: Error:Artifact 'xx.war exploded' has invalid ext ...

  9. c++11 线程的互斥量

    c++11 线程的互斥量 为什么需要互斥量 在多任务操作系统中,同时运行的多个任务可能都需要使用同一种资源.这个过程有点类似于,公司部门里,我在使用着打印机打印东西的同时(还没有打印完),别人刚好也在 ...

  10. Mysql的概述

    Mysql的概述 Mysql的安装和初次使用 Mysql的基本概念 Mysql的英文单词是: database,简称 DB. 什么是数据库? 用于存储和管理数据的仓库 数据库的特点: 持久化存储数据. ...