
全文检索服务(Solr、ELK)
Solr、ELK
plenilune-望月
这个作者很懒,什么都没留下…
展开
-
Solr(一) Solr 简介及搜索原理
一、 Solr 简介1 为什么使用 Solr在海量数据下,对 MySQL 或 Oracle 进行模糊查询或条件查询的效率是很低的。而搜索功能在绝大多数项目中都是必须的,如何提升搜索效率是很多互联网项目必须要考虑的问题。既然使用关系型数据库进行搜索效率比较低,最直接的解决方案就是使用专用搜索工具进行搜索,从而提升搜索效率。2 常见搜索解决方案基于 Apache Lucene(全文检索工具库)实现搜索。但是 Lucene 的使用对于绝大多数的程序员都是“噩梦级”的。基于谷歌 API 实现原创 2020-11-17 16:51:36 · 1522 阅读 · 0 评论 -
ELK技术栈系列- Logstash(六) LogStash+MySQL+Elasticsearch 实现数据增量导入(双写一 致)
LogStash+MySQL+Elasticsearch 实现数据增量导入(双写一 致)原有系统中,如果使用了缓存应用,全文搜索服务等额外数据存储,则在代码实现中,要保证双写一致,即写数据库的同时,把数据的变量同步到其他存储中。如果使用 LogStash,则可以实现数据的增量导入。思路:写数据到数据库,LogStash 监听数据库中数据的变化,把增量数据读取,并保存到 ES 中。1 环境准备1.1 上传数据库驱动LogStash 本身不提供数据库驱动,需要使用者提供数据库的驱动包,且原创 2020-10-15 16:51:27 · 661 阅读 · 0 评论 -
ELK技术栈系列- Logstash(五) 搭建日志系统
搭建日志系统绝大多数项目在后台管理中都有日志管理。以前的日志信息是存储在 MySQL 中,日志随着项目运行时间会越来越多,一直存储在 MySQL 会导致查询降低。现在的日志信息通过ELK 技术栈进行操作。存储在 Elasticsearch 中,可以更好的分析日志内容及更快查询效率。给定简单需求:搭建日志系统,提供查询 Elasticsearch 中日志信息的接口。1 新建项目名称为 ELK_Demo2 修改 pom.xml搭建最基本的环境,实现需求,没有考虑 Spring C原创 2020-10-15 16:40:59 · 151 阅读 · 0 评论 -
ELK技术栈系列- Logstash(四) 如何在 Kibana 中查看日志信息
如何在 Kibana 中查看日志信息1 使用命令方式查看可以直接在 Dev Tools 中输入命令查看日志信息。输入: GET test_log/_search 查看全部。2 是 Kibana 界面查看进入到 Kibana 后按图所示点击。创建索引表达式选择没有时间过滤后,点击“Create index pattern”按钮点击菜单中 Discover,选择右侧 test_log每条日志在 Elasticsearch 中存储形式IDEA 中控制台.原创 2020-10-15 16:28:33 · 4652 阅读 · 0 评论 -
ELK技术栈系列- Logstash(三) 使用 Logback 向 Logstash 中输出日志
使用 Logback 向 Logstash 中输出日志需求:随意新建一个项目把输出到控制台的日志信息也输出到 Logstash 中。1 修改 pom.xmllogstash-logback-encoder 就是转码后向 logstash 中输入的依赖。注意:如果导入的是 6.x 版本不会在控制台看见任何额外日志信息。如果导入的是 5.x 版本会在控制台看见 logback.xml 加载的信息。<parent> <groupId>org.springfr原创 2020-10-15 16:24:01 · 1325 阅读 · 0 评论 -
ELK技术栈系列- Logstash(二) Logstash 安装
安装 Logstash在前面的课程中已经安装好了 Elasticsearch 和 Kibana。下面是安装 Logstash 的步骤Logstash 是不需要必须和 Elasticsearch 安装到一起,如果独立安装到一台服务器,需要在服务器中先配置好 JDK 环境变量。在课堂中把 ELK 三个软件都装到一台服务器中。1 安装 Logstash1.1 上传 Logstash 并解压上传压缩包到/usr/local/tmp 中后,解压压缩包。# tar zxf logstash-6.8.原创 2020-10-15 16:15:15 · 218 阅读 · 0 评论 -
ELK技术栈系列- Logstash(一) Logstash 入门简介及工作原理
LogStash 简介及工作原理1 什么是 LogStashELK(Elasticsearch+Logstash+Kibana)中我们使用过 Elasticsearch 和 Kibana,就剩下最后一个 LogStash 了。到底 Logstash 是什么呢?官方说明官方文字说明:Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中。通俗说明:Logstash 是一款强大的数据处理工具,常用作日志处理。.原创 2020-10-15 16:04:56 · 342 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(七) Spring Data Elasticsearch案例详解
Spring Data ElasticSearch使用 Spring Data 下二级子项目 Spring Data Elasticsearch 进行操作。支持 POJO 方法操作 Elasticsearch。相比 Elasticsearch 提供的 API 更加简单更加方便。1 修改 POM 文件添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>原创 2020-10-15 15:46:52 · 457 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(六) ElasticSearch Search 搜索详解
Search 搜索详解1 搜索学习测试数据PUT test_search{ "mappings": { "test_type" : { "properties": { "dname" : { "type" : "text", "analyzer": "standard" }, "ename" : { "type" : "text", "analyzer": "standard" }, "eage" : {.原创 2020-10-15 11:41:08 · 531 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(五) ElasticSearch 中的 mapping 问题
ElasticSearch 中的 mapping 问题Mapping 在 ElasticSearch 中是非常重要的一个概念。决定了一个 index 中的 field 使用什么数据格式存储,使用什么分词器解析,是否有子字段等。Mapping 决定了 index 中的 field 的特征。1 mapping 核心数据类型ElasticSearch 中的数据类型有很多,在这里只介绍常用的数据类型。文本(字符串):text整数:byte、short、integer、long浮点型:fl原创 2020-10-15 10:54:34 · 245 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(四) 分词器(analyzer)和标准化处理(normalization)
分词器(analyzer)和标准化处理(normalization)1 什么是分词器分词器是一个字符串解析拆分工具。其作用是分析写入的 Document 中的文本数据field,并将 field 数据拆分成一个个有完整含义的、不可拆分的单词。如:I think dogs is human's best friend.在写入此数据的时候,ElasticSearch 会使用分词器分析并拆分数据,将上述的语句切分成若干的单词,分别是:I、 think、 dogs、human's、 best、 f.原创 2020-10-15 10:39:13 · 604 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(三) 常用 ElasticSearch 管理操作
常用 ElasticSearch 管理操作1 查看健康状态GET _cat/health?vepoch timestamp cluster status node.total node.data shards 1531290005 14:20:05 elasticsearch green 1 1 2pri r...原创 2020-10-14 17:49:41 · 183 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(二) Linux 安装 ElasticSearch
Linux 安装 ElasticSearch使用的 ElasticSearch 的版本是 6.8.4。ElasticSearch6.x 要求 Linux 内核必须是 3.5+版本以上。在 linux 操作系统中,查看内核版本的命令是: uname -a课堂使用的 Linux 是 CentOS8。内核使用的是 4.4。ElasticSearch6.X 版本要求 JDK 版本至少是 1.8.0_131。 提供 1.8.0_161JDK 安装包。1 为 ElasticSearch 提供完善的系原创 2020-10-14 17:01:22 · 140 阅读 · 0 评论 -
ELK技术栈系列-ElasticSearch(一) ElasticSearch快速入门
一、 什么是 Elastic SearchElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式的全文搜索引擎,其对外服务是基于 RESTful web 接口发布的。Elasticsearch 是用 Java 开发的应用,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到近实时搜索,稳定,可靠,快速,安装使用方便。1 相关概念1.1 cluster集群。ElasticSearch 集群由一或多个节点组成,其中原创 2020-10-14 16:52:22 · 441 阅读 · 0 评论