频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

如何理解SQL Server中的Ranking(1)

作者: 铁在烧 编译 出处:51CTO.com 2008-02-19 15:20    砖    好    评论   进入论坛
阅读提示:Rank值一般与特定的用户查询相关(如使用FREETEXT子句),并不针对一般意义性质的查询。本文介绍了Rank排名统计信息、计算问题、常量等内容,供大家参考!

【51CTO.com独家特稿】MS SQL Server全文检索能够产生一个积分(即Rank值),它反映了查询数据返回结果的相关性。这里每行Rank可以被视为一种排序条件,可以反映排序所定的相关性。

注:Rank值一般与特定的用户查询相关(如使用FREETEXT子句),并不针对一般意义性质的查询。

Rank排名统计信息

当一个索引一旦被建立,其相关统计信息即被收集用于排名。建立全文目录的处理过程并不直接地建立一个单一的索引结构。实际上,微软的全文检索引擎SQL Server ( MSFTESQL)服务创造中间索引,数据均被有效地索引。事实上,MSFTESQL能够合并多个索引成为一个大的索引且这一过程将被重复多次,MSFTESQL接着进行“主合并” ,它合并了所有的中间索引成为一个大型的主索引。

当计算排名查询结果集,其中一些统计数据,可以使用来自规模较小的中间索引,以满足查询和一些主索引。这将取决于是否有中间索引已经合并与否。因此,如果中间索引均不会被合并,排名的统计资料,可以在不同的精度。这也解释了为什么同样的查询,随着时间的推移,全文检索的索引数据的不断添加、修改、删除、并为规模较小的索引合并可以返回不同分级的结果。

为了最大限度地减少的面积索引和计算复杂性,统计数据往往会四舍五入处理。

下面的列表包括了一些常用的术语和统计信息值,这些值在计算排名中是很重要的:

◆Property
全文索引栏的行。

◆Document
该实体(Document)通过查询被返回。在SQL Server中,它相当于一行。一份Document可以有多个Property,就如同一行可以有多个建立了全文索引的栏位。

◆Index
单独的反转索引包含一个或多个Document。它可能完全分布在内存或磁盘上。当查询结果匹配时,许多查询统计对于个别的索引而言是相对的。

◆Full-Text Catalog
全文检索目录。为查询建立的中间索引的集合体,该目录对于SQL Server的管理员来说,要么被建立或者没有建立。

◆Word, Token or item 关键词
全文搜索引擎搜索的基本单元, Documents文本源被分词成了Word或Token,不同语言其分词结果是不相同的。

◆Occurrence
在文本属性(document property)中关键词Word的偏移量字长是由分词器所决定的。如在第一分词是在发生1处 ,接下来的在2处,依此类推。为了避免在短语和邻近的查询出现假负数结果,在最终的句点和段落尾巴归宿的引入发生较大的差异。

◆Catalog Key
包含关键字的Word和property的组合。

◆HitCount
在一行中有多少次关键字命中的次数。

◆IndexedRowCount
索引行的总数。这种计数是基于中间索引基础上计算出来的。这个数字在精确度上可以存在着很大的不同。

◆KeyRowCount
全文目录中包含关键词的总行数。

◆MaxOccurrence
某一行property的最大匹配值,它可能存放在一个全文目录中。

◆MaxQueryRank
MSFTESQL能够返回最大的Rank值为1000。

Rank排名计算问题

计算排名(Rank)的过程,取决于多项因素。不同的语言分词记号完全不同。例如,字符串“dog-house”可以被分成“dog”、“house” ,而另一种分词方法又可能把它分成“dog-house” 。这意味着,匹配和排序会基于语言的种类而有所不同,因为其中不仅有不同的关键字,还影响到文档Document的长度,而Document 长度差异可以直接影响到检索的排名。

诸如IndexRowCount这样的统计信息可以有很大的不同。例如,如果有一个全文目录在主索引上包含有20亿记录行,然而基于中间主索引的比较文件这个统计会有偏差值。

基于此种原因,我们推荐使用ALTER FULLTEXT CATALOG ... REORGANIZE DDL命令去重建索引,以供发布重新的统计信息使用。

MSFTESQL将自动地合并基于根据中间索引大小和数值的参数而计算出来的索引。

MaxOccurrence的值被归类到1到32个层级。这意味着,比如在一份Document中50个关键字长等同于100个字长,下面的表即为范式化的。因为该文档长度在毗邻表值为32和128倍数之间 ,但它们被同样有效地视作为具有相同长度 128 ( 32 < docLength < = 128 ) 。

{
16, 32, 128, 256, 512, 725, 1024, 1450, 2048, 2896, 4096, 5792, 8192, 11585,
16384, 23170, 28000, 32768, 39554, 46340, 55938, 65536, 92681, 131072, 185363,
262144, 370727, 524288, 741455, 1048576, 2097152, 4194304
}; 

这里top_n_by_rank是用于新预先计算的rank选项,当计算排名一些附加值时,可能会四舍五入,所以对于一些预先计算的rank值上可能会存在一些差异,此时要确保预先计算rank选项可用。


共2页: 1 [2] 下一页
【内容导航】
专题
SQL Server 2008/2005全解
SQL Server入门到精通
微软出价446亿美元收购雅虎
Use Case入门与实例
UML嵌入式设计
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本