- 浏览: 146067 次
文章分类
最新评论
-
x_looking:
Client client = new TransportCl ...
ELASTICSEARCH常见问题 -
辣de冷wmyes:
ElasticSearch视频教程百度网盘地址:http:// ...
一、Elasticsearch安装使用教程
1. ELASTICSEARCH建索引过程中崩溃问题追查
by LINECONG
前天用elasticsearch重建索引,总是在凌晨崩溃,ES甩出一坨java_pid[PID].hprof的文件,然后退出。查看日志,有java OutOfMemoryError的错误信息。用如下命令查看索引状态,发现在建的索引健康状态为red。
curl http://localhost:9200/_cat/indices?v
推测这是由于建索引太慢,redis队列阻塞,占据了太大内存而导致内存不足。于是删掉索引重建,并测控内存状况。今天凌晨又崩溃了,但此时redis占用的内存并不大。
发现日志中有“no index mapper found for field: [afv.好惹]”,于是想起前几天的升级索引,增加了一个afv的字段,这个字段是一个dict,dict的key是各种可能的关键词,由于关键词非常多,每一个关键词都会在mapping中生成一个”afv.[关键词]“的field,这会导致ES得到一个非常庞大的mapping,从而内存不足退出。
于是将afv这个字段用json方式转为string类型,从而避免生成”afv.[关键词]“这样的field。并用如下的mapping设置,将afv这个字段设置为不建索引。
mapping = { 'afv': { 'index': 'no', 'store': 'yes', 'type': 'string' } }
重建索引后,一切顺利,CPU占用率也小了很多。
2. ElasticSearch报错None of the configured nodes are available
org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: []
使用地方的代码是:
Client client = new TransportClient(settings).addTransportAddress(new InetSocketTransportAddress("172.16.2.13", 9300));
经查,最后的问题在于前面初始化settings时给cluster设置了个新的名字,如:Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", "tonsonmiao").build();
因为如果设置clustername后,容器会在添加transportaddress时,从集群名为tonsonmiao里查找是否有要设置的这个IP和端口,此时肯定找不到,所以会报这个错。
将这个重命名给去掉即可。
by LINECONG
前天用elasticsearch重建索引,总是在凌晨崩溃,ES甩出一坨java_pid[PID].hprof的文件,然后退出。查看日志,有java OutOfMemoryError的错误信息。用如下命令查看索引状态,发现在建的索引健康状态为red。
curl http://localhost:9200/_cat/indices?v
推测这是由于建索引太慢,redis队列阻塞,占据了太大内存而导致内存不足。于是删掉索引重建,并测控内存状况。今天凌晨又崩溃了,但此时redis占用的内存并不大。
发现日志中有“no index mapper found for field: [afv.好惹]”,于是想起前几天的升级索引,增加了一个afv的字段,这个字段是一个dict,dict的key是各种可能的关键词,由于关键词非常多,每一个关键词都会在mapping中生成一个”afv.[关键词]“的field,这会导致ES得到一个非常庞大的mapping,从而内存不足退出。
于是将afv这个字段用json方式转为string类型,从而避免生成”afv.[关键词]“这样的field。并用如下的mapping设置,将afv这个字段设置为不建索引。
mapping = { 'afv': { 'index': 'no', 'store': 'yes', 'type': 'string' } }
重建索引后,一切顺利,CPU占用率也小了很多。
2. ElasticSearch报错None of the configured nodes are available
org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: []
使用地方的代码是:
Client client = new TransportClient(settings).addTransportAddress(new InetSocketTransportAddress("172.16.2.13", 9300));
经查,最后的问题在于前面初始化settings时给cluster设置了个新的名字,如:Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", "tonsonmiao").build();
因为如果设置clustername后,容器会在添加transportaddress时,从集群名为tonsonmiao里查找是否有要设置的这个IP和端口,此时肯定找不到,所以会报这个错。
将这个重命名给去掉即可。
评论
1 楼
x_looking
2019-04-25
Client client = new TransportClient(Settings.empty).addTransportAddress(new InetSocketTransportAddress("172.16.2.13", 9300))
问题2 正解 ,空的settings 也会报这个错
问题2 正解 ,空的settings 也会报这个错
发表评论
-
使用 Scripted Metric Aggregation 遇到的问题
2016-02-19 14:12 2404使用Scripted Metric Aggregation进行 ... -
ElasticSearch性能优化策略
2016-02-17 19:42 3489ElasticSearch性能优化主要分为4个方面的优化。 一 ... -
Elasticsearch 数据建模 - 处理关联关系
2016-02-17 14:40 1022数据建模(Modeling Your Data ... -
数据类型转换错误
2016-02-15 18:28 1556异常: Invalid shift value (64) in ... -
elasticsearch 排序异常,关键字冲突
2016-02-03 12:35 5806org.elasticsearch.action.search ... -
ElasticSearch不同类型下同名字段排序错误
2016-02-03 11:18 1896虽然之前知道elasticsearch不同类型下同名字段要慎用 ... -
ElasticSearch immense term错误
2016-02-02 19:07 2570在使用ElasticSearch的过程中遇到了一个immens ... -
routing实例1
2015-09-21 18:51 0package com.eg.part1; import j ... -
routing实例
2015-09-21 18:49 0创建索引: PUT /useraudit_v1 创建索引别名: ... -
elasticsearch 精确,模糊查询实例
2015-09-19 23:55 62518实例 http://www.bubuko.com/infode ... -
elasticsearch java调用实例
2015-09-19 23:55 3499http://outofmemory.cn/code-snip ... -
[维护]Elasticsearch零停机时间更新索引配置或迁移索引
2015-09-18 10:16 751另外一篇文章:http://blog.csdn.net/dm_ ... -
elasticsearch 的mapping定义
2015-09-18 10:16 1165elasticsearch 的mapping 例子一: 订单 ... -
ElasticSearch基础杂烩-配置-索引-优化
2015-09-19 23:56 601http://blog.csdn.net/huwei2003/ ... -
Elasticsearch安装中文分词插件ik
2015-09-18 10:15 1987安装步骤: 1、到github ... -
ElasticSearch的各种服务的URL
2015-09-18 10:15 492前言 elasticsearch 将各种功能、配置、服务都以A ... -
ElasticSearch集群搭建
2015-09-19 23:56 541http://www.linuxidc.com/Linux/2 ... -
elasticsearch 配置
2015-09-18 10:16 665elasticsearch.conf 主要是设置一些java运 ... -
elasticsearch中文分词集成
2015-09-17 09:35 565elasticsearch官方只提供smartcn这个中文分词 ... -
elasticsearch的Mapping定义
2015-09-17 09:35 1369Mapping,就是对索引库中 ...
相关推荐
ES常见问题汇总ELK技术栈等相关问题
elasticsearch 下载后解压,选择自己需要的版本 进在解压,进入bin 启动 es
使用springboot集成了elasticsearch,封装了常用api,并使用自定义注解创建mapping,简化开发,开箱即用。注:使用的是elasticsearch 5.x版本
es支持一下long, integer, short, byte, double, float, half_float, scaled_float常见的数字类型。 示例 #给example索引添加字段映射,默认docs类型 PUT example/docs/_mapping { properties: { id:{ type:long...
elasticsearch安装详解,配置过程详解,常见报错解决办法总结,启动过程详解,基本入门指南
elasticsearch,ElasticSearch搜索引擎常见面试题总结
ES常见启动报错解决办法汇总
拼音分词在日常生活中其实很常见,也许你每天都...然后在elasticsearch-5.6.4/plugins目录下新建一个文件夹pinyin,把elasticsearch-analysis-ik-5.6.4.zip解压后的文件拷贝到elasticsearch-5.6.4/plugins/pinyin目录下
下面小编就为大家分享一篇基于Elasticsearch5.4的常见问题总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
介绍了Linux如何安装配置elasticsearch6,并附上常见错误解决方案。 (1)搜索引擎原理介绍 (2)安装elasticsearch (3)启动elasticsearch
对于日志来说,最常见的需求就是收集、存储、查询、展示,开源社区正好有相对应的开源项目:logstash(收集)、elasticsearch(存储+搜索)、kibana(展示),我们将这三个组合起来的技术称之为ELKStack,所以说ELK...
对于日志来说,最常见的需求就是收集、存储、查询、展示,开源社区正好有相对应的开源项目:logstash(收集)、elasticsearch(存储+搜索)、kibana(展示),我们将这三个组合起来的技术称之为ELKStack,所以说ELK...
es5.3.2热词、停用词、同义词词典,包括插件压缩包,插件源码,远程词典服务端示例,配置说明等
该项目是基于SpringBoot2.x+Shiro+Redis+ElasticSearch实现的博客系统。 功能介绍 本博客系统基于 SpringBoot 2.x ,支持快速开发,部署,采用内置服务器 undertow (抛弃 tomcat)。 数据库采用常见关系型数据库 ...
elasticsearch-head插件安装包,node8.11版本tar包,ES启动异常常见记录。
14-4 Filebeat常见架构及ingest_node介绍.avi 14-5 Filebeat_Module简介.avi 15-1 -简介.avi 15-2 -Module简介.avi 15-3 -实战.mp4.avi 16-1 1-简介(1).avi 16-1 1-简介(1).avi.baiduyun.downloading 16-1 1-简介....
使用ElasticSearch实现全文检索是一种常见且高效的方式。下面是详细的技术实践和说明: 安装和配置ElasticSearch: 首先,需要在服务器上安装ElasticSearch,并确保其正常运行。 然后,进行相关配置,如集群名称、...
全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 Elastic)是目前全文搜索引擎的首选。 它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。