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删除重音符号.
1.4.1.Documents,Fields和Schema概述的更多相关文章
- 1.4 Documents,Fields和Schema设计--目录
1.4.1.Documents,Fields和Schema概述 1.4.2 solr字段类型 1.4.2 solr字段类型--(1.4.2.1)字段类型定义和字段类型属性 1.4.2 solr字段类型 ...
- Solr官方文档翻译-About & Getting Started
关于(About) 官方文档介绍了所有的Apache Solr实现的重要特性和功能.它是免费的,可以到http://lucene.apache.org/solr/下载. 为了更加的深入和广泛,设计成一 ...
- salesforce 零基础开发入门学习(十一)sObject及Schema深入
sObject在salesforce中占有举足轻重的位置,除了在数据库中数据以外,我们还应该关心一下他的元信息.元信息封装在Schema命名空间内. 作为面向对象语言,我们可以畅想一下如果我们是设计人 ...
- ElasticSearch 概述
简介 Elasticsearch是一个基于Lucene的开源搜索引擎.Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RES ...
- 关于XML的Schema文件讲解
1 Schema概述 1.1 什么是Schema l Schema是新的XML文档约束:DTD出现的比较早. l Schema要比DTD强大很多: l Schema本身也是XML文档,但Sche ...
- JavaScripts学习日记——XML DTD Schema
今日关键词: XML DTD Schema 1.XML 1 XML的概述 1.1 什么是XML XML全称为Extensible Markup Language,意思是可扩展的标记语言.XML语法上和 ...
- Day06 DOM4J&schema介绍&xPath
day06总结 今日内容 XML解析之JAXP( SAX ) DOM4J Schema 三.XML解析器介绍 操作XML文档概述 1 如何操作XML文档 XML文档也是数据的一种,对数据的 ...
- 轻量级OLAP(二):Hive + Elasticsearch
1. 引言 在做OLAP数据分析时,常常会遇到过滤分析需求,比如:除去只有性别.常驻地标签的用户,计算广告媒体上的覆盖UV.OLAP解决方案Kylin不支持复杂数据类型(array.struct.ma ...
- ElasticSearch的基本用法与集群搭建
一.简介 ElasticSearch和Solr都是基于Lucene的搜索引擎,不过ElasticSearch天生支持分布式,而Solr是4.0版本后的SolrCloud才是分布式版本,Solr的分布式 ...
随机推荐
- 安装完 MySQL 后必须调整的 10 项配置(转)
英文原文:10 MySQL settings to tune after installation 译文原文:安装完 MySQL 后必须调整的 10 项配置 当我们被人雇来监测MySQL性能时,人们希 ...
- MYSQL数据库重点:流程控制语句
1.BEGIN ... END复合语句:包含多个语句.statement_list 代表一个或多个语句的列表.statement_list之内每个语句都必须用分号(:)来结尾. [begin_labe ...
- Centos 64位安装 EPEL源
#直接在线安装rpm包 rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm # ...
- LeetCode292:Nim Game
You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...
- CTE初识
微软从SQl2005起引入了CTE(Common Table Expression)以强化T-SQL.这是一个类似于非持久视图的好东西. 正常的SQL语句: select * from person. ...
- A Dream
A Dream 2013年10月20日,成都,天气阴,铜牌16.离2012年10月14日长春现场赛刚好隔了一年,刚看了下去年写的总结http://blog.csdn.net/cc_again/arti ...
- centOS安装openoffice
centOS安装openoffice的方法: yum install openoffice.org-writer yum install openoffice.org-calc yum install ...
- android开发中关于VersionCode和VersionName
Google为APK定义了两个关于版本属性:VersionCode和VersionName,他们有不同的用途. VersionCode:对消费者不可见,仅用于应用市场.程序内部识别版本,判断新旧等用途 ...
- js 原型模型重写1
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 有关于CSS的面试题和练习
如果你处在一个需要面试别人有关于CSS方面技巧和知识,一时想起来还真有点难.我把我能想出来的整理在一起,提供给大家参考. 练习要做 正如他们说的,大家实际工作很重要.当然,大家通过工作练习更为重要.这 ...