1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门

本文主要是介绍1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



一:

1  搜索引擎的历史

萌芽:ArchieGopher

Archie:搜索FTP服务器上的文件

Gopher:索引网页

 

2  起步:Robot(网络机器人)的出现与spider(网络爬虫)

Robot基于网络的,可以执行特定任务的程序

Spider:特殊的机器人,网络爬虫,爬取互联网上的信息(可以是文件,网络)----网络自动下载程序

 

3   发展阶段:excite,galaxy,yahoo这些公司做搜索

 

4   繁荣:infoseek,AltaVista,Google和百度

 

5   搜索引擎的原理:

有三步

A  爬取资源

B  建立索引

C  用户索引

  搜索技术能用来做什么?

案例:

A  使用wordCtrl+F进行检索:原理:从文档自上而下搜索

B  windows的资源管理器中看搜索:搜索每个文件夹,检索需要的文件

C MyEclipse中的help contents:原理:站内搜索

D BaiduGoogle提供互联网中各种资源的搜索:原理:垂直搜索

 

三:信息检索的过程

A  构建文本库

B  建立索引

C  进行搜索

D  对结果进行排序

 

四:倒排索引

倒排搜索区别于传统查找,传统线性查找,按照信息从前到后,依次查找(效率),倒排搜索,记录信息出现的位置,通过索引内容快速找到关键信息,类似书记的目录!

 

五:什么是Lucene(全文检索框架,apache提供)

A  Lucene是一套用于全文检索和搜寻的开源程式接口,能够做全文索引和搜寻,在Java开发环境里Lucene是一个成熟的免费开发源代码工具

 

B Lucene是提供了一个简单却强大的应用程式接口,能够做全文检索索引和搜寻,在Java开发环境里Lucene是一个成熟的免费的开放源代码工具。

 

 

全文检索:对数据建立全文索引,根据全文索引搜索信息

 

solr 是高性能搜索服务器,基于Lucene

 

Lucene并不是现成的搜索引擎产品,但可以用来制作搜索引擎产品

Lucene是搜索引擎的开发技术,Lucene并不是一个现成的产品

 

官网:http://lucene.apache.org

  什么是全文件检索

全文检索:对需要查找数据的每一个单词建立索引

 

七:Lucene快速入门(5个步骤)

A 下载Lucene的卡发包,Lucene-3.6.2.zip

B 导入jar包到工程Lucene-core-3.6.2.jar

C 将数据转换成为文档对象Document

D 建立索引Index

E 查询索引获取数据

 

 

 

这篇关于1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/918378

相关文章

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Java Kafka消费者实现过程

《JavaKafka消费者实现过程》Kafka消费者通过KafkaConsumer类实现,核心机制包括偏移量管理、消费者组协调、批量拉取消息及多线程处理,手动提交offset确保数据可靠性,自动提交... 目录基础KafkaConsumer类分析关键代码与核心算法2.1 订阅与分区分配2.2 拉取消息2.3

Python多线程实现大文件快速下载的代码实现

《Python多线程实现大文件快速下载的代码实现》在互联网时代,文件下载是日常操作之一,尤其是大文件,然而,网络条件不稳定或带宽有限时,下载速度会变得很慢,本文将介绍如何使用Python实现多线程下载... 目录引言一、多线程下载原理二、python实现多线程下载代码说明:三、实战案例四、注意事项五、总结引

AOP编程的基本概念与idea编辑器的配合体验过程

《AOP编程的基本概念与idea编辑器的配合体验过程》文章简要介绍了AOP基础概念,包括Before/Around通知、PointCut切入点、Advice通知体、JoinPoint连接点等,说明它们... 目录BeforeAroundAdvise — 通知PointCut — 切入点Acpect — 切面