1.4.8 拼凑在一起(putting the pieces together)
putting the pieces together
在最高的级别,schema.xml结构如下,
<schema>
<types>
<fields>
<uniqueKey>
<defaultSearchField>
<solrQueryParser defaultOperator>
<copyField>
</schema>
明显的,这最重要的内容是在types和fields中,也就是字段类型和实际字段定义存在的地方.这些字段也可以通过copyFields补充,夹在字段fields和复制字段copyField之间的是唯一主见uniqueKey,默认搜索字段和默认查询操作.
选择合适的数据类型
用于一般的数字需要,使用可排序的字段类型,SortableIntField,SortableLongField,SortableFloatField和SortableDoubleField.这些字段类型将会按照数字排序,而不是按照字典顺序排序.
如果用户希望在数字类型上做频繁的范围查询,考虑使用TrieField类型.它以增加索引大小为成本的基础之上提供了更快速度的范围查询.
使用Text
通过文本搜索提供给你的用户最可能的结果集,这样妥善的处理文本的方式会使你得用户很高兴.
一种技术就是使用text字段作为关键字搜索的捕捉字段.大多数用户的搜索并不是很复杂,基本上都是一个简单的关键词搜索,你可以使用copyField来获取多种字段,然后将它们全部导入到一个简单的text字段用于关键词搜索.这个例子中的schema代表了一个商店,copyField字段用于存储cat,name,manu,features和includes到一个单独的字段text.另外,将ID复制到text中以防用户想要通过商品的id号来搜索.
另一种技术就是使用copyFiled,以不同的方式来使用同一个字段.假如你有一个字段author,表示作者的列表.像这样:
Schildt, Herbert; Wolpert, Lewis; Davies, P.
通过作者来搜索,你需要标记(tokenize)这个字段,转换小写,去掉标点符号:
schildt / herbert / wolpert / lewis / davies / p
对于排序,只需要为标记(untokenized)字段,转换小些,去掉标点符号.
schildt herbert wolpert lewis davies p
最后,对于分面(facet),只需要主要作者,使用StringField.
Schildt, Herbert
1.4.8 拼凑在一起(putting the pieces together)的更多相关文章
- 1.1 Introduction中 Putting the Pieces Together官网剖析(博主推荐)
不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ Putting the Pieces Together 拼在一起 This comb ...
- 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字段类型 ...
- 我看的公开课系列--《TED:对无知的追求》 by stuart firestein
http://open.sina.com.cn/course/id_1047/ What scientists do is not just collect data and collect fact ...
- IP, TCP, and HTTP--reference
IP, TCP, and HTTP Issue #10 Syncing Data, March 2014 By Daniel Eggert When an app communicates with ...
- 3 kafka介绍
本博文的主要内容有 .kafka的官网介绍 http://kafka.apache.org/ 来,用官网上的教程,快速入门. http://kafka.apache.org/documentatio ...
- Kafka官方文档翻译——简介
简介 Kafka擅长于做什么? 它被用于两大类应用: 在应用间构建实时的数据流通道 构建传输或处理数据流的实时流式应用 几个概念: Kafka以集群模式运行在1或多台服务器上 Kafka以topics ...
- 详谈kafka的深入浅出
第一:kafka的介绍,kafka官网:http://kafka.apache.org/ http://www.jasongj.com/2015/03/10/KafkaColumn1/ kafka的简 ...
- Kafka介绍 (官方文档翻译)
摘要:Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动 ...
- [转帖]IOC Security: Indicators of Attack vs. Indicators of Compromise
IOC Security: Indicators of Attack vs. Indicators of Compromise https://www.crowdstrike.com/blog/ind ...
随机推荐
- 使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露
1.eclipse mat插件的安装 Help->Install new software,如下图,一直下一步即可 2.AndroidStudio dump heap 3.AndroidStud ...
- POP3&SMTP&IMAP
[POP3&SMTP&IMAP] IMAP是什么? IMAP,即Internet Message Access Protocol(互联网邮件访问协议),您可以通过这种协议从邮件服务器上 ...
- hdu 1176 免费馅饼(数塔类型)
http://acm.hdu.edu.cn/showproblem.php?pid=1176 免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory ...
- ML 徒手系列 拉格朗日乘子法
拉格朗日乘子法是解决极值问题的方法. 本方法是计算多元函数在约束条件下的极值问题的方法. 1.多元函数与约束问题 如下图所示,f(x,y)为多元函数,g(x,y)=c为约束条件.目的是计算在约束条件下 ...
- iOS 中self和super如何理解?
或许你理解self和super都是指的是类的对象 self指的是本类的对象,而super指的是父类的对象,但是事实情况呢,可能有些和你想象的不一样? 简单看下下面例子: @interface Pe ...
- 找不到类型或命名空间 datarowview
在绑定数据时经常会用到这个句程序:<%# DataBinder.Eval(Container.DataItem,"xxxx")%>或者<%# DataBinder ...
- 转载php在IIS中运行
在IIS中配置PHP运行环境简单步骤 安装 IIS 7.0 打开 Control Panel\Programs\Programs and Features\Turn Windows features ...
- [置顶] DataGridView控件---绑定数据方法
DataGridView控件是在windows应用程中显示数据最好的方式,它只需要几行简短的代码就可以把数据显示给用户,同时又支持增.删.改操作.今天将自己总结的增加数据的方法总结分 ...
- My集合框架第六弹 左式堆
左式堆(Leftist Heaps)又称作最左堆.左倾堆.左式堆作为堆的一种,保留了堆的一些属性. 第1,左式堆仍然以二叉树的形式构建: 第2,左式堆的任意结点的值比其子树任意结点值均小(最小堆的特性 ...
- 联想硬盘分区表格式修改 GPT -> MBR
知识点分析:随机预装Win8的电脑,磁盘为GPT格式的,如果需要安装Win7等早期版本系统,需要转换为MBR格式的,使用Diskpart命令即可完成转换. 操作步骤: 注意:转换磁盘格式需要清空磁盘中 ...