数据备份是一个必须要考虑的问题,官网提供了 snapshot 接口来备份和恢复数据. 先来看看官方说明: 如果ES是集群,那么需要使用共享存储,支持的存储有: a.shared file system b.S3 c.HDFS 我使用的是第一种,NFS共享文件系统.这里要说一下权限问题,ES一般是使用 elasticsearch 用户启动的,要保证共享目录对 elasticsearch 用户有读写权限,要不然创建仓库和快照的时候会报访问拒绝500错误. 在nfs-server上导出共享目录的权限配…
如果ES是集群,那么需要使用共享存储,支持的存储有:a.shared file systemb.S3c.HDFS 我使用的是第一种,NFS共享文件系统.这里要说一下权限问题,ES一般是使用 elasticsearch 用户启动的,要保证共享目录对 elasticsearch 用户有读写权限,要不然创建仓库和快照的时候会报访问拒绝500错误. 在nfs-server上导出共享目录的权限配置,这里将所有连接用户都压缩为root权限: # vim /etc/exports /data02/es 192…
转载:http://blog.csdn.net/napoay/article/details/51707023 ElasticSearch JAVA API官网文档:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-docs-index.html 目录: 一.生成JSON 1.1手写方式生成 1.2使用集合 1.3使用JACKSON序列化 1.4使用ElasticSearch 帮助类 二.创建索引…
接口 什么是接口? 接口代表一种能力,和抽象类类似但比抽象类的抽象程度更高! 接口的定义: public interface IEat//定义一个接口 { void Eat(string food);//为该接口定义一种能力 } 接口的定义 从上边的例子中我们可以看到,接口中的方法是没有方法体的甚至连访问修饰符都没有.而且在接口中只能有方法.属性.索引器及事件! 接口的使用: public class Dog:IEat //Dog类实现IEat接口 { //Dog类实现IEat接口的Eat方法…
原文:ElasticSearch 7.x 默认不在支持指定索引类型 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u014646662/article/details/94718834 ElasticSearch 7.x 默认不在支持指定索引类型 在elasticsearch7.x上执行: put es_test { "settings":{ "number_of_s…
环境:mac   使用brew 安装elasticsearch   1.在 /usr/local/etc/elasticsearch/elasticsearch.yml 文件中配置快照地址     path.repo: ["/data/backups/my_backup"]   2.重启elasticsearch 3.注册仓库:curl -XPUT 'http://localhost:9200/_snapshot/my_backup' -d '{     "type"…
snapshot其实就是一组metadata信息的集合,它可以让管理员将表恢复到以前的一个状态.snapshot并不是一份拷贝,它只是一个文件名的列表,并不拷贝数据.一个全的snapshot恢复以为着你可以回滚到原来的表schema和创建snapshot之前的数据. 应用场景: 1获取:该操作尝试从指定的表中获取一个snapshot.该操作在regions作balancing,split或者merge等迁移工作的时候可能会失败.    2拷贝:该操作用指定snapshot的schema和数据来创…
Elasticsearch(5)--- 基本命令 这篇博客的命令分为ES集群相关命令,索引CRUD命令,文档CRUD命令.这里不包括Query查询命令,它单独写一篇博客. 一.ES集群相关命令 ES集群相关命令主要是_cat命令,所以这里详细讲解下该命令. 1._cat命令 _cat系列提供了一系列查询Elasticsearch集群状态的接口. /_cat/allocation #查看单节点的shard分配整体情况 /_cat/shards #查看各shard的详细情况 /_cat/shards…
前面我们感觉ES就想是一个nosql数据库,支持Free Schema. 接触过Lucene.solr的同学这时可能会思考一个问题——怎么定义document中的field?store.index.analyzer等属性如何配置? 这时可以了解下ES中的Mapping. [reference] http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping.html#mapping Mapping is…
1.解压https://github.com/medcl/esm-abandonedhttps://github.com/medcl/esm-abandoned/releases tar xf linux64.tar.gz 1.备份escd /root/bin/linux64/./esm -s http://10.33.8.103:9201 -x "petition_data" -b 5 --count=5000 --sliced_scroll_size=10 --refresh -o…
https://www.elastic.co/cn/blog/managing-time-based-indices-efficiently Anybody who uses Elasticsearch for indexing time-based data such as log events is accustomed to the index-per-day pattern: use an index name derived from the timestamp of the logg…
一.Elasticsearch单机安装 1.将es安装包传到服务器上 这是安装包 这里我是用的是WinSCP上传工具,上传到/home/plugins文件下. 进入Xshell,验证一下是否上传成功. 2.创建es目录 mkdir -p /usr/local/es(es1,es2,es3暂时不要安装,确保第一步es下面目录是空的,由于已经安装过,这三个文件留着了) 2.解压文件至 es 目录 tar -zxvf /home/plugins/elasticsearch-2.4.5.tar.gz -…
目录 前言 为什么全文索引不使用 B+ 树进行存储 全文检索 正排索引 倒排索引 倒排索引如何存储数据 FOR 压缩 RBM 压缩 倒排索引如何存储 字典树(Tria Tree) FST FSM 构建 FST 总结 前言 索引可能大家都不陌生,在用关系型数据库时,一些频繁用作查询条件的字段我们都会去建立索引来提升查询效率.在关系型数据库中,我们一般都采用 B 树索引进行存储,所以 B 树索引也是我们接触比较多的一种索引数据结构,然而在 es 中,进行全文搜索的时候却并没有选择使用 B 树 索引,…
GET _cat/nodes GET _cat/health GET _cat/shards GET http://10.37.84.124:9200/secisland?pretty { "settings":{ "number_of_shards":5, "number_of_replicas":1 } } GET http://10.37.84.124:9200/_cat/indices?v&index=secisland PUT…
1.为什么要重建索引? 总结,一个type下的mapping中的filed不能被修改,所以如果需要修改,则需要重建索引 2.怎么zero time重建索引? 一个field的设置是不能被修改的,如果要修改一个Field,那么应该重新按照新的mapping,建立一个index,然后将数据批量查询出来,重新用bulk api写入index中 批量查询的时候,建议采用scroll api,并且采用多线程并发的方式来reindex数据,每次scoll就查询指定日期的一段数据,交给一个线程即可. 过程:…
常见的数据库都会提供备份的机制,以解决在数据库无法使用的情况下,可以开启新的实例,然后通过备份来恢复数据减少损失.虽然 Elasticsearch 有良好的容灾性,但由于以下原因,其依然需要备份机制. 数据灾备.在整个集群无法正常工作时,可以及时从备份中恢复数据. 归档数据.随着数据的积累,比如日志类的数据,集群的存储压力会越来越大,不管是内存还是磁盘都要承担数据增多带来的压力,此时我们往往会选择只保留最近一段时间的数据,比如1个月,而将1个月之前的数据删除.如果你不想删除这些数据,以备后续有查…
Elasticsearch提供了replica解决方案,它可以帮我们解决了如果有一个或多个node失败了,那么我们的数据还是可以保证完整的情况,并且搜索还可以继续进行.但是,有一种情况是我们的所有的node,或者有一部分node失败,可能会造成我们的数据的丢失.也就是说replca不能提供一种灾难性的保护机制.我们需要一种完整的备份机制. Snapshot及Restore 在Elastic里,我们提供了一个叫做snapshot及restore API的接口.使您可以使用数据和状态快照备份您的El…
工作步骤: 1:建立备份快照数据挂载点,即共享文件目录(Shared Filesystem): 2:建立快照仓储repository: 3:建立snapshot快照备份: 4:恢复snapshot快照数据: 1:建立数据挂载点 1)ES所有节点安装sshfs,可通过yum源安装,依赖epel: 2)安装sshfs后,规划共享目录挂载点,并确定目标挂载点,注意这里要为每个节点的共享目录分配读写权限,如不确定,直接chmod 777 -共享目录路径: 3)通过如下指令挂载共享目录至目标主机路径: #…
elasticsearch数据备份还原 1.在浏览器中运行http://XXX.XXX.XXX.XXX:9200/_flush,确保索引数据能保存到硬盘中. 2.原数据的备份.主要是elasticsearch数据目录下的nodes目录的备份.nodes目录为索引数据目录. 3.将原集群中的每个elasticsearch节点下的data目录拷贝至新的elasticsearch数据目录下. 4 利用快照来备份还原. 下面是备份及还原的脚本,分别存成 esback.sh,esrestore.sh,并…
快照备份 1.创建文件仓库 1.1 在$ELASTICSEARCH_HOME/config/elasticsearch.yaml中增加配置 #这个路径elasticsearch必须有权限访问,这个路径是所有快照仓库的根路径 path.repo: your_path 1.2 调用rest api // nlp_defect是你仓库的名称 put url/_snapshot/nlp_defect { "type": "fs", "settings":…
非原创,只是留作自己查询使用,转自http://keenwon.com/1393.html Elasticsearch的备份和恢复 备份 Elasticsearch的一大特点就是使用简单,api也比较强大,备份也不例外.简单来说,备份分两步:1.创建一个仓库.2.备份指定索引.下面一步一步来: 1.创建一个仓库(creating the repository) 假如共享文件存储介质挂载在/mount/backups/my_backup目录下,需要在elasticsearch.yml添加如下配置:…
前言 生产环境中运行的组件,只要有数据存储,定时备份.灾难恢复是必修课,mysql数据库的备份方案已经非常成熟,Elasticsearch也同样有成熟的数据备份.恢复方案,我们来了解一下. 概要 本篇介绍Elasticsearch生产集群数据的数据备份.恢复和升级的常规操作. curl命令 curl是Linux操作的必备工具,Elasticsearch生产环境的搭建,不能保证都能使用kibana访问到,而Elasticsearch Restful API都可以使用curl工具来完成访问. 使用c…
转载自:http://wenku.baidu.com/link?url=cbioiMKsfrxlzrJmoUMaztbrTelkE0FQ8F9qUHX7sa9va-BkkL4amvzCCAKg2hBv5ZmYL_ERp3Wprd1jVxG-333s6tCJn2LGqCAvFmJ6dXC Logical VolumeManager (LVM)提供了对任意一个LogicalVolume(LV)做“快照”(snapshot)的功能,以此来获得一个分区的状态一致性备份. 在某一个状态下做备份的时候,可能…
1.背景: 最近公司为了适应业务的发展,利用elasticsearch搜索引擎搭建了两个节点.为了防止数据丢失的特殊情况,需要定时做数据备份,而由于elasticsearch为两个节点分别在不同的服务器ip,即需要创建共享文件系统,也就是大家都能访问的一个共享文件夹. (说明:linux系统使用centos 7) 2.内容: 1)创建共享文件 执行下面的命令 yum -y install epel-release # 安装epel 源码 yum -y install fuse-sshfs # 安…
备份脚本 es_backup.sh : #!/bin/bash#备份昨天数据,删除30天前索引 host=`hostname`address="xxx@xxx.com" es_user=$1 es_passwd=$2 #获取昨天日期(备份使用) date_yesterday=`date -d "-1 day" +%Y.%m.%d` #获取当前时间戳 date_now=`date +%s` #获取一个月前的日期 date_month_ago=`date -d@$[ $…
vim /etc/elasticsearch/elasticsearch.yml path.repo: ["/data/backups/es_backup"] #备份目录,根据自己情况进行填写 systemctl restart elasticsearch.service mkdir -pv /data/backups/es_backup /data/backups/es_backup chown elasticsearch:elasticsearch /data/backups/es…
文/朱季谦 目录 一.Elasticdump工具介绍 二.Elasticdump工具安装 三.Elasticdump工具使用 最近在开发当中做了一些涉及到Elasticsearch映射结构及数据导出导入的工作,怕以后会把这过程忘记,可谓好记性不如烂笔头,故而记录成一篇博文. 玩Elasticsearch的童鞋大概都会遇到这样一个问题,如何快速地将Elasticsearch里的索引结构映射和对应数据快速地进行备份和数据还原. 这时,就可以通过Elasticsearch的导入导出工具Elasticd…
参考:http://blog.csdn.net/wzhg0508/article/details/52063676 Elasticsearch 5.0 简介(medcl微信直播实录) 大家好,非常高兴能在这里给大家分享,感谢InfoQ提供的这个微信的平台,首先简单自我介绍一下,我叫曾勇,是Elastic的工程师. Elastic将在今年秋季的时候发布一个Elasticsearch V5.0的大版本,这次的微信分享将给大家介绍一下5.0版里面的一些新的特性和改进. 5.0? 天啦噜,你是不是觉得版…
其实,elasticsearch5.x 和 elasticsearch2.x 并不区别很大. 是因为,ELK里之前版本各种很混乱,直接升级到5.0了. 其实,elasticsearch5.x 按理来说是elasticsearch3.x,只是为了跟随ELK整体版本的统一.   下面给大家介绍一下 5.0 版里面的一些新的特性和改进 5.0? 天啦噜,你是不是觉得版本跳的太快了. 好吧,先来说说背后的原因吧. 相信大家都听说 ELK 吧,是 Elasticsearch . Logstash . Ki…
近期由于elasticsearch的版本升级,需要研究下elasticsearch的快照(snapshot)和恢复(restore)功能.   先说下背景,目前环境采用的是elasticsearch1.0版本,如果升级2.2版本,数据必须进行迁移,看官方文档给的建议是采用snapshot和restore的api操作.   同时说下elasticsearch2.2版本的启动不可以采用root账号,必须建立单独的账号才可以启动,否则会报以下错误 Exception in thread "main&q…