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. New Year and Old Subsequence CodeForces - 750E (dp矩阵优化)

    大意: 给定字符串, 每次询问区间[l,r]有子序列2017, 无子序列2016所需要删除的最小字符数 转移用矩阵优化一下, 要注意$(\mathbb{Z},min,+)$的幺元主对角线全0, 其余全 ...

  2. 用curl模拟夹带cookie的http请求

    1. 首先登录所要登录的网站,发起http请求,获取cookie 2. 获取请求的真正的路径,现在的前端比如vue都是用自定义路径映射后端路径的,比如在vue中某个请求为caojiangjiang/t ...

  3. 谈一谈HashMap类

    一.Java中的hashCode()和equals() 1. hashCode()的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode()是用来在散列存储结构中确定对 ...

  4. php 中输入输出提交

    </head> <body> 输出的两个位置 <? echo $_POST['sub']; ?> <form action="" meth ...

  5. 字符串加密解密(Base64)

    var Base64 = { // private property _keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwx ...

  6. python-flask-wtforms

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 前端基础之CSS的引入+HTML标签选择器+CSS操作属性

    clear:left/ringt属性 CSS:语法形式上由选择器+以及一条或多条声明组成:选择器查找到指定的html标签后,使用css属性设置html标签的样式:                   ...

  8. 安天透过北美DDoS事件解读IoT设备安全——Mirai的主要感染对象是linux物联网设备,包括:路由器、网络摄像头、DVR设备,入侵主要通过telnet端口进行流行密码档暴力破解,或默认密码登陆,下载DDoS功能的bot,运行控制物联网设备

    安天透过北美DDoS事件解读IoT设备安全 安天安全研究与应急处理中心(安天CERT)在北京时间10月22日下午启动高等级分析流程,针对美国东海岸DNS服务商Dyn遭遇DDoS攻击事件进行了跟进分析. ...

  9. Java技巧之双括弧初始化

    由于Java语言的集合框架中(collections, 如list, map, set等)没有提供任何简便的语法结构,这使得在建立常量集合时的工作非常繁索.每次建立时我们都要做: 定义一个临时的集合类 ...

  10. SpringBoot使用Spring Initializer

    IDE都支持使用Spring的项目创建Spring的项目创建向导,快速创建一个SpringBoot项目:选择我们需要的模块:向导会联网创建SpringBoot项目:默认生成的SpringBoot项目: ...