logstash-input-jdbc学习

  ES(elasticsearch缩写)的一大优点就是开源,插件众多。所以扩展起来非常的方便,这也造成了它的生态系统越来越强大。这种开源分享的思想真是与天朝格格不入啊。国内的开源社区做了也很长时间,可是也没出现什么拿的出手的东西,可能只还有阿里比较注重分享一些。

  ES的查询速度非常快,搜索非常快。但是呢,我们的数据还是主要存在传统的关系型数据库中的。有没有什么办法可以将数据库中的数据实时同步到ES中呢。logstash就是这么一个东西。

Logstash 是一个开源的数据收集引擎,它具有备实时数据传输能力。它可以统一过滤来自不同源的数据,并按照开发者的制定的规范输出到目的地。

  安装好Logstash,再安装好logstash-input-jdbc插件,再安装好mysql-connector-java-6.0.6.jar插件就可以实时将mysql中的数据同步到ES中。安装过程参考:ElasticSearch学习笔记(三)logstash安装和logstash-input-jdbc插件

  logstash-input-jdbc可以配置实行增量同步还是实行全量同步,增量同步是基于时间还是基于某一个字段的变化值。可以参考:logstash-input-jdbc 同步原理及相关问题解读。非常方便。

中文分词插件

  ES上有不少的中文分词插件,能够对存储的数据进行分词,以应对搜索的请求。使用比较广泛的是ik。它的github地址。上面有关于安装,使用的完整介绍。甚至可以使用对于搜索的内容采用不同的分词器,非常的方便。参考

使用场景

  何时使用elasticsearch呢?

  • 将ES作为后端唯一的存储。优点是简化数据存储的逻辑结构,没有数据同步问题。这种方式比较激进。ES没有事务的机制,对于频繁的更新效率也不好。大型的项目不建议这样做。
  • 搜索功能。这也是一个主要的作用。将网站的搜索部分单拿出来,用ES来实现。既提高了搜索的效率,又对原来的数据存储和逻辑机构没有影响。例如对于产品的搜索,站内搜索等。效率非常高。
  • 使用elasticsearch和现有的工具相结合。由于ES是开源的,很多工具都可以与ES一起工作,你不必从来开始编码。假设要部署一个大规模的日志框架存储,搜索,并进行分析。处理日志和输出到Elasticsearch,可以用Rsyslog来建立日志,logstash传输日志到ES,搜索和可视化界面分析这些日志,可以使用Kibana。  

总结

  以上两篇日志,对于什么是ES,ES的安装,ES的应用场景,ES的相关插件有了一个大概的了解。以后如果工作中涉及到,对于是否选用,如何实施,就不会无所适从。

参考资料:

ElasticSearch学习笔记(三)logstash安装和logstash-input-jdbc插件

elasticsearch学习笔记——相关插件和使用场景的更多相关文章

  1. ElasticSearch学习笔记(超详细)

    文章目录 初识ElasticSearch 什么是ElasticSearch ElasticSearch特点 ElasticSearch用途 ElasticSearch底层实现 ElasticSearc ...

  2. amazeui学习笔记--js插件(UI增强)--警告框Alert

    amazeui学习笔记--js插件(UI增强)--警告框Alert 一.总结 1.警告框基本样式:用am-alert声明div容器, <div class="am-alert" ...

  3. amazeui学习笔记--js插件(UI增强4)--下拉组件Dropdown

    amazeui学习笔记--js插件(UI增强4)--下拉组件Dropdown 一.总结 1.am-dropdown(及其孩子):控制下拉列表的样式 2.data-am-dropdown(及其孩子):控 ...

  4. Elasticsearch学习笔记一

    Elasticsearch Elasticsearch(以下简称ES)是一款Java语言开发的基于Lucene的高效全文搜索引擎.它提供了一个分布式多用户能力的基于RESTful web接口的全文搜索 ...

  5. amazeui学习笔记--js插件(UI增强3)--折叠面板Collapse

    amazeui学习笔记--js插件(UI增强3)--折叠面板Collapse 一.总结 注意点: 1.data-am-collapse:这个东西就是展开折叠事件 2.am-collapse(包括其下属 ...

  6. amazeui学习笔记--js插件(UI增强2)--按钮交互Button

    amazeui学习笔记--js插件(UI增强2)--按钮交互Button 一.总结 1.按钮loading状态: <button type="button" class=&q ...

  7. Elasticsearch学习笔记三

    PS:前面两章已经介绍了ES的基础及REST API,本文主要介绍ES常用的插件安装及使用. Elasticsearch-Head Head是一个用于管理Elasticsearch的web前端插件,该 ...

  8. ElasticSearch学习笔记-02集群相关操作_cat参数

    _cat参数允许你查看集群的一些相关信息,如集群是否健康,有哪些节点,以及索引的情况等的. 检测集群是否健康 curl localhost:9200/_cat/health?v 说明: curl 是一 ...

  9. ElasticSearch学习笔记(三)logstash安装和logstash-input-jdbc插件

    ElasticSearch的索引可以手动添加索引的,就是类似下面这样添加的 PUT /movies/movie/1 { "title": "The Godfather&q ...

随机推荐

  1. python记录_day03 字符串

    python基本数据类型回顾 1. int 整数 2. str 字符串. 不会用字符串保存大量的数据 3. bool 布尔值. True, False 4. list 列表(重点) 存放大量的数据 5 ...

  2. 日期在Linux与Windows下的区别

    最近遇到了这个问题,就是相同的代码在Windows与Linux下的日期转换不一致. 原因:时区问题,主要是操作系统与JVM中的时区不同导致的 在网上查了很多处理的方法:最后总结出一条简单粗暴的方法:原 ...

  3. Quartz理解与实现

    记录关于Quartz定时调度任务的知识点,知识点主要分为两个部分,第一个部分介绍Quartz,第二部分使用Quartz+Spring来配置使用Quartz的实际操作. (一)Quartz知识点 Qua ...

  4. IntelliJ Idea设置单击打开文件或者双击打开文件、自动定位文件所在的位置

  5. 漏洞复现——ngnix文件解析漏洞

    漏洞描述: 上传文件时,在文件名后加%00php,就可以绕过检测成功上传而已文件 影响版本: nginx 0.8.41 – 1.5.6 漏洞分析: 该漏洞原理是非法字符空格和截止符(\0)会导致Ngi ...

  6. 关于react16.4——上下文Context

    首先我们来聊一聊(上下文)Context. 上下文(Context) 提供了一种通过组件树传递数据的方法,无需在每个级别手动传递 props 属性. 在典型的 React 应用程序中,数据通过 pro ...

  7. python-mongodb基本操作都在这了

    数据库 增 use db1 #有则切换,无则新增 查 show dbs #查看所有 db #当前 删 db.dropDatabase() 集合: 增: db.user db.user.info db. ...

  8. java设计模式之生产者/消费者模式

    什么是生产者/消费者模式? 某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类.函数.线程.进程等).产生数据的模块,就形象地称为生产者:而处理数据的模块,就称为消费者 ...

  9. 解决gitHub下载速度慢的问题

    转载:http://blog.csdn.net/x_studying/article/details/72588324 github被某个CDN被伟大的墙屏蔽所致. 解决方法: 1.访问http:// ...

  10. 深入Spring Boot: 怎样排查 java.lang.ArrayStoreException

    java.lang.ArrayStoreException 分析 这个demo来说明怎样排查一个spring boot 1应用升级到spring boot 2时可能出现的java.lang.Array ...