elk学习笔记之elasticsearchshard和segment概念

AK47Sonic AK47Sonic     2022-09-21     705

关键词:

Shard和segment概念:

 

转载: http://blog.csdn.net/likui1314159/article/details/53217750

Shard(分片)
一个Shard就是一个Lucene实例,是一个完整的搜索引擎。一个索引可以只包含一个Shard,只是一般情况下会用多个分片,可以拆分索引到不同的节点上,分担索引压力。

Segment
elasticsearch中的每个分片包含多个segment,每一个segment都是一个倒排索引;在查询的时,会把所有的segment查询结果汇总归并后最为最终的分片查询结果返回;
在创建索引的时候,elasticsearch会把文档信息写到内存bugffer中(为了安全,也一起写到translog),定时(可配置)把数据写到segment缓存小文件中,然后刷新查询,使刚写入的segment可查。
虽然写入的segment可查询,但是还没有持久化到磁盘上。因此,还是会存在丢失的可能性的。
所以,elasticsearch会执行flush操作,把segment持久化到磁盘上并清除translog的数据(因为这个时候,数据已经写到磁盘上,不在需要了)。
当索引数据不断增长时,对应的segment也会不断的增多,查询性能可能就会下降。因此,Elasticsearch会触发segment合并的线程,把很多小的segment合并成更大的segment,然后删除小的segment。
segment是不可变的,当我们更新一个文档时,会把老的数据打上已删除的标记,然后写一条新的文档。在执行flush操作的时候,才会把已删除的记录物理删除掉。

elk学习笔记之logstash之inputs配置

Logstash之inputs配置: inputplugindoc:https://www.elastic.co/guide/en/logstash/current/index.html插件很多,选两个常用的使用下。1.stdininputplugin参数:建立stdin-sample.conf:input{ stdin{}}output{ stdout{}}执行:. 查看详情

elk学习笔记之logstash之filter配置

Logstash之filter: jsonfilter:input{      stdin{      }}filter{      json{     &nb 查看详情

elk学习笔记之elasticsearchbulk操作:

Bulk操作: Bulk操作用于批量插入数据:请求体格式:编辑一个文件:(插入2个新的文档)curl-XPOST‘http://192.168.1.151:9200/library/books/_bulk‘--data-binary@requests用mget查询文档:已经成功插入。 查看详情

elk学习笔记之elasticsearchmget操作

Mget操作: 查询多个文档:curl-XGET‘http://192.168.1.151:9200/_mget‘-d‘{"docs":[{"_index":"library","_type":"books","_id":"1"},{"_index":"library","_type":"books","_id":"2"}]}‘curl-XGET‘http://192.168.1.151 查看详情

elk学习笔记之logstash基本语法

Logstash基本语法: 处理输入的input处理过滤的filter处理输出的output 区域数据类型条件判断字段引用 区域:Logstash中,是用{}来定义区域区域内,可以定义插件一个区域内可以定义多个插件 数据类型:条件判断:字... 查看详情

elk学习笔记之logstash安装

Logstash安装: https://www.elastic.co/downloads/logstash下载解压:tar–zxvflogstash-5.6.1.tar.gz在/usr/local/logstash-5.6.1/bin下编辑conf:(因为配置了输出到es和console上,所以必须先启动es。)vilogstash-simple.confinput{stdin{}}ou 查看详情

elk学习笔记之kibana安装

Kibana安装: 安装地址:https://www.elastic.co/downloads/kibana安装:tar-zxvfkibana-5.6.1-linux-x86_64.tar.gz非常不开心的是,安装报错:只能重新下载安装5.5.2版本:https://www.elastic.co/downloads/past-releases/kibana-5-5-2安装运行Kibana 查看详情

elk学习笔记之elasticsearch版本控制

版本控制: elasticsearch 版本控制:内部版本控制外部版本控制 内部版本控制:内部版本会检查你提供的版本值和文档的版本值是否一致,如果不一致就报错,一致则可以更新。curl-XPUT‘http://192.168.1.151:9200/library/books/8... 查看详情

elk学习笔记之elasticsearch环境搭建

ELK概述:ElasticSearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等Logstash是一个完全开源的工具,它可以对你的日志进行收集、... 查看详情

elk学习笔记之elasticsearchhead插件安装

elasticsearchhead插件安装: 准备工作:安装nodejs和npm https://nodejs.org/en/download/  node-v6.11.2-linux-x64.tar.xz由于是xz压缩文件,所以要先安装yum-yinstallxz$xz-d***.tar.xz$tar-xvf ***.tar配置环境变量#setn 查看详情

elk学习笔记之elasticsearchshard和segment概念

Shard和segment概念: 转载: http://blog.csdn.net/likui1314159/article/details/53217750Shard(分片)一个Shard就是一个Lucene实例,是一个完整的搜索引擎。一个索引可以只包含一个Shard,只是一般情况下会用多个分片,可以拆分索引到不... 查看详情

elk学习笔记之elasticsearchelasticsearch.yml配置概述

elasticsearch.yml配置概述: 设置集群名字cluster.name 定义节点名称node.name 节点作为master,但是不负责存储数据,只是协调。node.master:truenode.data:false 子节点,存储数据node.master:falsenode.data:true 该节点是一个负载均... 查看详情

elk学习笔记之elasticsearch启动时warning解决办法

elasticsearch启动时Warning解决办法: 转载:http://www.dajiangtai.com/community/18136.do?origin=csdn-geek&dt=1214问题一: [2016-11-06T16:27:21,712][WARN][o.e.b.JNANatives]unabletoinstallsyscallfilter:&n 查看详情

elk学习笔记---安装elk5.x版

ELK日志平台是一个完整的日志分析系统,有三个开源工具构建组成,分别是:Elasticsearch、Logstash和Kibana。Elasticsearch用于数据分析和深度搜索;Logstash作用是从其他服务器上传输和转发日志,对其集中管理,进行分析;Kibana则是提... 查看详情

elk学习笔记a

一、基本操作1、命令行运行 bin/logstash-e ‘input{stdin{}}output{stdout{codec=>rubydebug}}‘#bin/logstash -e ‘input{stdin{}}output{stdout{codec=>rubydebug}}‘Logstash startup compl 查看详情

elk学习笔记b

一、输入a、标准输入:input {    stdin {        add_field => {"key" =>"value"}        查看详情

elk学习笔记安装elasticsearchkibanalogstash和x-pack

最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程。日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常... 查看详情

jquery学习笔记之串联

目录:串联之绑定前后jQuery对象返回前一个jQuery对象 串联之绑定前后jQuery对象返回前一个jQuery对象  查看详情