Loading...
Elasticsearch-ELK(二)Logstash开源的流数据处理、转换(解析)和发送引擎,可以采集来自不同数据源的数据,并对数据进行处理后输出到多种数据源。Logstash是ELK Stash的重要组成部分。工作原理Logstash的数据处理过程主要包括: Inputs、Filters、Outputs三部分,如图:Inputs: 用于从数据源获取数据,常见的插件如beats、file...
Elasticsearch-ELK(一)什么是ELK?E: Elasticsearch-数据存储、分析L: LogStash-日志采集K: Kibana-日志展示为什么用ELK普通日志的缺点:开发人员不能登录生产服务器查看日志一个应用可能分布于多台服务器,难以查找同一台服务器可能部署多个应用,日志分散难以管理会产生大量磁盘IO,可能会占用大量磁盘空间,严重时可能会造成节点宕机查询速度慢,不支...
Elasticsearch(八)模糊搜索前缀搜索匹配以搜索关键词开头的索引,不计算相关度评分,和filter比,没有bitcache。前缀搜索性能差,应该尽量把前缀长度设置的更长。PUT my_index { "mappings": { "properties": { "text": { &q...
Elasticsearch(七)分词器用处分词Index time analysis: 创建或者更新文档时,会对文档进行分词Search time analysis: 查询时,对搜索关键词分词normalization: 提升recall召回率,能搜索到更多的结果分析器character filter分词之前预处理,过滤无用字符、标签,字符转换等。1、HTML Strip Character...
Elasticsearch(六)ES ScriptsES在1.4.x-5.0版本用的是Groovy,在5.0版本以后,放弃Groovy改用Painless。Painless是ES默认的脚本语言,除此之外,ES还支持其他几种语言:Expression: 每个文档的开销较低,表达式的作用更多,可以非常快速地执行,甚至比编写native脚本还要快,支持JavaScript语法的子集,单个表达式。缺...
Elasticsearch(五)ES底层原理正排索引(doc values)与倒排索引从广义上来说,doc values本质上是一个序列化的列式存储。列式存储适用于聚合、排序、脚本等操作,所有的数字、地理坐标、日志、IP和不分析(not_analyzed)字符类型都会默认开启。倒排索引的优势在于查找包含某个项的文档,正排索引用来确定哪些项是否存在单个文档里。如图,ES中有如上五条记录,我们执...
Elasticsearch(四)MappingMapping就是ES数据字段field的type元数据,ES在创建索引的时候,dynamic mapping会自动为不同的数据指定相应mapping。mapping中包含了字段的类型、搜索方式(exact value或者full text)、分词器等。查看mappingGET product/_mappingsDynamic mapping字符...
Elasticsearch(三)Elasticsearch查询语法SearchTimeout默认没有timeout,如果设置了timeout,那么会执行timeout机制。Timeout机制:假设用户查询结果有1W条数据,需要10秒才能查询完毕,但是用户设置了1秒的timeout,那么不管当前一共查询了多少数据,都会在1秒后停止查询,并返回当前数据。GET product/_search?t...
Elasticsearch(二)ES安装配置jdk下载ES并解压配置开发模式: ES默认不用修改配置文件,开箱即用,在该模式下,ES会将一些问题以warning的方式打印出来,不会影响使用生产模式: 修改了ES的网络或集群配置,会触发ES的引导检查,检查内存、JVM、集群节点等一系列配置,如果有问题,会以ERROR的形式展现,程序将无法启动配置vi config/elasticsearch....
Elasticsearch(一)Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在...