欢迎来到天天文库
浏览记录
ID:35975160
大小:29.40 KB
页数:5页
时间:2019-04-29
《断字符和词干分析器.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、断字符和词干分析器用于对所有全文索引数据执行语言分析。语言分析将涉及到查找词边界(断字)和组合动词(词干分析)。断字符和词干分析器是特定于语言的,并且各语言的语言分析规则也各不相同。对于给定语言,“断字符”通过根据语言的词法规则确定词的边界位置来标识各个词。每个词(也称为“标记”)使用压缩表示形式插入全文索引以减少其大小。“词干分析器”根据该语言的规则生成特定词的变形形式(例如,“running”、“ran”和“runner”是单词“run”的不同形式)。使用特定于语言的断字符,能够使得为该语言生成的词更加准确。如果断字符用于整个语系而不是特定的
2、子语言,将使用该语系中的主要语言。例如,使用法语断字符来处理加拿大法语文本。如果某一特定语言没有可用的断字符,将使用非特定语言断字符。使用非特定语言断字符时,词将在非特定语言字符(如空格和标点符号)处断开。断字符注册要想使用某种语言的断字符,就必须为其进行注册。对于已注册的断字符,关联的语言资源(词干分析器、干扰词(非索引字)和同义词库文件)也将可用于全文索引和查询操作。若要查看当前在SQLServer中注册了断字符的语言列表,请使用以下Transact-SQL语句:SELECT*FROMsys.fulltext_languages如果您添加、删
3、除或更改了断字符,则需要刷新为全文索引和查询而支持的MicrosoftWindows区域设置标识符(LCID)列表。有关详细信息,请参阅如何更改已注册的断字符和筛选器的列表(Transact-SQL)。SQLServer2008附带有若干个经过许可的第三方断字符。您可以手动加载若干种语言(丹麦语、波兰语和土耳其语)的附加的第三方断字符(以及词干分析器)。有关详细信息,请参阅如何加载经过许可的第三方断字符。Full-TextLanguage选项对于SQLServer的本地化版本,SQLServer安装程序将把defaultfull-textlang
4、uage选项设置为服务器的语言(如果存在合适的匹配项)。对于SQLServer的非本地化版本,defaultfull-textlanguage选项为“英语”。创建或修改全文索引时,可以为每个全文索引列指定不同的语言。如果未指定列的语言,默认值是配置选项defaultfull-textlanguage的值。有关详细信息,请参阅defaultfull-textlanguage选项。注意在单个全文查询函数子句中列出的所有列必须使用同一语言,除非在查询中指定了LANGUAGE选项。所查询的用于全文索引列的语言确定了对全文查询谓词(CONTAINS和FRE
5、ETEXT)和函数(CONTAINSTABLE和FREETEXTTABLE)的参数执行的语言分析。对列创建全文索引时选择语言创建全文索引时,建议为每个索引列都指定一种语言。如果未为列指定语言,则将使用系统默认语言。某列的语言确定使用什么断字符和词干分析器对该列创建索引。另外,该语言的同义词库文件将由针对相应列的全文查询使用。如果要选择用于创建全文索引的列语言,有几个事项需要注意。这些注意事项均与全文引擎如何对文本进行词汇切分再编制其索引有关。有关详细信息,请参阅创建全文索引时选择语言的最佳实践。查看列的断字符语言·如何查看或更改全文索引的属性(S
6、QLServerManagementStudio)·sys.fulltext_index_columns(Transact-SQL)other复制SELECT'language_id'AS"LCID"FROMsys.fulltext_index_columns;SQLServer2008中新断字符的影响SQLServer2008包括50多种不同语言的断字符,其中的23种也存在于SQLServer2005中。只有英语、朝鲜语、泰语和中文(所有形式)的断字符保持不变。对于其他语言,SQLServer2008引入了新一代断字符,这些断字符与早期断字符相
7、比具有更好的语言规则并且更加准确。新断字符的行为可能与导入的SQLServer2005全文索引中的断字符行为稍有不同。如果全文目录是在SQLServer2005数据库升级到SQLServer2008时导入的,这一点将非常重要。该全文目录中全文索引使用的一种或多种语言现在可能与新断字符关联。有关详细信息,请参阅全文搜索升级。SQLServer2005中支持的语言的断字符版本只有英语、朝鲜语、泰语和中文(所有形式)的断字符保持不变。下表列出了存在于SQLServer2005中的断字符,并指示在SQLServer2008中是否已更新这些断字符。有关所有
8、SQLServer2008断字符的完整列表,请参阅sys.fulltext_languages(Transact-SQL)。注意默认情况
此文档下载收益归作者所有