solr的域
solrhom相当于存放数据的地方,里面一个个文件相当于数据库,每个数据库里面有两个文件夹,一个data,一个conf,conf下有一个schema.xml文件,配置域,相当于表的字段。
solr中内置了许多的字段类型
配置域
域相当于数据库的表字段,用户存放数据,因此用户根据业务需要去定义相关的Field(域),一般来说,每一种对应着一种数据,用户对同一种数据进行相同的操作。
域的常用属性:
- name:指定域的名称
- type:指定域的类型
- indexed:是否索引
- stored:是否存储
- required:是否必须
- multiValued:是否多值
一般域的配置:
<field name="item_goodsid" type="long" indexed="true" stored="true" />
域为item_goodsid我们在使用spring data solr 的时候会用到这个域
type就是指定这个域存放的数据类型
indexed=true就是需要索引
复制域
复制域的作用在于将某一个Field中的数据复制到另一个域中
一般 不需要存储,需要索引,type为ik分词
<!-- 复制域 -->
<field name="item_keywords" type="text_ik" indexed="true" stored="false" multivalued="true"/>
<copyField source="item_title" dest="item_keywords"/>
<copyField source="item_category" dest="item_keywords"/>
<copyField source="item_seller" dest="item_keywords"/>
<copyField source="item_brand" dest="item_keywords"/>
动态域
动态域的配置:
<dynamicField name="attr_*" type="string" indexed="true" stored="true" multiValued="true"/>
主键
<uniqueKey>id</uniqueKey>
文档的唯一标识,对应field里name="id"的那个字段, 必须填写这个field(除非该field被标记required="false"),否则solr建立索引报错。
常用的类型
String--->solr.StrField
boolean--->solr.BoolField
int--->solr.TrieIntField
float--->solr.TrieFloatField
long--->solr.TrieLongField
double--->solr.TrieDoubleField
text_general--->solr.TextField
自定义的域(参考)
<schema> 。。。。。。 <!-- 基本字段 -->
<!-- 商品id -->
<field name="item_goodsid" type="long" indexed="true" stored="true"/>
<!-- 商品标题 -->
<field name="item_title" type="text_ik" indexed="true" stored="true"/>
<!-- 商品价格 -->
<field name="item_price" type="double" indexed="true" stored="true"/>
<!-- 商品图片 -->
<field name="item_image" type="string" indexed="false" stored="true" />
<!-- 商品种类 -->
<field name="item_category" type="string" indexed="true" stored="true" />
<!-- 商品卖家 -->
<field name="item_seller" type="text_ik" indexed="true" stored="true" />
<!-- 商品 品牌 -->
<field name="item_brand" type="string" indexed="true" stored="true" /> <!-- 复制域 标题+种类+卖家+品牌 -->
<field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
<copyField source="item_title" dest="item_keywords"/>
<copyField source="item_category" dest="item_keywords"/>
<copyField source="item_seller" dest="item_keywords"/>
<copyField source="item_brand" dest="item_keywords"/> <!-- 动态域 -->
<dynamicField name="item_spec_*" type="string" indexed="true" stored="true" />
</schema>
{
"id": "1",
"item_goodsid": 1111,
"item_title": "128G的华为p30",
"item_price": 3888.8,
"item_image": "http://1.jpg",
"item_category": "手机",
"item_seller": "张三店铺",
"item_brand": "华为",
"item_spec_size": "3.5mm"
}
solr的域的更多相关文章
- 【转】solr+ajax智能拼音详解---solr跨域请求
本文转自:http://blog.csdn.net/wangzhaodong001/article/details/8529090 最近刚做完solr的ajax智能拼音.总结一下. 前端:jQuery ...
- jquery 请求apache solr 跨域解决方案
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script> ...
- solr学习之域的管理与中文分析器配置
该文使用 Centos6.5 64 位 solr4.10.3 IK-Analyzer中文分析器 一.solr域 在solr中域的概念与lucene中域的概念相同,数据库的一条记录或者一个文 ...
- solr教程
转载请注明出处:http://www.cnblogs.com/zhuxiaojie/p/5764680.html 本教程基于solr5.5 前言 至于为什么要用solr5.5,因为最新的6.10,没有 ...
- Solr单机部署和集群部署
用到的相关jar包:http://pan.baidu.com/disk/home#list/path=%2Fsolr Solr目录结构 Solr 目录 Contrib :solr 为了增强自身的功能, ...
- 企业级搜索引擎Solr 第三章 索引数据(Indexing Data)[1]
转载:http://quweiprotoss.wap.blog.163.com/ Push data to Solr or have Solr pull it 尽管一个应用通过HTTP方式与Solr通 ...
- 企业级搜索引擎Solr 第三章 索引数据(Indexing Data)[3]
转载:http://quweiprotoss.wap.blog.163.com/ Solr Cell是一个针对Tika的简单适配器,它由一个SAX ContentHandler组成,ContentHa ...
- Solr配置步骤
1. 配置步骤说明 (1)配置Solr服务器. (2)配置SolrHome.(Solr服务的主目录,磁盘) (3)在Solr服务器中加载SolrHome. (4)java程序访问Solr服务器,实现全 ...
- Solr 03 - Solr的模式设计与优化 - 最详细的schema.xml模式文件解读
目录 1 关于schema.xml文件 2 解读schema.xml文件 2.1 field - 配置域 2.2 fieldType - 配置域类型 2.3 copyField - 配置复制域 2.4 ...
随机推荐
- jvisualvm 连接 jstatd 远程监控 jvm 或 Visual GC提示"不受此JVM支持“
Visual GC提示"不受此JVM支持",可以使用此方法解决. 一.添加配置文件 jstatd.all.policy [root@localhost /]# cd /usr/lo ...
- 二叉搜索树的最近公共祖先的golang实现
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 x 是 p.q 的祖先且 x ...
- Django的认证系统
Django自带的用户认证 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Djang ...
- Python开发【内置模块篇】日志模块
logging配置 import logging logging.basicConfig(level=logging.WARNING, format='%(asctime)s %(filename)s ...
- koa 中间件
什么是 Koa 的中间件 通俗的讲:中间件就是匹配路由之前或者匹配路由完成做的一系列的操作,我们就可以 把它叫做中间件. 在express中间件(Middleware)是一个函数,它可以访问请求对象( ...
- MySQL之库相关操作
一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等performance_schema: MyS ...
- 做自己的docker镜像(基于ubuntu:16.04)
基于ubuntu:16.04 apt-get update -y apt-get install sudo -y 换源 sudo apt-get install vim sudo vim /etc/a ...
- 18 python 初学(time、random 模块)
# _author: lily # _date: 2019/1/13 import time import datetime print(help(time)) # print(time.time() ...
- 初识服务发现及Consul框架的简单使用
初识服务发现及Consul框架的简单使用 1.什么是服务发现? 服务发现组件记录了(大规模)分布式系统中所有服务的信息,人们或者其它服务可以据此找到这些服务. DNS 就是一个简单的例子. 当然, ...
- 将docker镜像上传到docker hub