1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门
一:
1
搜索引擎的历史
萌芽:Archie、Gopher
Archie:搜索FTP服务器上的文件
Gopher:索引网页
2
起步:Robot(网络机器人)的出现与spider(网络爬虫)
Robot基于网络的,可以执行特定任务的程序
Spider:特殊的机器人,网络爬虫,爬取互联网上的信息(可以是文件,网络)----网络自动下载程序
3
发展阶段:excite,galaxy,yahoo这些公司做搜索
4
繁荣:infoseek,AltaVista,Google和百度
5
搜索引擎的原理:
有三步
A
爬取资源
B
建立索引
C
用户索引
二
搜索技术能用来做什么?
案例:
A
使用word中Ctrl+F进行检索:原理:从文档自上而下搜索
B
从windows的资源管理器中看搜索:搜索每个文件夹,检索需要的文件
C MyEclipse中的help contents:原理:站内搜索
D Baidu和Google提供互联网中各种资源的搜索:原理:垂直搜索
三:信息检索的过程
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快速入门的更多相关文章
- 百度谷歌雅虎三大搜索引擎比较和如何配置谷歌访问助手访问Google搜索服务
引言: 由于近期网上盛传”百度搜索引擎已死“的消息,引发个人对于搜索引擎的思考.百度作为最大的中文搜索引擎,确实有着很大声誉,再加上本地化的优势,正成为国人们的首选,但是作为一名技术开发人员,使用搜索 ...
- SSO单点登录的发展由来以及实现原理【转】
单点登录以及权限,在很早之前都有写过,不过都比较简单,今天就具体说一下,以及下一步要做的 1.web单系统应用 早期我们开发web应用都是所有的包放在一起打成一个war包放入tomcat容器来运行的, ...
- 无人驾驶汽车发展需要激光雷达和V2X技术
无人驾驶汽车发展需要激光雷达和V2X技术
- Java开发学习(三十五)----SpringBoot快速入门及起步依赖解析
一.SpringBoot简介 SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化 Spring 应用的初始搭建以及开发过程. 使用了 Spring 框架后已经简化了我 ...
- JavaScript 、ECMAScript、commonJS 发展历史 与标准化发展
本文介绍下JavaScript和 ECMAScript的诞生及发展历史,以及标准化过程. 一.JavaScript诞生 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版. ...
- 【搜索引擎】 PostgreSQL 10 实时全文检索和分词、相似搜索、模糊匹配实现类似Google搜索自动提示
需求分析 要通过PostgreSQL实现类似Google搜索自动提示的功能,例如要实现一个查询海量数据中的商品名字,每次输入就提示用户各种相关搜索选项,例如淘宝.京东等电商查询 思路 这个功能可以用 ...
- Elasticsearch由浅入深(九)搜索引擎:query DSL、filter与query、query搜索实战
search api的基本语法 语法概要: GET /_search {} GET /index1,index2/type1,type2/_search {} GET /_search { , } h ...
- web技术发展历程--读《大型网站技术架构_核心原理与案例分析》
1 早期的web服务 2 CGI程序的出现.发展.凋零到MVC的兴起 CGI:通用网关接口技术. 随着CGI技术的出现,web服务端可以通过不同的用户请求产生动态页面内容. web服务器将请求数据交给 ...
- SSO单点登录的发展由来以及实现原理
单点登录以及权限,在很早之前都有写过,不过都比较简单,今天就具体说一下,以及下一步要做的 1.web单系统应用 早期我们开发web应用都是所有的包放在一起打成一个war包放入tomcat容器来运行的, ...
随机推荐
- [HNOI 2002]跳蚤
Description Z城市居住着很多只跳蚤.在Z城市周六生活频道有一个娱乐节目.一只跳蚤将被请上一个高空钢丝的正中央.钢丝很长,可以看作是无限长.节目主持人会给该跳蚤发一张卡片.卡片上写有N+1个 ...
- [HAOI2011]Problem c
题目描述 给n个人安排座位,先给每个人一个1~n的编号,设第i个人的编号为ai(不同人的编号可以相同),接着从第一个人开始,大家依次入座,第i个人来 了以后尝试坐到ai,如果ai被占据了,就尝试ai+ ...
- 例10-6 uva1635(唯一分解定理)
题意:给定n个数a1,a2····an,依次求出相邻两个数值和,将得到一个新数列,重复上述操作,最后结果将变为一个数,问这个数除以m的余数与那些数无关? 思路:最后观察期规律符合杨辉三角,那么,问题就 ...
- python设计模式浅析
今天简单聊聊python的设计模式,GOF设计模式(c++)和Head first design pattern(Java)是两本设计模式的经典,基本可以照搬在python上面,但是你会发现pytho ...
- js求和运算在可变参数的情况下ES3、ES5和ES6的写法区别
//ES3.ES5的写法 function foo(){ var arr = Array.prototype.slice.call(arguments); var sum = 0; arr.forEa ...
- JVM体系结构-----深入理解内存结构
一.概述 内存在计算机中占据着至关重要的地位,任何运行时的程序或者数据都需要依靠内存作为存储介质,否则程序将无法正常运行.与C和C++相比,使用Java语言编写的程序并不需要显示的为每一个对象编写对应 ...
- 关于一些基础的Java问题的解答(一)
学习一门语言基础是非常重要的,因此本文总结了一些常见的Java基础问题的解答,希望可以帮到大家. 1. 九种基本数据类型的大小,以及他们的封装类. 9种基本数据类型 基本类型 包装类型 大小 bool ...
- Java 的异常处理机制
异常是日常开发中大家都「敬而远之」的一个东西,但实际上几乎每种高级程序设计语言都有自己的异常处理机制,因为无论你是多么厉害的程序员,都不可避免的出错,换句话说:你再牛逼,你也有写出 Bug 的时候. ...
- 常见常用的CSS
字体属性:(font) 大小 {font-size: x-large;}(特大) xx-small;(极小) 一般中文用不到,只要用数值就可以,单位:PX.PD 样式 {font-style: obl ...
- python学习之路前端-CSS
CSS概述 css是英文Cascading Style Sheets的缩写,称为层叠样式表,用于对页面进行美化. 存在方式有三种:元素内联.页面嵌入和外部引入,比较三种方式的优缺点. 语法:style ...