全文检索主要应用领域:搜索引擎(百度,搜狗)、站内搜索(微博搜索)、电商网站(京东,淘宝)

现在不缺乏做java的人,但是缺乏有互联网背景的做Java的人。具有互联网技术的Java人才。比如说大数据,高并发,全文搜索这肯定也是。全文检索也是一个典型的互联网技术。你SSH叫做互联网技术吗?是吧。只要做Java项目都能用。只有掌握一到两门的互联网技术你找工作你才有砝码。

全文检索还有一个应用:搜索硬盘的文件。歌词名称各不一样,歌词内容乱七八糟。全文检索处理的是非机构化的数据。这次视频仅仅是对文本文件的处理,不涉及声音和图片。但是还有一种比较特殊的叫XML和HTML,XML你说它没格式它也有格式,你可以把它导入数据库中,也可以把它当做一个文本文件来处理。这种格式的文档把它叫做半结构化数据,也可以把它导入数据库中按结构化数据来处理,也可以把它看做是一个文本文档使用全文检索的方式来处理,作为分级化数据来处理。

建索引,数据库中也可以建立索引,查询一个字符串,在这个字符串数据类型上建索引也没有问题。但是你在这个字符串上建立索引的时候,你用like查询的时候,能用索引吗?也不能说全部都用不上啊。假如没有前面那个%,就是like "XXXX%",它是可以走索引的。但是你建立索引的这个字符串的长度mysql是有限制的,整个字段的长度不能超过128个字符,太长了它就没有办法建立索引。

先把文档分词,先对它进行分析,分词之后把分析出来的关键词建立索引,查询的时候根据这些词进行查询,查了这个词对应哪些文档?你就能查出来了。所以跟文档并没有关系,查了词再查文档,这样的话我查的时候就要查索引啊,查询速度加快。

全文检索和数据库like查询的区别

1.数据库like:结构化数据

全文检索:非结构化数据

2.搜索原理:

数据库:顺序扫描

全文检索:先分词,然后再查询索引,根据索引找到文档。

3.搜索效果:

数据库like:准确度低

全文检索:准确度高

排序:

数据库:或者是升序或者是降序。

全文检索:根据相关度进行排序。

02.全文检索和数据库like的区别的更多相关文章

  1. MySQL、MongoDB、Redis 数据库之间的区别与使用(本章迭代更新)

    MySQL.MongoDB.Redis 数据库之间的区别与使用 MySQL.MongoDB.Redis 数据库之间的区别与使用(本章迭代更新) update:2019年2月20日 15:21:19(本 ...

  2. SQL Server数据库和MySQL数据库有什么区别?

    SQL Server数据库和MySQL数据库有什么区别呢?详细很多初入IT行业的朋友对于SQL Server数据库和MySQL数据库经常搞混,认为这两种数据库是同一种,其实不然,今天我们来分析一下这两 ...

  3. MongoDB与传统数据库的使用区别——批量插入与批量查询

    我在百X知道上回答问题时经常遇到类似与这样的问题:MongoDB有没有像MySQL一样的ODBC驱动?MongoDB能不能像MySQL一样获取字段名称或类型. 我的回答是:不行,因为MongoDB不是 ...

  4. MySQL、MongoDB、Redis 数据库之间的区别

    NoSQL 的全称是 Not Only SQL,也可以理解非关系型的数据库,是一种新型的革命式的数据库设计方式,不过它不是为了取代传统的关系型数据库而被设计的,它们分别代表了不同的数据库设计思路. M ...

  5. 数据库别名AS区别

    Oracle之别名小结 MySQL表别名.字段别名注意事项 字段别名:可加 as  ,也可以不加,可以加单|双引号,也可以不加: 表别名:可加 as ,也可以不加,但是一定不能加单|双引号! Orac ...

  6. MySQL学习02(操作数据库)

    操作数据库 结构化查询语句分类 名称 解释 命令 DDL(数据库定义语言) 定义和管理数据对象,例如数据库和数据表 create.drop.alter DML(数据操作语言) 用于操作数据库对象中所包 ...

  7. 数据库join union 区别

    join 是两张表做交连后里面条件相同的部分记录产生一个记录集,union是产生的两个记录集(字段要一样的)并在一起,成为一个新的记录集. 1.JOIN和UNION区别  join 是两张表做交连后里 ...

  8. Sitecore中Core,Master和Web数据库之间的区别

    Core数据库 正如名称所示,Core Database是Sitecore应用程序的主干,它可用于多种用途. 核心数据库包含所有Sitecore设置. 它包含桌面模式,内容编辑器,页面编辑器等的定义. ...

  9. Redis,传统数据库,HBase,Hive区别联系

    首先介绍各个数据库: Redis: 传统数据库: HBase: Hive:

随机推荐

  1. nginx unit 安装试用

    1. yum 源 nano /etc/yum.repos.d/unit.repo 内容 [unit] name=unit repo baseurl=https://packages.nginx.org ...

  2. openresty 使用 log_by_lua 发送日志到 syslog-ng

    1. 安装   opm get p0pr0ck5/lua-resty-logger-socket   2. 使用    location   lua_by_lua_block    log_by_lu ...

  3. cocos2dx ScrollView的用法

    http://blog.csdn.net/u014096244/article/details/21525789 http://bbs.9ria.com/thread-199305-1-1.html ...

  4. PHP如何实现网址伪静态(转)

    Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态.主要步骤如下: 1.检测Apache是否开启mod_rewrite功能     可以通过php提供的 ...

  5. 自己定义一个tab指令

    定义一个tab切换的指令: 指令的文件结构: Js/directives/tab tab.html tab.js tab.html: <style> .my-li-style{ line- ...

  6. 树的遍历——pat1043

    http://pat.zju.edu.cn/contests/pat-a-practise/1043 给予N个数字组成二叉搜索树,判断这个数列是否由先序遍历得出或是镜像先序遍历得出,若是则输出相应的后 ...

  7. 黄聪:如何使用Add-on SDK开发一个自己的火狐扩展

    火狐开放了扩展的开发权限给程序员们,相信很多人都会希望自己做一些扩展来方便一些使用. 我最近做一些项目也需要开发一个火狐扩展,方便收集自己需要的数据,因此研究了几天怎么开发,现在已经差不多完成了,就顺 ...

  8. FPGA的新变化

    FPGA SoC通过融合FPGA和ASIC两者的元件,跨越了灵活性和性能之间的界限.但随着它们进入高安全性.任务关键型市场,它们也面临着与标准SoC相同的问题,包括在日益复杂的器件中快速传输越来越多的 ...

  9. Spring不支持静态注入

    在springframework里,我们不能@Autowired一个静态变量,使之成为一个spring bean,例如下面这样: @Autowired private static YourClass ...

  10. 3dmax卡通渲染插件pencil+渲染线框

    转自:http://www.cr173.com/soft/179512.html http://www.psoft.co.jp/jp/ 官网和YTB有 2代的视频教程,平均每个2分钟长,无解说,是日文 ...