1.4.2 solr字段类型--(1.4.2.2)solr附带的字段类型

1.4.2 solr字段类型

  (1.4.2.1) 字段类型定义和字段类型属性.

  (1.4.2.2) solr附带的字段类型

  (1.4.2.3) 使用货币和汇率

  (1.4.2.4) 使用Dates(日期)

  (1.4.2.5) 使用枚举字段

  (1.4.2.6) 使用外部文件和程序

  (1.4.2.7) 字段属性使用案例

 

solr附带的字段类型

  下面列出的字段类型是solr可以使用的类型.其中包org.apache.solr.schema里边包含的所有类都在下面:

class 描述
BCDIntField 二进制编码的十进制(BCD)整数(integer),BCD是一种相对低效率的编码.提供的好处是快速的小数计算和快速转换为字符串.
BCDLongField 二进制编码的十进制长整数(long)
BCDStrField 二进制编码的十进制字符串
BinaryField 二进制数据
BoolField 包含true或false,第一个字符为"1","t","T"的值会被解释为true.其他的被解释为false.
ByteField 包含字字节数组,已弃用.使用TrieIntField代替.
CollationField 支持Unicode排序规则进行排序和范围查询,如果你想要使用ICU4J,ICUCollationField会是一个更好的选择.参考 Unicode Collation
CurrencyField 支持货币和汇率
DateField 代表一个时间点精确到毫秒,
DoubleField Double (64-bit IEEE floating point).
ExternalFileField 磁盘上的文件抽出值,
EnumField

允许定义枚举的集合,集合的值可能不是很容易通过字母或者数字的顺序排序(如严重性列表).这个字段类型需要一个配置文件

罗列出字段值的合适的顺序.

FloatField Floating point (32-bit IEEE floating point).
ICUCollationField 支持Unicode排序规则进行排序和范围查询
IntField Integer (32-bit signed integer)
LatLonType 空间检索:一个纬度/经度坐标对.
LongField Long integer (64-bit signed integer)
PointType 空间检索:任意的n维点. 有用的搜索源,如蓝图CAD图纸.
PreAnalyzedField

提供了一种方式,发送到Solr的序列化令牌,任意的独立存储在字段中的值,这些信息存储和索引无需任何额外的文本处理.在使用Lucene的TokenStream提供的所有的丰富的属性时,如果你想要提交字段的内容,这些内容已经被已存在的外部文本处理管道处理,如tokenized, annotated, stemmed, inserted synonyms, 等.采用这个字段是非常有用的.

 

 RandomSortField  不包含一个值,基于这个字段的排序将会返回一个随机的顺序,动态字段使用这个功能
 ShortField  短整型,已废弃,使用TrieIntField代替
 SortableDoubleField  可排序字段提供正确的数字排序,如果使用普通类型(DoubleField,IntField等),将会按照字典顺序排序而不是数字值大小.
 SortableFloatField  数字顺序排序的浮点
 SortableIntField  数字排序的整数
 SortableLongField  数字排序的长整数
 SpatialRecursivePrefixTreeFieldType  简称RPT,空间检索:接收纬度逗号经度字符串的值或者其他形状WKT空间搜索的格式.
 StrField  字符串(UTF-8编码或者unicode)
 TextField  文本
 TrieDateField  日期字段,可用于 Lucene TrieRange处理.
 TrieDoubleField  Lucene TrieRange处理的Double字段.
 TrieField  如果使用这个类型,必须使用"type" 属性.属性值可以是integer, long, float,double,date.和其他Trie字段使用一样.
 TrieFloatField  Lucene TrieRange处理的Float字段
 TrieIntField  Lucene TrieRange处理的Int字段
 TrieLongField  Lucene TrieRange处理的Long字段
 UUIDField  统一唯一标记符,

  MultiTermAwareComponent已经被加入到schema.xml的相关的solr.TextField的记录中.如(wildcards,regex,prefix,range等),允许针对多个term查询使其自动小写转换.

  更进一步,你可以在schema.xml中指定属性   analyzerType="multiterm",如果没有指定,analyzer将会根据具体的属性来处理字段.

posted @ 2015-02-10 11:44  勿妄  阅读(3234)  评论(0编辑  收藏  举报