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的分布式 ...
随机推荐
- Codeforces Round #368 (Div. 2) B. Bakery (模拟)
Bakery 题目链接: http://codeforces.com/contest/707/problem/B Description Masha wants to open her own bak ...
- Scene View Navigation
[Scene View Navigation] Hold the right mouse button to enter Flythrough mode. This turns your mouse ...
- Bash's ArithmeticExpression
[Bash's ArithmeticExpression] let command: let a=17+23 echo "a = $a" # Prints a = 40 let a ...
- 微软IOC容器Unity简单代码示例2-配置文件方式
@(编程) 1. 通过Nuget下载Unity 这个就不介绍了 2. 接口代码 namespace UnityDemo { interface ILogIn { void Login(); } } n ...
- I/O小总结
//判断不存在就创建目录 ,然后拷贝文件 DirectoryInfo di = null; if (!Directory.Exists(n.Attribute("value").V ...
- (剑指Offer)面试题35:第一个只出现一次的字符
题目: 在字符串中找出第一个只出现1次的字符,如输入“abaccdeff”,则输出b. 思路: 1.暴力遍历 从头开始扫描字符串中的每个字符,当访问某个字符时,取该字符与后面的每个字符相比较,如果没有 ...
- CentOS FireFox Flash Player
yum install *firefox* yum install flash-plugin
- STM32 DFU -- Device Firmware Upgrade
DFU Class Requests Get Status The Host employs the DFU_GETSTATUS request to facilitate synchronizati ...
- Codefoces 429 D. Tricky Function
裸的近期点对.... D. Tricky Function time limit per test 2 seconds memory limit per test 256 megabytes inpu ...
- Java浮点值拒绝服务漏洞危害分析
By 空虚浪子心 http://www.inbreak.net/ JAVA出了漏洞,CVE-2010-4476,会导致拒绝服务攻击.大家能从公告上,看到这样一段代码,挺长的.意思是只有开发人员写出这样 ...