没有合适的资源?快使用搜索试试~ 我知道了~
Sql2008_全文索引详解,里面有很多实例,童鞋们可以照着做做
资源推荐
资源详情
资源评论
Sql2008 全文索引详解
1.
使用全文搜索查询数据
在数据库中快速搜索数据,使用索引可以提高搜索速度,然而索引一般是建立在数字型
或长度比较短的文本型字段上的,比如说编号、姓名等字段,如果建立在长度比较长的文
本
型字段上,更新索引将会花销很多的时间。如在文章内容字段里用lik e 语句搜索一个关键
字,
当数据表里的内容很多时,这个时间可能会让人难以忍受。
在SQL Server 中提供了一种名为全文索引的技术,可以大大提高从长字符串里搜索数
据的速度,在本章里,将会对全文索引进行详细的介绍。
1.1
全文索引的介绍
全文索引与普通的索引不同,普通的索引是以B-tree 结构来维护的,而全文索引是一
种特殊类型的基于标记的功能性索引,是由Microsoft SQL Server 全文引擎服务创建和
维护
的。
使用全文索引可以快速、灵活地为存储在SQL Server 数据库中的文本数据创建基于关
键字查询的索引,与lik e 语句不同,lik e 语句的搜索是适用于字符模式的查询,而全文
索引
是根据特定语言的规则对词和短语的搜索,是针对语言的搜索。
在对大量的文本数据进行查询时,全文索引可以大大地提高查询的性能,如对于几百万
条记录的文本数据进行lik e 查询可能要花几分钟才能返回结果,而使用全文索引则只要几
秒
钟甚至更少的时间就可以返回结果了。
1.2
全文索引中常用的术语
由于全文索引中使用了较多的新的术语,在此先介绍这些术语:
l 全文索引:一种特殊的索引,能在给定的列中存储有关重要的词及位置的信息,
使用这些信息可以快速进行全文查询,搜索包括特定词或词组的行。
l 全文目录:全文目录是存储全文索引的地方,全文目录必须驻留在与SQL Serve
r 实例相关联的本地硬盘上,每个全文目录可用于满足数据库内的一个或多个表的
索引需求。
l 断字符与词干分析器:断字符与词干分析器都是用于对全文索引的数据进行语言
分析的。语言分析通常都会涉及到查找词的边界和组合动词两个方面,其中要查找
词的边界,也就是确定哪几个字符是“词”,称之为“断字”。__________组合动词也就是词干
分
析,用于分析词。根据语言的不同,语言分析规则也不尽相同,由此可以为每个全
文索引列指定不同的语言。每种语言的断字符能够使得访问语言生成的词更为准
确。
l 标记:由断字符标识的词或字符串。
l 筛选器:用于从存储在varbinary(max)或image 列中的文件内提取指定的文本
类型的文本。当varbinary(max)或image 列中包含带有特定文件扩展名的文档时,
全文搜索会使用筛选器来解释二进制数据,筛选器会从文档中提取文本化信息并用
于建立索引。
l 填充(爬网):创建维护全文索引的过程叫填充,也叫爬网。
l 干扰词:经常出现,但又不是要搜索的词。为了精简全文索引,这些词通常会被
忽略。
1.3
全文索引的体系结构
SQL Server 的全文索引是由SQL Server FullText Search 服务来维护的,该服务可以
在
Windows 操作系统的【管理工具】à【服务】里找到,如图1.1 所示,在此可以启动、停
止、暂停、恢复和重新启动该服务。只有SQL Server FullText Search 服务在启动状态
时,
才能使用全文索引。
图1.1 SQL Server FullText Search 服务
SQL Server FullText Search 服务由两个部分组件支持:一个是Microsoft Full-Text
Eng
ine for SQL Server(MSFTESQL),也就是SQL Server 全文搜索引擎;另一个是
Microsoft
Full-Text Engine Filt er Deamon(MSFTEFD),也就是全文搜索引擎过滤器。
Microsoft Full-Text Engine for SQL Server 的作用是填充全文索引、管理全文索引和
全
文目录、帮助对SQL Server 数据库中的数据表进行全文搜索。Microsoft Full-Text
Engine F
ilter Deamon 包含筛选器、协议处理程序和断字符三个组件,其作用是负责从数据表中
访问
和筛选数据以及进行断字和词干分析。其中,筛选器的作用是从文档中提取文本信息,并
将
非文本信息和格式化信息(如换行符、字体大小等信息)删除,然后生成文本字符串和属
性
的对应,并将它们传递给索引引擎;协议处理程序用于从指定数据库中的表内访问数据;
断
字符用于在查询或抓取的文档中确定字符边界位置。
全文索引组件负责对全文索引的初始填充以及当全文索引表中的数据被修改时的更新。
当全文填充(爬网)开始后,数据库引擎会将大量的数据存储到内存里,并通知
Microsoft
Full-Text Engine for SQL Server(MSFTESQL)开始进行索引。当MSFTESQL 服务
接到进
行索引的通知后,使用协议处理程序组件从内存中取得数据进行处理后生成全文索引。
MSF
TESQL 服务会将数据表中的某一列或几列中的字符和二进制数据编制成索引。在对
varbina
ry(max)或image 列中的数据编制索引时,筛选器会将基于为该数据指定的文件格式来提
取
文本。在处理索引的过程中MSFTESQL 服务通过断字符来将收集到的文本数据分隔成各
个
单独的标记或关键字。这个过程就是全文索引的过程。
由于全文索引与普通的索引不同,全文索引并不是存储在数据表中,而是存储在全文目
录中,所以在使用全文索引来搜索数据时,其运行的流程和普通索引也不一样。
如图1.2 所示,当SQL Server 发出全文搜索的请求后,会将搜索的条件传递给全文搜
索引擎过滤器,经过MSFTEFD 处理后,将数据提供给MSFTESQL,再由MSFTESQL 从
全文
目录中找到符合要求的数据,再返回给SQL Server 进行后续操作。这就是进行全文搜索
的
过程。
图1.2 全文搜索流程
1.4
全文目录管理
在前面章节里提到,全文目录的作用是存储全文索引,所以要创建全文索引必须先创建
全文目录。
1.4.1
创建全文目录
创建全文目录的方法如下:
(1)启动【SQL Server Management Studio】,连接到本地默认实例,在【对象资
源
管理器】窗口里,选择本地数据库实例à【数据库】à【Northwind】à【存储】à【全文
目录】。
(2)右击【全文目录】,在弹出的快捷菜单里选择【新建全文目录】选项。
(3)弹出如图1.3 所示的【新建全文目录】对话框,在该对话框的【全文目录名称】
文本框内可以输入全文目录的名称;在【目录位置】文本框内可以输入全文目录的存储路
径,
单击其后的【…】按钮可以选择路径,如果不输入的话,默认存储在“Program Files\
Micros o
ft SQL Server\MSSQL.1\MSSQL\FTData”目录下;在【文件组】下拉列表框里可以选
择全文
目录所属的文件组;在【所有者】文本框里可以输入全文目录的所有者;选中【设置为默
认
目录】复选框可以将此目录设置为全文目录的默认目录;【区分重音】单选框用于指明目
录
是否区分标注字符。
图1.3 【新建全文目录】对话框
(4)设置完毕后单击【确定】按钮完成操作。
1.4.2
查看与修改全文目录
全文目录添加完毕之后,可以在【对象资源管理器】窗口的【全文目录】树下看到新建
的全文目录。双击该全文目录,或右击该全文目录,在弹出的快捷菜单里选择【属性】选
项,
将会弹出如图1.4 所示【全文目录属性】对话框,在该对话框里可以查看全文目录的属性
内容。
在【全文目录属性】对话框里有三个标签:【常规】选项卡里可以查看和修改全文目录
的设置;【表/视图】选项里可以查看和修改为全文目录分配的表和视图;【填充计划】选
项项里可以添加或修改确定何时填充或重新填充全文目录的计划。
在如图1.4 所示的【全文目录属性】对话框里,可以看到全文目录所属的文件组、名
称、上次填充的时间、项计数、填充状态、目录大小、唯一键计数的内容,这些内容是不
能
修改的。可以修改项为:【默认目录】、【所有者】和【区分重音】三个选项内容。
剩余30页未读,继续阅读
资源评论
zxrweb
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Java和Javascript的工程建设综合管理系统材料管理模块设计源码 - material
- c51_2_2.c
- ASCII American Standard Code for Information Interchange
- 一个chm格式的 SQL 函数手册-SQL语言手册文档
- 计算当前月份的天数和剩余天数
- 基于ARM的指令调度和延迟分支
- 基于Vue和TypeScript的极简聊天应用设计源码 - HasChat
- 基于Vue2全家桶和Zcool数据的图片收集网站设计源码 - cool-picture
- 基于C和C++的二维绘制工具设计源码 - DrawPro
- Object.defineProperty 的 IE 补丁object-defineproperty-ie-master.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功