
ElasticSearch分布式查询
文章平均质量分 85
ElastciSearch集群配置,SolrCloud集群配置,Zookeeper 管理
Leon0204
这个作者很懒,什么都没留下…
展开
-
ElasticSearch 性能压榨优化-segment
本文的优化基于 ES 7.6.0 ,索引 主要集中在 TB级索引的查询写入优化分片的最佳平均大小是多少?分片的平均大小应在 几GB到几十GB之间。确定用例的最佳大小的最佳方法是使用您自己的数据和查询进行测试。此外,节点数 和 分片数目 应该设计成比例,这样有利于 分片 平均的 负载在 各个节点上,这样查询时产生的节点消耗将均衡 。副本的最佳数量是多少?副本的基原创 2020-10-12 16:08:57 · 2695 阅读 · 7 评论 -
倒排索引增量更新如何被实时检索?
正排索引与倒排索引索引的目的: 使根据 key 查询 value 的速度变快正排索引:Forward Index ,以一个对象的唯一ID 为Key 的哈希索引结构倒排索引:Inverted Index 根据具体内容,反过来查询文档 key ,根据内容(字典),查询对应的文档列表(记录列表)倒排索引的创建:1 文档唯一编号,排序,遍历文档2 解析文档,生成, <关键字,文档ID,关键字Index> (查询多个关键字时,可以比较多个关键字的位置)3 生成 关键字 对应的 (文原创 2020-05-14 11:26:45 · 1197 阅读 · 0 评论 -
初探——内存读写内核达到提权
起因:一个Ubuntu 16.04 提权漏洞的修复漏洞概况:这次的 EXP 在于Linux内核带有的eBPF bpf(2)系统调用中,当用户提供恶意BPF程序使eBPF验证器模块产生计算错误,导致任意内存读写问题。 非特权用户可以使用此漏洞获得权限提升。漏洞重现自己有很多Centos的服务器,唯一一台Ubuntu的还是4.4.0 -117的,所以向朋友借了一台服务器,刚刚好是4.3...原创 2018-03-19 18:09:18 · 2590 阅读 · 0 评论 -
kibana 的oom问题 JavaScript heap out of memory
Old space是 V8 托管(也称为垃圾收集)堆(即 JavaScript 对象所在的位置)中最大和最可配置的部分,而 --max-old-space-size 标志控制其最大大小。发现是 kibana前端 js 报的内存 oom 异常,通过网上资料发现node.js 的默认内存大小为1.4g ,那么问题就定位到修改node 的内存限制。总之,在具有 2GB 内存的机器上,我可能会将 --max-old-space-size 设置为大约 1.5GB 以留出一些内存用于其他用途并避免交换。原创 2023-03-21 10:35:47 · 1131 阅读 · 1 评论 -
3TB大小的ElasticSearch迁移数据量太大遇到的问题
本文记录最近迁移ES遇到的问题和解决办法,迁移的方式是从线上es scroll 导出到json,再想办法导入本地机房,可能迁移有其他的办法,不一定这种就是最好的,我这里选择 scroll 是因为各种限制,这样是最方便的,这里主要讨论的是scroll之后,遇到的问题。1 scroll 拉取就是基本的 scroll ,设置了10w行做一个单独的json文件,方便我后续的处理from utils.esd import ES_CLIENT, ES_CLIENT_LOCALfrom elasticsea.原创 2020-12-13 14:42:17 · 1191 阅读 · 0 评论 -
elasticsearch nested 增删改查
增PUT /precedent/_mapping{ "properties": { "clean_process": { "properties": { "stand": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256原创 2020-10-19 17:08:22 · 2050 阅读 · 1 评论 -
用 scroll 和 bulk 拉取和上传千万级 elastic 索引
最近遇到个需求,索引迁移,本来应该用es的reindex,不过由于业务限制等原因,没法使用,使用了 scroll 和 bulk 完成了迁移,记录代码scroll 拉取到csv文件from elasticsearch import Elasticsearchfrom elasticsearch import helpersimport timeimport json# 188 -> 线上class Get_es: def __init__(self): self原创 2020-06-13 16:38:41 · 705 阅读 · 1 评论 -
Elastic 分片设计及管理
分片设计Es分片水平扩展/rebalancing创建索引时,为索引设计的分片数,会自动分布在集群的节点上,当节点增加时,es也会自动进行分片的移动,这叫做 shard rebalancing多分片的好处:数据写入可以分散到多个机器上查询可以并行进行增加机器,可以no downtime 的水平扩展/分片的重新分配分片的设计与管理——分片是ES存储数据的地方,本质是一个lucene的索引,分片是ES机器实现水平扩展的最小单位,用她来存储数据必然会消耗系统的性能,如果存储的数据过原创 2020-06-11 15:17:46 · 1259 阅读 · 0 评论 -
ElasticSearch 集群搭建的几个坑
久违的又搭了一遍 3节点的es 。前后大概2小时。简单记录下这次遇到的老旧和新坑点Es 确实是需要 普通用户运行的,不用怀疑 root 行不行sysctl -w vm.max_map_count=262144 记得分配将 es 目录放到 普通用户home 目录防火墙配置端口访问 (集群之间用9300访问)systemctl start firewalldfirewall-cmd -...原创 2019-01-28 14:10:54 · 2028 阅读 · 0 评论 -
Elasticsearch 5.5.1 中文/拼音分词 亲测有效
所有不说明elastic 版本的博客都是耍流氓 。 ——某码农版本如题。配置测试流程如下:预备 删除 indexDELETE /index_name/{}创建一个 index_name 的 indexPUT /index_name/{ &quot;index&quot;: { &quot;analysis&quot;: { &quo原创 2018-05-21 20:00:04 · 2820 阅读 · 1 评论 -
Elastic-JavaApi SpringBoot布尔查询
最近在写Es的Java查询Api,发现从部署到Api没有很好的资料,所以整理记录一下,配置就不发了,直接分析代码和需求。Es复杂查询基于 SpringBoot + EsTransportClient需求分析这个查询的需求是,满足中文分词 与查询 标题和描述(同时满足),也可以 或查询 多组条件拼出来的 查询条件(满足一个或多个) 。比如:查询:同时满足黄色和好吃和产地为...原创 2018-07-04 17:01:24 · 944 阅读 · 0 评论 -
ElasticSearch 集群搭建和坑点
单节点版的部署参考 安装和使用 elasticSearch、LogStash、IK(一),分别在三台ip安装独立的 ES之后,进行集群配置集群配置系统参数设置添加非root用户,用于执行ES修改系统参数,ES运行的系统参数# 1 解决:切换到root用户,编辑limits.conf 添加类似如下内容vi /etc/security/limits.conf 添加如下内容...原创 2018-07-04 17:59:37 · 2469 阅读 · 0 评论 -
ElasticSearch 集群连接方法 Java
package com.ctpsp.custominfo.api.configuration;import org.elasticsearch.client.transport.TransportClient;import org.elasticsearch.common.network.InetAddresses;import org.elasticsearch.common.sett...原创 2018-07-06 13:06:38 · 6232 阅读 · 2 评论 -
ElasticSearch 设置索引、node、日志存储位置
好端端的突然 ElasticSearch 集群 的 节点2,3 两台机器一起 Down 掉,偏偏节点1没有挂掉。难道节点1 天生就比2和3要吊吗?查看日志后发现 low memory ,于是添加bootstrap.memory_lock: falsebootstrap.system_call_filter: false尝试删除索引,重新跑生成索引的 Python脚本 ,报错:caus...原创 2018-07-23 19:35:40 · 18425 阅读 · 0 评论 -
ElasticSearch集群开启X-Pack修改PreBuiltXPackTransportClient
ElasticSearch版本5.5.1,集群三台节点。 在节点1上安装x-packbin/elasticsearch-plugin install x-pack 可以看到node1启动时已经加载了 x-pack启动 kibana 发现 Auth failed 启动集群中的其他node节点也报错 ,无法加入集群。Caused by: org.elasticse...原创 2018-07-24 14:34:08 · 7167 阅读 · 4 评论 -
在Linux上搭建solr单机版
一次简单的Linux 上的 solr 部署,记录一下1 软件包准备如果你的部署环境 solr<=4 那么可以移步了,我只用过>5的,其中的差异本文没有介绍,本文只针对 solr>5。 我的环境: 1 Jdk8 2 tomcat8 3 solr7分别下载好,准备后面使用2 把 solr 部署到 tomcat 下刚刚的文件都上传,或者你 wegt ...原创 2018-04-17 18:06:51 · 832 阅读 · 0 评论 -
Sphinx 实现海量数据的快速查询
说到 Sphinx,就会想到:站内搜索,mysql优化,分词 等等有关搜索海量数据的需求,本文介绍了 sphinx的基本概念、安装、和一个联系动态语言实现大数据海量查询的实例。1. Sphinx的基本概念Sphinx 是一个 全文检索引擎。意图为其他应用提供 高速、低空间占用、高结果相关度 的全文搜索功能。Sphinx 可以非常容易的与 SQL 数据库和脚本语言集成。当前系统内置 MySQL 和 P原创 2017-05-22 10:37:32 · 98849 阅读 · 2 评论 -
Zookeeper 加 solr-cloud 实现Solr群集
真分布式zookeeper环境,非伪环境群集,附加solr集群环境下,ik分词的添加环境和下载包准备下载包Jdk8Tomcat8Solr7Zookeeper3.4.10环境zookeeper 最好是奇数节点的大于3台的服务器,我这里用到了两台服务器,实际上这样是有问题的,我后面会说到,然后节点是4个tomcat ,首先搭建 zookeeper 然后 部...原创 2018-04-18 18:06:24 · 1141 阅读 · 0 评论 -
Solr 集群配置 DataImportHandler 导入
修改zk集群配置如同前文 部署Zookeeper 加 solr-cloud 群集一 部署Zookeeper 加 solr-cloud 群集二 中 zk 统一管理集群 colelction 下所有 core 的方法,修改 一个solrhome 下的 conf 中的 下面三个文件 solrconfig.xml1 添加 mysql-input 的 lib 引用 <li...原创 2018-04-20 11:30:34 · 776 阅读 · 1 评论 -
分布式Solrcloud 下 Ik分词的部署
单机Solr Ik分词的部署和群集还是稍有不同的。这里我默认读者知道单机版的Ik部署方法了修改 zookeeper 的配置文件修改任意一个 zookeeper 节点 的 配置文件,在 </schema> 节点前添加 <fieldType name="text_ik" class="solr.TextField"> <analyze...原创 2018-04-18 18:37:33 · 967 阅读 · 0 评论 -
Elasticsearch 索引的全量/增量更新
当你的es 索引数据从mysql 全量导入之后,如何根据其他客户端改变索引数据源带来的变动来更新 es 索引数据呢。首先用 Python 全量生成 Elasticsearch 和 ik 初始的分词索引数据,增量更新索引实现如下:服务端(Python+redis-sub)# Python-redis 开启监听 'leon' 等待客户端推送消息,来增量更新es文档 #-*-原创 2018-02-07 10:38:51 · 12651 阅读 · 0 评论 -
ElasticSearch 布尔搜索
ElasticSearch Bool 查询布尔查询的三个查询子句:mustmust_notshould 规则: must 必须全部匹配; must_not 必须全部不匹配; should 默认无需匹配,当must 子句不存在时,至少匹配 should 一种。一个布尔查询的例子# 查询 `info` 索引 `full`类型 GET /info/full/_s...原创 2018-03-21 17:18:23 · 517 阅读 · 0 评论 -
安装和使用 elasticSearch、LogStash、IK(一)
ELK的安装和使用-ElasticSearchElasticSearch的安装ElasticSearch的使用使用 root 用户 执行使用普通用户执行测试es运行状态索引Index记录Documents分类Type新建和删除Index原文链接:https://www.leon0204.com/article/92.htmlELK的安装和使用原创 2018-01-08 17:49:48 · 776 阅读 · 0 评论 -
安装和使用 elasticSearch、LogStash、IK(二)
ELK的安装和使用-IK中文分词IK的安装安装 maven使用IK例子-IK使用新增记录查看删除更新数据查询 accountsperson_search 查询 account person type 的所有结果全文搜索逻辑运算原文链接:https://www.leon0204.com/article/93.htmlELK的安装和使用-IK原创 2018-01-08 18:18:58 · 738 阅读 · 0 评论 -
安装和使用 elasticSearch、LogStash、IK(三)
通过Logstash由MySQL向Elasticsearch导入数据-安装 logstash-input-jdbc 工具包安装安装 jdbc在logstash 执行目录下创建目录和两个conf 文件执行mysql 导入 jdbc 测试导入结果原文链接:https://www.leon0204.com/article/94.html通过Logstash由M原创 2018-01-08 18:42:43 · 3249 阅读 · 0 评论