Java Solr:(一)Solr 简介
Solr 简介
- 1.为什么使用 Solr
- 2.常见搜索解决方案
- 3.Solr 简介
- 4.正向索引和反向索引
1.为什么使用 Solr
- 在海量数据下,对 MySQL 或 Oracle 进行模糊查询或条件查询的效率是很低的。而搜索功能在绝大多数项目中都是必须的,如何提升搜索效率是很多互联网项目必须要考虑的问题
- 既然使用关系型数据库进行搜索效率比较低,最直接的解决方案就是使用专用搜索工具进行搜索,从而提升搜索效率
2.常见搜索解决方案
- 基于 Apache Lucene(全文检索工具库)实现搜索。但是 Lucene 的使用对于绝大多数的程序员都是“噩梦级”的。
- 基于谷歌 API 实现搜索。
- 基于百度 API 实现搜索。
3.Solr 简介
- Solr 是基于 Apache Lucene 构建的用于搜索和分析的开源解决方案。可提供可扩展索引、搜索功能、高亮显示和文字解析功能。
- Solr 本质就是一个 Java web 项目,且内嵌了 Jetty 服务器,所以安装起来非常方便。客户端操作 Solr 的过程和平时我们所写项目一样,就是请求 Solr 中控制器,处理完数据后把结果响应给客户端
4.正向索引和反向索引
- 只要讨论搜索就不得不提的两个概念:正向索引(forward index)和反向索引(inverted index)
- 正向索引:从文档内容到词组的过程。每次搜索的时候需要搜索所有文档,每个文档比较搜索条件和词组。
文档 | 词组 |
---|---|
I am a chinese | I,am,a,chinses |
- 反向索引:是正向索引的逆向。建立词组和文档的映射关系。通过找到词组就能找到文档内容。(和新华字典找字很像)
词组 | 文档 |
---|---|
I,am,a,chinses | I am a chinese |
Java Solr:(一)Solr 简介相关推荐
- Solr 11 - Solr集群模式的部署(基于Solr 4.10.4搭建SolrCloud)
目录 1 SolrCloud结构说明 2 环境的安装 2.1 环境说明 2.2 部署并启动ZooKeeper集群 2.3 部署Solr单机服务 2.4 添加Solr的索引库 3 部署Solr集群服务( ...
- linux环境下如何查看solr版本,Solr环境搭建(linux)
1. 前言 在5.0版本之前,solr无法作为独立的服务器进行使用,需要将其打包为war包部署在任何Servlet容器内才能使用. 从5.0开始,solr可以单独作为一个独立的Java应用服务器分发使 ...
- Java开源项目EZMorph简介
http://hi.baidu.com/glfbin/blog/item/1302747e8722852e0cd7daaf.html Java开源项目EZMorph简介 2011-04-30 9:40 ...
- java.util.Stack类简介
转载自 java.util.Stack类简介 Stack是一个后进先出(last in first out,LIFO)的堆栈,在Vector类的基础上扩展5个方法而来 Deque(双端队列)比起St ...
- java apache commons_Apache commons(Java常用工具包)简介
Apache Commons是一个非常有用的工具包,解决各种实际的通用问题,下面是一个简述表,详细信息访问http://jakarta.apache.org/commons/index.html Be ...
- 初学Java多线程:线程简介
Java多线程初学者指南系列教程http://developer.51cto.com/art/200911/162925.htm 初学Java多线程:线程简介 2009-06-29 17:49 ...
- Java关键字之break简介说明
转自: Java关键字之break简介说明 下文是笔者总结的break关键字的功能简介说明,如下所示 break关键字的功能 break关键字的功能:用于中断for循环中断while循环中断switc ...
- [转载]Java嵌入式开发之一-简介使用Java编写Palm OS程序的解决方案
Java嵌入式开发之一-简介使用Java编写Palm OS程序的解决方案 现在,使用Java语言为 Palm OS编写程序的领域还没有完全统一,并且也有许多程度上的差异,目前,市面上有好几种不同的可用 ...
- 深圳Java培训:JDBC简介
深圳Java培训:JDBC简介 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一 ...
- Java构造函数(构造方法)的简介说明
转自: Java构造函数(构造方法)的简介说明 Java构造函数(构造方法) java中的构造函数是一种特殊类型的方法, 用于初始化对象. Jav ...
最新文章
- xmlHttpRequest避免缓存的办法
- 类似百度输入框自动完成
- java 爬中 验证码识别_JAVA爬虫---验证码识别技术(一)
- 实现java.lang.Runnable接口
- 【51单片机快速入门指南】7:片上EEPROM
- ubuntu c++检测usb口事件变化_炼就“火眼金睛”,FETA40i-C核心板“牵手”光时域反射仪...
- 剑指offer(21)栈的压入、弹出序列
- iPhone 9测试工作结束:4.7英寸小屏设计 主打新兴市场
- 最短路 Codeforces Round #103 (Div. 2) D. Missile Silos
- windirstat这个软件可以图形化统计磁盘占用,实用!
- 2020年生肖码表图_2020年生肖排位表 鼠年号码岁数表
- PS制作微信公众号封面
- 关于sockaddr_in 、WSAData 、sockaddr等未定义的问题
- 两个重要极限定理推导
- Jquery获取选中 的TR元素 和 子元素td
- tensorflow官方Blog-使用Keras Tuner超参数优化框架 进行超参数调整 ,具体实现版本
- 派盘与百度云同步盘哪家强?
- OLTP、OLAP与HTAP
- 腾讯QQ大数据:BI方法论-数据体系建设之路
- 都说幕布适合写作,但是你知道 Effie 吗?
热门文章
- ZZULIOJ-1095: 时间间隔(多实例测试)(Java)
- 为什么那么多人喜欢用CTA策略?
- 社工,定位聊天对象的真实地址
- 三重积分为何不能直接带入积分区域?搞懂这些,重积分基本可以了
- Java笔记07——类和对象
- Part 2 Linux programming:chapter 18:多线程服务器端实现
- 计算机网络实践之元气骑士公网异地联机(三) 完善转发机的转发规则
- redux和react-redux
- RISC-V 指令详解
- 半年内第二块国产全功能GPU,附带首个游戏显卡!摩尔线程造芯神速,张建中“黄”气逼人...