Java全文搜索怎么弄的_全文搜索 简介
数据的分类
结构化数据
具有固定格式、有限⻓度的数据,一般用关系数据库来处理。
非结构化数据
全⽂数据,⽆固定格式、不定⻓,比如邮件、word⽂档内容。
非结构化数据的2种处理方式
顺序扫描
从前往后依次扫描,效率低下。比如在一篇文章中搜索“java”,会把这篇文章从前往后扫描,标出“java”出现的地方。
全文搜索
从⾮结构化数据中提取关键字,组织为索引。对每一个词都建立一个索引,指明该词在非结构化数据(比如一篇文章)中出现的次数和位置。用户搜索时根据事先建立的索引来查找,将查找结果反馈给用户。检索效率很高。
以上也是全文所搜引擎的原理。
全文搜索的特点|优点
对非结构化数据的搜索支持好。关系型数据库对结构化数据的支持较差。
搜索性能高。在海量数据(GB、TB、PB级别)下,搜索性能极高。面对这种量级的数据,关系型数据库无能为力。
搜索灵活。搜索某个关键字,可以给出相关提示|预选项;会自动纠错,比如关键字打成了javb,会返回java的搜索结果。关系数据库的模糊查询其实是精确匹配的,没有这么智能。
索引维护容易。如果用关系数据库搞全文索引,insert、update都会重新构建索引,不好维护。
以上也是为什么不使用关系数据库做全文检索的原因。
全文搜索的使用场景
存储、检索海量的非结构化文本数据
需要使用交互式的⽂本查询,用户输入部分关键字,会有提供相应的预选项。
需要⾮常灵活的全⽂搜索,用户输入有误也会自动纠错。
对事务安全、写操作、非文本数据操作的需求相对较少。既然是全文搜索,关注的是搜索,注重读,对写操作的支持差一些。
主流的全文搜索引擎
Lucene
Lucene是⼀个Java写的全⽂搜索引擎。Lucene不是⼀个完整的应⽤程序,只是⼀个代码库、API,⽤于向应⽤程序添加搜索功能。
Lucene很强大,但集成使用很复杂,Solr、ES都是基于Lucene的,对Lucene进行了集成、封装,简化了操作。
Solr
十分成熟的一款搜索引擎,提供分布式索引、复制、负载均衡查询以及⾃动故障转移和恢复,⾼可靠、高容错、可扩展、实时索引,常用于企业级应用。
Netflix、eBay、Instagram、亚⻢逊都在使⽤Solr。
ElasticSearch
后起之秀,提供Restful风格的接口,分布式搜索,数据分析、分组、聚合。
维基百科、Stack Overflow、GitHub都在使用ES。
ElasticSearch的使用场景:论坛、电商⽹站、⽇志数据分析等需要站内检索海量纯文本的项目。
关于找一找教程网
本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。
本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。
[全文搜索 简介]http://www.zyiz.net/tech/detail-127495.html
Java全文搜索怎么弄的_全文搜索 简介相关推荐
- 正在搜索需要的文件_信息搜索课——前五次课心得
经倩倩老师推荐,我终于找到这个价格合适.干货满满.口碑不错的信息搜索课程.课程的讲授着朱丹老师是信息搜索界的佼佼者,她曾靠着信息搜索在本科期间找到很多兼职翻译机会,写论文时也用它迅速找到自己需要的资料 ...
- 广度优先搜索解决欧拉回路时间复杂度_迷宫搜索类的双向bfs问题(例题详解)
前言 文章若有疏忽还请指正! 更多精彩还请关注公众号:bigsai 头条号:一直码农一直爽 在搜索问题中,以迷宫问题最具有代表性,无论是八皇后的回溯问题,还是dfs找出口,bfs找最短次数等等题目的问 ...
- ecshop 搜索热词推荐_多多搜索自定义关键词推广的基础点:如何选对致命的关键词...
很多商家可能会疑惑我为什么不讲点击率,点击率固然重要,但其实多多搜索是围绕关键词展开的.正所谓万丈高楼平地起,关键词才是多多搜索的基础,没有这个基础,买家都搜不到你,或者搜到了却不是精准人群,点击率也 ...
- 百度搜索引擎结果网址参数_反馈搜索结果用时(rsv_sug4)
百度曾经和谷歌等搜索引擎一样,在搜索结果页面的页眉搜索框下方会显示每次查询反馈用时,为的是比谁的搜索引擎速度更快.后来取消在搜索结果页面显示,以参数 rsv_sug4 代替. [b]百度搜索结果网址参 ...
- 百度搜索结果页面的参数_反馈搜索结果用时(rsv_sug4)
百度曾经和谷歌等搜索引擎一样,在搜索结果页面的页眉搜索框下方会显示每次查询反馈用时,为的是比谁的搜索引擎速度更快.后来取消在搜索结果页面显示,以参数 rsv_sug4 代替. 百度搜索结果网址参数_反 ...
- Elasticsearch(三)——Es搜索(简单使用、全文查询、复合查询)、地理位置查询、特殊查询、聚合操作、桶聚合、管道聚合
Elasticsearch(三)--Es搜索(简单使用.全文查询.复合查询).地理位置查询.特殊查询.聚合操作.桶聚合.管道聚合 一.Es搜索 这里的 Es 数据博主自己上网找的,为了练习 Es 搜索 ...
- 计算机网络校园局域网课题,毕业论文基于VLAN技术的校园局域网建设word文档_全文免费在线阅读(推荐阅读)...
<[毕业论文]基于VLAN技术的校园局域网建设.doc>由会员分享,可免费在线阅读全文,更多与<[毕业论文]基于VLAN技术的校园局域网建设(word文档)_全文免费在线阅读> ...
- NET-A-PORTER为何难以模仿?_全文显示_生活福布斯中文网
NET-A-PORTER为何难以模仿?_全文显示_生活福布斯中文网 NET-A-PORTER为何难以模仿?
- java老版手机游戏剑魂_剑魂自动训练第3部分
java老版手机游戏剑魂 In this article, we will finally put an end to the "Automating Swords & Souls& ...
最新文章
- 界面代码ios不响应presentModalViewController界面的处理
- [AX]AX2012 使用.NET程序集部署
- Android Studio开发入门-引用jar及so文件
- python表白源代码-python浪漫表白源码
- 一群人花费了四年的时间以NASA的数据巨制“月球”
- python如何复制一个变量_Python中变量、赋值、浅拷贝、深拷贝
- zabbix自动发现(Discovery)功能使用
- 前端内存优化的探索与实践
- OpenJudge NOI 1.7 30:字符环
- spring-kafka、kafka-client 和springboot的版本对应关系
- 备份整合更需要一体机
- 关于Excel导入SqlServer报错的解决
- linux for java programer
- TIBCO Rendezvous
- 服务器运维大屏,可视化运维大屏
- 科普|股东需要对企业债务承担连带责任
- Pembuatan Sistem Registrasi Kamar Hotel Berbasis Website Pada Hotel Graha Prima Pacitan 外文翻译
- 邦纳超声波传感器Q45ULIU64BCR
- jquery返回上一页,前一页
- random.RandomState()用处