elasticsearch2.4升级elasticsearch6.2心得

elasticsearch2.4升级elasticsearch6.2心得

服务端部分:

一、升级前准备

jdk1.8+;

二、安装步骤

  1. 下载地址
    目前最高版本6.4,谨慎起见目前使用的是6.4之前最新的一个小版本6.3

    https://www.elastic.co/guide/en/elasticsearch/reference/6.3/parent-join.html

  2. 创建elasticsearch用户和用户组(elasticsearch为了安全起见禁止了root操作权限)
  3. tar -zxvf elasticsearch-6.3.2.tar.gz
  4. 创建 data和logs目录(为后面的数据存储和日志存储的目录,所有创建的目录最后都必须所属elasticsearch用户和 用户组,不然会报没有写的权限错误) elasticsearch对系统每个进程最大同时打开文件数和进程可以拥有的VMA(虚拟内存区域)的数量有要求需要修改以下 两个文件 /etc/security/limits.conf soft nproc 65536 hard nproc 65536 /etc/sysctl.conf(修改完后需要执行sysctl -p 使之生效) vm.max_map_count=262144
  5. 修改配置文件
    # 集群的名字
    cluster.name: cunjk
    # 节点名字
    node.name: node-1
    # 数据存储目录(刚刚我们创建的目录的绝对地址)
    path.data: /opt/elasticsearch/data
    # 日志目录
    path.logs: /opt/elasticsearch/logs
    #本机的ip地址
    network.host: xxx.xxx.x.xxx
    #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
    discovery.zen.ping.unicast.hosts: ["xxx.xxx.x.xxx]
    # 设置节点间交互的tcp端口(集群),(默认9300)
    transport.tcp.port: 9300
    # 监听端口(默认)
    http.port: 9200
    # 增加参数,使head插件可以访问es
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    # 开启内联脚本
    script.allowed_types: inline

三、注意事项 启动的时候必须使用elasticsearch用户,且安装的elasticsearch先关文件必须是elasticsearch的用户和用户组所属权限

elasticsearch是根据cluster.name来判别集群的,如果服务器上有多个集群必须区分

elasticsearch集群启动必须先启动主节点

代码部分:

一、pom依赖

  1. lucene依赖7以上,elasticsearch为选定的6.x版本,jdk1.8+

二、API

  1. 5.x以上废弃父子文档关系,改为使用join连接详见文档https://www.elastic.co/guide/en/elasticsearch/reference/6.3/parent-join.html
{
    "settings": {
        "number_of_shards": 3,
        "number_of_replicas": 0
    },
    "mappings": {
        "_doc": {
          "properties": {
            "t_join_field": {
              "type": "join",
              "relations": {
                "account": "drug_sale"
              }
            }
          }
        }
      }
 }
  1. javaAPI参照 https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/index.html
  2. restfulAPI参照 https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html

三、应用部分值得注意的重要更改

  1. 创建连接客户端已取消TransportClient.builder()直接构建改为更安全的PreBuiltTransportClient()构建
  2. 返回的field信息已不支持addField方法,API入口仍然保留但已弃用,github源码声明会在更高的版本完全弃用
  3. join结构的父子关系不在使用parent(parent_id)指定,理由同addField,此处需借鉴restul接口,直接声明json串
  4. 5.x以后restful的调用需要声明请求类型 请求需要加上
    -H "Content-Type:application/json"

    例如  curl -X GET  -H "Content-Type:application/json" ‘http://xxx.xxx.x.xxx:9200/xxxx/_search?pretty‘ -d
         ‘{"query": {"has_child": {"type": "drug_sale","query": {"term": {"card_id": "80048540"}}}},"_source":["card_id","name"]}‘
  1. 单次最大查询量,创建索引后需执行,不然会影响滚动查询和全量查询(暂未找到对应配置)
    curl -XPUT -H "Content-Type:application/json" ‘http://xxx.xxx.xx.xxx:9200/_all/_settings?preserve_existing=true‘ -d ‘{"index.max_result_window" : "30000"}‘

其他聚合及删除查询API的更改不再赘述

较与版本2.4的比较

一、速度上有了提升,尤其是删除方面6比2多了指定查询删除,在elasticsearch2.4时只能先查后删进行滚动删除比较影响数据更新的速度,6.xz之后的指定删除功能速度提高了好几倍,这样大大的提高了需要删除来进行更新的功能 其次在直接更新的速度上6较与2也有提升

二、在聚合查询和大数据量查询上,elasticsearch6.x 的Sliced Scroll的并行特性可以加快大数据量或需要大量筛查的数据的速度

升级心得

elasticsearch6.3.2的升级和测试持续了三周,在升级过程中遇到一些坑,由于elasticsearch官网对javaAPI的支持并不友好,主要还是restful接口的 描述上述标注的地方有的并未写在文档中,需要去javaAPI翻查源代码对比restful接口调试elasticsearch官网对javaAPI的支持并不全,优先功能建议先 调试restful接口,然后翻查源码,javaAPI的底层仍是调用的restful接口

原文地址:https://www.cnblogs.com/blablablabla/p/9646565.html

时间: 2024-10-04 02:05:38

elasticsearch2.4升级elasticsearch6.2心得的相关文章

吉日嘎拉C#快速开发平台V4.0到V4.2升级记

目前我用的版本是4.0的,也有近2年没更新了,狠了狠心升级一下,没想到真的行动起来,也没那么难! 用了3天时间,将吉日嘎拉的代码升级到了4.2版本,并让原来的DotNet.WebApplication正常运行起来,比料想的顺利.这里简单记录一下升级中的心得. 使用到的工具: 1.BeyondCompare 试用版 - 比较程序文件 2.SQLDelta 14天试用版 - 比较数据库表结构变化(及数据变化) 3.VS2010 - 保证升级后WebApplication好用 4.MSSQL 2008

《我叫MT》橙卡技能升级方法一览

有很多玩家在新版本更新后对于<我叫MT>的橙卡技能怎样升级很困惑,今天小编带来一篇详细的橙卡升级攻略: 绿云应用的小编提示你:橙卡不在副本掉落,获得的方法是通过紫卡升级而成的.橙卡是目前最强的英雄. 首先要介绍一下橙卡的主动技能: 1.每张橙卡分为3种天赋,每种天赋带有3种被动技能,例如:方砖的飓风雪.天外陨石.秘法飞弹;沐丝的神圣治疗.抚慰伤害.灵魂诅咒等等.目前开放的是MT.方砖.沐丝三张橙色卡牌(以后版本会逐渐开放其他的英雄) 2.橙卡的主动技能为10级,没有副本可以产出技能,只能通过技

读“日请求亿级的QQ会员AMS平台PHP7升级实践”博客心得笔记

因原文章出自CSDN未经允许不可转载,故只记录下大神们的心得和最值得收藏借鉴的地方,供日后参考,PHP7版本尚未普及,对于前辈们为了性能提升有勇气探索新技术敢于尝螃蟹的精神十分敬佩,倍受鼓舞. PHP7升级面临的风险和挑战 对于一个已经现网在线的大型公共Web服务来说,基础公共软件升级,通常是一件吃力不讨好的工作,做得好,不一定被大家感知到,但是,升级出了问题,则需要承担比较重的责任.为了尽量减少升级的风险,必须先弄清楚我们的升级存在挑战和风险. 以下是前辈们整理的升级挑战和风险列表: (1)A

React Native升级指南|v0.40+升级适配经验与心得

尊重版权,未经授权不得转载 本文出自:http://blog.csdn.net/fengyuzhengfan/article/details/54585899 React Native作为一个有上千开发者参与的开源项目,自从2015年3月27日第一版发布以来到现在已经有147次版本发布了,平均起来几乎每周都会有新的版本发布.随着一次次版本的迭代,React Native也逐渐稳定,版本发布频率保持在了每一到两周一次.新版本不停的迭代对于React Native开发者来说,及时升级React Na

大叔教你快速升级 老区新手升级心得详解

先说说什么是老区.玩神武有点历史的人应该明白,神武分3种区:老区.新区.测试区.新区应该一目了然吧,不多说.在这里先解释下测试区.测试区,是专门用来实验游戏新设计和检测游戏BUG(即程序漏洞)的服务器,出于对节省游戏开发成本和互动促销的考虑,绝大多数测试区都对公众开放,同时具备一般服务-器的游戏功能. 由此可见,测试区相比较负担更重,这就不难理解为什么测试区有时会出现登录排队.网络延迟等现象.很多玩家不知道神武的测试区,其实很简单!每周五上午是服务.器更新维护的时间,大家在进入游戏以后登录游戏之

《无双剑姬》新手攻略 首日升级心得

<无双剑姬>现正火热开启终极测试中,相信公测也指日可待了.那么,当我们玩家刚进入游戏,应该注意什么呢?今天就带来九游玩家纵横-会长か时光薄凉分享的心得体会,希望能帮助更多新手玩家. 前10级跟着任务走,主线刷完就刷支线,任务升级应该是最快的.4级就可以装备新技能,以及升级技能了,一定不要忘记装配新技能,否则打起来畅快感不足.能升技能的时候也马上升,刚开始圣能不会不够的. 5级的时候可以强化装备了,先强武器和戒指,这两个部位加攻击的.任务给的蓝色装备应该可以强满,其他部位不要着急,特别蓝色装备,

Elasticsearch6.13 升级6.24 单节点停机升级

Elasticsearch6.x 升级6.y 是支持滚动升级的,目前我们测试环境只有一个节点只能停机升级了 准备工作 禁用分片分配 curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d' { "persistent": { "cluster.routing.allocation.enable": "none"

ElasticSearch2.3/2.4升级到ElasticSearch5.0

参考文档(排名不分先后) https://www.elastic.co/guide/en/elasticsearch/reference/5.0/setup-upgrade.html https://github.com/elastic/elasticsearch-migration/ http://www.infoq.com/cn/news/2016/08/Elasticsearch-5-0-Elastic http://hnr520.blog.51cto.com/4484939/186703

服务器升级心得

三年前的前的时候,心血来潮到阿里云买了一台服务器,搭建了一个站点,目的是为了挂一个自己的个人主页,当时仅有一点PHP基础知识的我,居然异想天开的想去打造一个属于自己的专属站点,想想当初的年少无知,现在还觉得有点后怕,不过思想就是这样,你的野心越大,你获取的就更多. 由于当时没有什么计算机知识储备,所以很傻瓜式的用了一个不知道叫什么名字的lnmp一键安装包,版本忘记了,不过PHP是5.5.12,mysql是5.1.73,nginx是1.4.4的版本,作为一个强迫症的患者,总是强迫性质的想要升到最高