[发明专利]一种基于多个数据源的废旧行业搜索系统以及其方法在审
| 申请号: | 201611116560.9 | 申请日: | 2016-12-07 |
| 公开(公告)号: | CN106599153A | 公开(公告)日: | 2017-04-26 |
| 发明(设计)人: | 刘宁;周国辉;王清霞;姜林 | 申请(专利权)人: | 河北中废通网络技术有限公司;北京再塑宝科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/445 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 050031 河北省石家庄市*** | 国省代码: | 河北;13 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 数据源 废旧 行业 搜索 系统 及其 方法 | ||
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种基于多个数据源的废旧行业搜索系统以及其方法。
背景技术
目前,有关于solrCloud集群更新配置的方式的研究,主要集中在solr动态字段的使用,重启solr搜索服务上,从而达到更新配置的目的。
在solrCloud集群模式下,schema.xml和solrconfig.xml等配置文件都是由zookeeper集群统一管理,所以本地项目中只保留单一shard分片,各个索引库(collections)分片保存位置是solr根目录下的solr-home/下,该目录下有一个solr.xml配置文件,然后,随便进入一个shard目录,比如,本发明中废旧行业的某网站搜索索引目录,可以看到只有一个data目录和一个core.properties文件,其中data目录存放solr备份的索引数据、core.properties文件,通过linux的vim命令编辑模式下,可以看到core.properties文件保存了shard序号,索引库(collections)名称,核子节点的名称等等。
因此,更新配置必须将配置文件更新到zookeeper集群才可以正常生效,首先登录zookeeper,删除原有的schema.xml文件,然后把配置上传,上传完成后并不是立即生效的,上传文件之后,通过solr admin管理界面都可以看到文件内容更新了,有2种方法可以查看配置文件是否更新。
第1方法通过clouds/tree/configs/configure目录可以查看到文件内容更新。
第2方法通过jupai/files目录可以查看到文件内容更新。
但是,当update、query时会出错,浏览schema.xml配置文件中的字段时没有更新,很明显配置没有生效。所以,要依次重启solrCloud集群,首先说明这个方法是有效的,但是比较繁琐,并且重启solrCloud集群对搜索系统有很大风险,进而影响用户对网站的搜索体验。
那么,solr动态字段可以解决频繁启动solrCloud集群的问题,在solr索引时候,动态字段允许在schema.xml中定义没有明确定义的字段(field),如果发现忘记定义一个或者多个字段,这个时候solr的动态字段正好可以解决这个问题,并且可以使得solr搜索系统更加灵活,通用性更加强健。
动态字段和常规字段的唯一区别是,其名称中比常规字段多一个通配符。当创建索引的时候,如果一个字段没有匹配到任何明确定义的字段,那么就可以尝试去匹配动态字段。
如果使用solr中<dynamicField>声明进行定义字段规则,那么当商品中的一个字段名称在schema.xml配置文件没有明确定义,但是在匹配schema.xml配置文件中某个动态字段的前缀或者后缀时,solr可以通过这个动态字段定义的字段规则,理解应该使用哪种数据类型。
这里是一个动态字段定义的示例:<dynamicField name="*_s" type="string" indexed="true" stored="true"/>,这个动态字段声明告诉solr,不管什么时候,当它看见商品中一个字段的名称以“_s”结尾,并且这个字段在schema.xml配置文件中没有明确定义,那么应该用这个字段的名称动态创建一个字符串类型的字段。
但是,在动态字段name属性中,存在以下两个问题:1)用通配符去匹配只能在开头或者结尾有一个星号“*”,更长的模式会先被匹配。2)如果相同大小的模式同时可以匹配,那么只匹配在schema.xml配置文件中第一个出现的。
本发明对现有技术方案存在的问题进行优化处理,将schema.xml配置文件,在常规静态字段中定义多个数据源模式,比如,字符串类型(string)的定义s1、s2、s3、s4、s5等多个数据源,设计示例如下所示:
<field name="s1" type="string" indexed="true" stored="true"/>
<field name="s2" type="string" indexed="true" stored="true"/>
<field name="s3" type="string" indexed="true" stored="true"/>
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河北中废通网络技术有限公司;北京再塑宝科技有限公司,未经河北中废通网络技术有限公司;北京再塑宝科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611116560.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据缓存方法及系统
- 下一篇:一种产品排名方法





