es
春光静好
这个作者很懒,什么都没留下…
展开
-
10、es 常见问题
1、Caused by: org.elasticsearch.transport.RemoteTransportException: [node-1][172.20.44.8:9300][indices:data/read/search[phase/query]] Caused by: java.lang.IllegalArgumentException: Fielddata is disable...原创 2020-02-16 20:41:27 · 1199 阅读 · 0 评论 -
09、es 相关插件安装
1、kibana 下载安装1、下载wget https://artifacts.elastic.co/downloads/kibana/kibana-6.2.4-linux-x86_64.tar.gz2、解压 tar -zxvf kibana-6.2.4-linux-x86_64.tar.gz3、启动及检测ps -ef|grep kibanaps -ef|grep 5601...原创 2020-02-16 20:39:03 · 260 阅读 · 0 评论 -
08、es 进一步了解___e_性能优化_
2)_内部索引优化Elasticsearch 为了能快速找到某个 Term,先将所有的 Term 排个序,然后根据二分法查找 Term,时间复杂度为 logN,就像通过字典查找一样,这就是 Term Dictionary。现在再看起来,似乎和传统数据库通过 B-Tree 的方式类似。但是如果 Term 太多,Term Dictionary 也会很大,放内存不现实,于是有了 Term Inde...原创 2020-02-16 20:27:39 · 587 阅读 · 0 评论 -
08、es 进一步了解___d_机制原理_存储原理
上面介绍了在 ES 内部索引的写处理流程,这个流程是在 ES 的内存中执行的,数据被分配到特定的分片和副本上之后,最终是存储到磁盘上的,这样在断电的时候就不会丢失数据。具体的存储路径可在配置文件 …/config/elasticsearch.yml 中进行设置,默认存储在安装目录的 Data 文件夹下。建议不要使用默认值,因为若 ES 进行了升级,则有可能导致数据全部丢失:path.data...原创 2020-02-16 20:07:58 · 489 阅读 · 0 评论 -
08、es 进一步了解___d_机制原理_写索引原理
下图描述了 3 个节点的集群,共拥有 12 个分片,其中有 4 个主分片(S0、S1、S2、S3)和 8 个副本分片(R0、R1、R2、R3),每个主分片对应两个副本分片,节点 1 是主节点(Master 节点)负责整个集群的状态。写索引是只能写在主分片上,然后同步到副本分片。这里有四个主分片,一条数据 ES 是根据什么规则写到特定分片上的呢?这条索引数据为什么被写到 S0 上而不写到 S...原创 2020-02-16 19:27:15 · 356 阅读 · 0 评论 -
08、es 进一步了解___c_ES 的基本使用
在决定使用 Elasticsearch 的时候首先要考虑的是版本问题,Elasticsearch (排除 0.x 和 1.x)目前有如下常用的稳定的主版本:2.x,5.x,6.x,7.x(current)。你可能会发现没有 3.x 和 4.x,ES 从 2.4.6 直接跳到了 5.0.0。其实是为了 ELK(ElasticSearch,Logstash,Kibana)技术栈的版本统一,免的给用户...原创 2019-11-14 12:01:02 · 335 阅读 · 0 评论 -
08、es 进一步了解___b_ES 核心概念__4)映射(Mapping)
映射是用于定义 ES 对索引中字段的存储类型、分词方式和是否存储等信息,就像数据库中的 Schema ,描述了文档可能具有的字段或属性、每个字段的数据类型。只不过关系型数据库建表时必须指定字段类型,而 ES 对于字段类型可以不指定然后动态对字段类型猜测,也可以在创建索引时具体指定字段的类型。对字段类型根据数据格式自动识别的映射称之为动态映射(Dynamic Mapping),我们创建索引时具体...原创 2019-11-14 11:48:26 · 390 阅读 · 0 评论 -
08、es 进一步了解___b_ES 核心概念__3)副本(Replicas)
副本就是对分片的 Copy,每个主分片都有一个或多个副本分片,当主分片异常时,副本可以提供数据的查询等操作。主分片和对应的副本分片是不会在同一个节点上的,所以副本分片数的最大值是 N-1(其中 N 为节点数)。对文档的新建、索引和删除请求都是写操作,必须在主分片上面完成之后才能被复制到相关的副本分片。ES 为了提高写入的能力这个过程是并发写的,同时为了解决并发写的过程中数据冲突的问题,ES ...原创 2019-11-14 11:46:33 · 643 阅读 · 0 评论 -
08、es 进一步了解___b_ES 核心概念__2)分片(Shards)
ES 支持 PB 级全文搜索,当索引上的数据量太大的时候,ES 通过水平拆分的方式将一个索引上的数据拆分出来分配到不同的数据块上,拆分出来的数据库块称之为一个分片。这类似于 MySQL 的分库分表,只不过 MySQL 分库分表需要借助第三方组件而 ES 内部自身实现了此功能。在一个多分片的索引中写入数据时,通过路由来确定具体写入哪一个分片中,所以在创建索引的时候需要指定分片的数量,并且分片的数...原创 2019-11-14 11:41:01 · 294 阅读 · 0 评论 -
08、es 进一步了解___b_ES 核心概念__1)集群(Cluster)
ES 的集群搭建不需要依赖第三方协调管理组件,自身内部就实现了集群的管理功能。ES 集群由一个或多个 Elasticsearch 节点组成,每个节点配置相同的 cluster.name 即可加入集群,默认值为 “elasticsearch”。确保不同的环境中使用不同的集群名称,否则最终会导致节点加入错误的集群。一个 Elasticsearch 服务启动实例就是一个节点(Node)。节点通过 ...原创 2019-11-14 11:39:04 · 546 阅读 · 0 评论 -
08、es 进一步了解___b_ES 核心概念
ES 是使用 Java 编写的一种开源搜索引擎,它在内部使用 Lucene 做索引与搜索,通过对 Lucene 的封装,隐藏了 Lucene 的复杂性,取而代之的提供一套简单一致的 RESTful API。然而,Elasticsearch 不仅仅是 Lucene,并且也不仅仅只是一个全文搜索引擎。它可以被下面这样准确的形容:一个分布式的实时文档存储,每个字段可以被索引与搜索。一个分布式实时...原创 2019-11-14 11:34:27 · 299 阅读 · 0 评论 -
08、es 进一步了解____a_背景:Lucene
这种非结构化数据的处理需要依赖全文搜索,而目前市场上开放源代码的最好全文检索引擎工具包就属于 Apache 的 Lucene了。但是 Lucene 只是一个工具包,它不是一个完整的全文检索引擎。Lucene 的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。目前以 Lucene 为基础建立的开源可用全文搜索引擎主要...原创 2019-11-14 11:33:50 · 227 阅读 · 0 评论 -
08、es 进一步了解
参考:https://mp.weixin.qq.com/s/PIl9_1ogyKVDd0nxz8PhUw全文搜索引擎选ElasticSearch还是Solr?搞定Java垃圾回收,就这一篇!Elasticsearch如何做到亿级数据查询毫秒级返回?1、背景:Lucene2、ES 核心概念1)集群(Cluster)2)分片(Shards)3)副本(Replicas)4)映射(Ma...原创 2019-11-14 11:30:26 · 145 阅读 · 0 评论 -
07、es-sql
./bin/elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/tag/6.2.1.0/elasticsearch-sql-6.2.1.0.zip原创 2019-11-14 11:29:46 · 132 阅读 · 0 评论 -
06、es 重新授权
curl -H "Content-Type: application/json" -XPUT "http://localhost:9200/_license?acknowledge=true" -d @/Users/lxy/Downloads/license.json {"acknowledged":true,"license_status":"valid"}% ...原创 2019-11-14 11:28:51 · 344 阅读 · 0 评论 -
05、yellow to green
注意:非 集群环境不需要设置副本,以及切片数可以设置少点 5(或者更少,测试环境数量不多,切片需要在代码中设置,副本也可以,同时副本还可以在api 处设置,单机环境副本信息可以设置成0)连接的时候可以看能不能http://ip:9300 和 http://ip:9200 访问通,可能会存在 http 访问通,trnasport 访问不通的情况,如果不打印日志的话看不到报错信息,但是es 代码运...原创 2019-11-14 11:27:33 · 234 阅读 · 0 评论 -
04、es 写入优化
{"index": { "number_of_shards": "10", "translog": { "flush_threshold_size": "200MB", "durability": "async" }, "refresh_interval": "60s"}}“flush_threshold_si...原创 2019-11-14 11:24:02 · 163 阅读 · 0 评论 -
03、es启动问题
1、启动用户为非root 用户2、ERROR: [2] bootstrap checks failed[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536][2]: max virtual memory areas vm.max_map_co...原创 2019-11-14 11:22:41 · 242 阅读 · 0 评论 -
02、elasticsearch.yml
cluster.name: clusterNamenode.master: truenode.data: truenode.ingest: truehttp.cors.enabled: truehttp.cors.allow-origin: "*"http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETEhttp.co...原创 2019-11-14 11:19:52 · 221 阅读 · 0 评论 -
01、es 安装
https://www.elastic.co/downloads/elasticsearch1、下载wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.1.tar.gz或者从其他机器copyscp -r root@ip:/usr/local/elasticsearch-6.2.1.tar....原创 2019-11-14 11:18:21 · 130 阅读 · 0 评论 -
python elasticseach6.2.1. 和 elasticseach5.1.1 版本冲突问题
问题背景:同一个python 脚本项目同时处理elasticseach6.2.1. 和 elasticseach5.1.1中存储的数据 解决因为包冲突带来的问题解决思路:开一个python 虚拟环境python 安装虚拟环境:https://www.jianshu.com/p/4c898236cf35.3、创建虚拟环境mkvirtualenv es5附:切换虚拟环境:workon ...原创 2019-09-12 11:34:44 · 230 阅读 · 0 评论 -
ES安装启动常见问题
错误信息:1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]查看大小的设置:命令[root@host-172-16-xx-xx etc]# ulimit -Hn 65535或[root@host-172-16-32-38 etc]...原创 2018-10-12 14:17:46 · 1219 阅读 · 0 评论