ElasticSearch关键概念
Elasticsearch
- 添加索引
- 一个存储关联数据的地方
- 用来指向一个或者多个分片(shards)的逻辑命名空间(logical namespcase)
- 应用程序直接与索引通信
- 一个分片(shard)
- 一个最小级别的"工作单元(worker unit)"
- 保存索引中所有数据的一部分
- 就是一个Lucene实例
- 就是一个完成的搜索引擎
- 文档存储在分片中,在分片中被索引
- 分片
- Elasticsearch在集群中分发数据关键
- 是数据的容器
- 文档存储在分片中
- 分片分配到集群中的节点上
- 集群扩容或者缩小,elasticsearch将自动在节点上迁移分片,以保证集群平衡
- 主/复制分片(primary / replica shard)
- 分片可以是主分片也可以是复制分配
- 索引中的每个文档属于一个单独的主分片
- 主分片数量决定索引最多存储的数据
- 复制分片是主分片的一个副本
- 提供数据灾备
- 提供读请求
- 索引创建完毕,主分配数量就固定,复制分片数量可以随时调整
数据
- 文档
- 对象(object)和文档(document)是等价相通
- 对象是一个json结构体,类似于哈希、hashmap、字典或者关联数据
- 对象(object)中还可能包含其他对象(object)
- Elasticsearch中文档(document)
- 最顶层结构/跟对象(root object)序列化成json数据以ID标识并存储于elasticsearch中
- 文档元数据(metadata)
- _index:类似于关系型数据库里的"数据库",我们存储和索引关联数据的地方
- _type:类似于关系新数据库中的一个类,定义了属性或与对象关联的数据。
- _id:标识一个唯一的文档
- 索引
- 索引一个文档通过(index API)使数据可以被存储和搜索。
- 获取
- 存在
- 检索文档是否存在
- curl -i -XHEAD http://localhost:9200/website/blog/123
- 更新
- 重建索引(更新整个文档)
PUT /websit/blog/123
{
"title":"my first blog entry"
……
}
- 创建
- 删除
- 版本控制
- 局部更新
- Mget
- 批量
ElasticSearch关键概念的更多相关文章
- Elasticsearch基础概念理解
熟悉ES中的几个关键概念: 节点(Node):一个elasticsearch运行的实例,其实就是一个java进程.一般情况下,一台机器运行在一台机器上. 集群(Cluster): 好几个有相同集群名称 ...
- Elasticsearch基本概念和使用
Elasticsearch基本概念和使用 1.操作索引 1.1.基本概念 Elasticsearch也是基于Lucene的全文检索库,本质也是存储数据,很多概念与MySQL类似的. 对比关系: 索引( ...
- ElasticSearch 核心概念
ElasticSearch核心概念-Cluster ElasticSearch核心概念-shards ElasticSearch核心概念-replicas ElasticSearch核心概念-reco ...
- Kafka学习之(一)了解一下Kafka及关键概念和处理机制
Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模小打的网站中所有动作流数据.优势 高吞吐量:非常普通的硬件Kafka也可以支持每秒100W的消息,即使在非常廉价的商用机器上也能做 ...
- ElasticSearch 全文检索— ElasticSearch 核心概念
ElasticSearch核心概念-Cluster 1)代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是去中心化,字 ...
- ELK 学习笔记之 elasticsearch基本概念和CRUD
elasticsearch基本概念和CRUD: 基本概念: CRUD: 创建索引: curl -XPUT 'http://192.168.1.151:9200/library/' -d '{" ...
- Docker关键概念阐述
要了解Docker需要对其体系结构中的几个关键概念有所了解,主要包括image.container.service.swarm.stack等. 在介绍这几个概念时,会使用到一个测试环境,这个测试环境是 ...
- Elasticsearch入门教程(二):Elasticsearch核心概念
原文:Elasticsearch入门教程(二):Elasticsearch核心概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:ht ...
- 【ElasticSearch】概念
小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 对小史面试情况感兴趣的同学可以观看面试现场系列. 随着央视诗词大会的热播,小史开始对诗词感兴趣 ...
随机推荐
- Java中实现PCA降维
package com.excellence.splitsentence; import java.net.UnknownHostException; import java.util.ArrayLi ...
- 软工网络15团队作业4——敏捷冲刺日志的集合贴(Alpha阶段)
Alpha阶段 第 1 篇 Scrum 冲刺博客 第 2 篇 Scrum 冲刺博客 第 3 篇 Scrum 冲刺博客 第 4 篇 Scrum 冲刺博客 第 5 篇 Scrum 冲刺博客 第 6 篇 S ...
- angular入门学习文档之一
一.数据双向绑定 angular(下面统一简称ng)强大的地方莫过于它内置的数据双向绑定功能,下面我们通过一个简单的例子来演示ng强大的双向绑定数据的能力. 代码如下: 1.dom结构: 1.< ...
- 一个Flume 异常(Put queue for MemoryTransaction of capacity 100 full)的排查和解决思路
最近在做一个分布式调用链跟踪系统, 在两个地方采用了flume (我使用的flume版本是1.5.0-cdh5.4.4),一个是宿主系统 ,用flume agent进行日志搜集. 一个是从kafka拉 ...
- 计算机网络【6】—— 从浏览器输入URL到显示页面发生了什么
当在浏览器地址栏输入网址,如:www.baidu.com后浏览器是怎么把最终的页面呈现出来的呢?这个过程可以大致分为两个部分:网络通信和页面渲染. 一.网络通信 互联网内各网络设备间的通信都遵循TCP ...
- STM32CubeMX介绍、下载与安装
一.简介 STM32CubeMX是一个配置STM32代码的工具,它把很多东西封装的比较好,硬件抽象层.中间层.示例代码等.现在ST公司升级和维护的库主要就是STM32CubeMX的HAL库和标准外设库 ...
- laravel运行慢是怎么回事?
因为默认的 hello 页面引用了 google 的字体,至于为什么 google 这么慢就不用我详细说明了吧.
- Luogu 3373 又乘又加的线段树
Luogu 3373 又乘又加的线段树 当给一个节点加上一个加法标记时,直接把加法标记 += 新值: 当给一个节点加上一个乘法标记时,把乘法标记和加法标记同时 *= 新值.(注意pushdown函数中 ...
- 51nod 1563 坐标轴上的最大团(今日gg模拟第一题) | 线段覆盖 贪心 思维题
51nod 1563 坐标轴上的最大团 坐标轴上有n个点,每个点有一个权值.第i个点的坐标是 xi ,权值是 wi .现在对这些点建图.对于点对 (i,j) ,如果 |xi−xj|≥wi+wj ,那么 ...
- 【BZOJ4804】欧拉心算
Description 给定数字\(n\)(\(n\le 10^7\)),求: \[ \sum_{i=1}^n\sum_{j=1}^n\varphi(\gcd(i,j)) \] 多组数据输入,数据 ...