1.4.1.Documents,Fields和Schema概述

Documents,Fields和Schema概述

  solr的基本前提是非常简单,你可以给它很多信息,然后可以向它提出问题,获取你想要的问题的信息.所有信息输入的地方就叫做索引或者更新.当你提出问题时,叫做查询.

  一种理解solr工作原理的方式就是考虑一本食谱的活页本.每次添加一个新的食谱,就会在书的最后更新索引.需要列出食谱的每一项原料和当前添加的页码.假设你添加了100个食谱,使用索引你将很快找到你想要的食谱详细信息.

  solr允许使用多个不同的字段和类型建立索引,上面的例子中使用了一个字段-ingredients(原料).你也可以添加其他字段,如食谱制作风格-

 Asian,Cajun,vegan.也可以添加一个字段-准备时间(preparation).

solr眼中的世界

  solr的基本单元信息是document,document是一组描述事物的数据.食谱的document可以包含ingredients(原料),instructions(说明),preparation time(准备时间),cook time(烹饪时间),toos(需要工具)等等.一个人的document可以包含字段-名称(name),喜爱颜色,鞋子大小等.

  在solr的世界中,documents是由字段组成的.字段可以更多的指定模块信息.字段可以包含不同种类的数据,一个name字段可以是text(字符数据).鞋子的大小可能是一个浮点数,如6或者9.5,所以这个字段的定义比较灵活(你可以定义鞋子大小的字段为一个text字段而不是一个浮点数).但是如果恰当的定义字段,会提高查询效率.

  可以通过指定solr的字段类型来告诉字段数据的类型.这个字段类型告诉solr如何解释这个字段,并且如何去查询.

  当添加一个document时,solr会从document的字段中拿到数据信息并添加到索引中去.当执行查询时,solr会快速查询索引,返回匹配的文档(document)结果集.

字段分析(Field Analysis)

  字段分析告诉solr在建立索引时怎么处理传入的数据.对这个处理过程一个比较精确的描述就是"处理"(加工)或者是"消化".不过官方的名字是analysis.(分析).

  注意事项,例如,一个person的文档中个人简介(biography)字段,简介的每一个词语都会被索引,所以你可以快速找到你想要查找相关简介的人物.

  然而,简介中可能包含很多的我们不需要关心的词并且不想添加到索引中去给索引教程负担--就像"the","a","to"等等.更深一步,假设简介这个字段包含"Ketchup"这样的词,如果用户查询ketchup,你需要让solr检索到这个"Ketchup",即使它是大写.

  这种解决方法就是对字段做字段分析,对于每一个简介字段,你需要告诉solr如何把分离的简介分解成词语,也应该告诉solr将所有的词语都小写化,还要告诉solr删除重音符号.

 

posted @ 2015-02-19 21:16  勿妄  阅读(339)  评论(0编辑  收藏  举报