【实战】ElasticSearch的备份与恢复
早先时候我们讲了关于HDFS的备份方法,作为Hadoop在搜索层级的演进应用,Elasticsearch可以接入多种异构的数据平台(结构化/非结构化,流式/批量的),加之有丰富的管理工具,在很短时间内迅速获得了很多有EDW需求的公司的青睐。
在Elasticsearch的架构中,由Logstash负责采集客户端数据(类似于Hadoop生态系统中的Flume,当然Flume和Hadoop也可以直接作为Elasticsearch的数据源),再由Elasticsearch做即时分析与处理,最后交由基于现代化HTML5的web应用-Kibana将分析结果作可视化展现。
说到Elasticsearch的用户,刚被微软以75亿美元天价收购的Github就是一个典型案例,此外还有Facebook、WordPress、stackoverflow等超大型社交类应用及社区。Elasticsearch不仅给这些用户提供了冗余、可扩展的数据系统,并且通过实时索引,有效地将原先长达几十分钟的搜索体验缩短至秒级。通过轻型的Elasticsearch-Hadoop库可以与现有的Hadoop平台无缝对接,并且可以实现数据的双向传输。
Elasticsearch的安装也很方便,我们知道在Mac系统上brew是用来安装程序的指令,在安装完Java(运行“brew cask install java”指令)之后,通过brew install <路径>/<安装文件>即可完成对Elasticsearch的安装;装完之后通过brew info elasticsearch可以检查版本及配置信息。
既然要备份Elasticsearch,我们先来创建一些数据,比如在索引nameindex的组names下的数据名id1下创建以下数据:
curl -XPOST 'localhost:9200/nameindex/names/id1' -d '
{
"name":"Johnnie"
"email_address":"johnnie.li@eoitek.com"
}
当然Elasticsearch有自己的管理接口可以通过Web界面操作,只需填入数据路径和数据内容即可。
填完之后通过GET语句可以查询(命令行:curl -XGET)
这条记录是建立在数据集id1下的,我们也可以建立没有ID的记录。
这个时候系统会自动为其创建ID。
在每个Elasticsearch的配置文件(/config/elasticsearch.yml)中都有定义repository的路径。
Elasticsearch的备份方式与Hadoop类似,也是采用快照(Snapshot)形式,你可以单独为某个索引、多个索引或整个集群做快照。鉴于我们刚刚在索引nameindex下面创建了些记录,那我们就来备份这条索引,第一步先决定备份参数:
用GET方式检查下备份配置是否创建完成。
以上是ES备份的逻辑路径,根据elasticsearch.yml里的设置,我们已经在path.repo的路径下创建了同名的物理目录。
接下去就是执行备份,同样使用PUT方式
备份完成之后,在逻辑路径下会记录备份的状态。可以用curl localhost:9200/_snapshot/nameindexbackup/10jul2018查看。同时,我们在物理路径下也看到了元数据及快照文件已经生成。
在数据恢复之前,我们先把nameindex下的数据都删除。
检查发现目标逻辑路径下已经没有任何数据了。
恢复的命令是curl -XPOST localhost:9200/_snapshot/nameindexbackup/10jul2018/_restore。检查后发现我们的数据已经恢复了。
UneedR∣大数据与机器学习园地
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
下一代智能数据工厂,阿里云发布全新DataWorks
大数据的开发能力已经成为企业的核心竞争力之一, 企业对数据资产的管理、加工、利用的诉求也越来越强烈。 9月5日,阿里云发布了DataWorks V2版本, 可提升数据开发的效率并简化数据操作,为企业提供了安全可靠的一站式大数据智能云研发平台。 众所周知,企业在构建自有大数据体系开展研发工作时,通常面临着诸多难题,例如技术栈臃肿导致上手门槛高、系统维护成本高等问题,且数据质量难以保证。此次发布的阿里云DataWorks V2版是全球唯一支持在web页面上即可完成数据研发全流程的大数据开发平台,可以有效帮助企业规避上述问题。 据介绍,阿里巴巴集团拥有完善的大数据计算基础能力,如离线计算引擎MaxCompute、流计算引擎Flink以及机器学习PAI平台。而DataWorks则是对上述基础能力整体进行了封装,并承担了大数据相关的技术流程与管理
- 下一篇
SparkStreaming+Kafka
摘自 : Spark踩坑记——Spark Streaming+Kafka SpringStreaming+Kafka 1.SpringStreaming+Kafka 接受数据和发送数据 (1)SparkStreaming 接受kafka方式 (2)Spark 发送数据至Kafka中 2.Spark streaming+Kafka调优 2.1 批处理时间设置 2.2 合理的Kafka拉取量 2.3 缓存反复使用的Dstream(RDD) 2.4 设置合理的GC 2.5 设置合理的CPU资源数 2.6设置合理的parallelism 2.7使用高性能的算子 SpringStreaming+Kafka 1.SpringStreaming+Kafka 接受数据和发送数据 (1)SparkStreaming 接受kafka方式 基于Received的方式 基于DirectKafkaStreaming DirectKafkaStreaming 相比较 ReceiverKafkaStreaming - 简化的并行:在Receiver的方式中我们提到创建多个Receiver之后利用union来合并成一...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Linux系统CentOS6、CentOS7手动修改IP地址