加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

搜索技术建议

发布时间:2020-12-14 18:32:32 所属栏目:资源 来源:网络整理
导读:这更像是一个理论问题,而不是实践.我正在开发一个项目,这是一个非常简单的链接目录.整个模型类似于Dmoz或Yahoo目录,除了每个条目都有一些额外的属性. 我有分层分类法处理所有具有多对多关系的条目,所有条目现在都被分类到这些类别中,一切似乎都能正常工作.现
这更像是一个理论问题,而不是实践.我正在开发一个项目,这是一个非常简单的链接目录.整个模型类似于Dmoz或Yahoo目录,除了每个条目都有一些额外的属性.

我有分层分类法处理所有具有多对多关系的条目,所有条目现在都被分类到这些类别中,一切似乎都能正常工作.现在,如果没有搜索选项,目录有什么用?

以下是关于我的模型的更多细节:每个条目都有标题,描述,URL和几个社交档案:YouTube,Twitter,Flickr和其他几个.每个条目都可以附加一个徽标,以及一个隐藏的标记字段.此外,标题和描述以三种不同的语言存储.所以基本上我希望搜索结果为:

>相关(包括分类)
>可能有徽标的人
>可能是100%填写的配置文件

我已经尝试过Sphinx并且目前正在与Lucene合作,但似乎我在理论上没有得到正确的搜索.我希望填充的条目看起来应该高于其他条目,但我无法弄清楚得分.如果在整个描述中只有一个单词匹配,我不希望不相关的条目出现在顶部,因为标题更相关.

所以我的问题是 – 是否有任何书籍,技术或其他搜索引擎(如果Sphinx和Lucene不够好)你会推荐这件事吗?我不仅希望完全控制搜索结果及其排名,还能为访问者提供正确且相关的信息.

酷文章的链接也很受欢迎!

不,我不是想重建谷歌:)

谢谢 :)

解决方法

我很确定Lucene就足够了.我们已经解决了类似的任务并且做得很好.以下是一些提示,我可以建议您回顾一下Lucene.Net上的项目.

分类:

>类别在db中表示为整数键,因此每个文档都有多个类型为Number的字段“CATEGORY”的实例.例如文件:[1,2,5,10,’Wheel’] – 表示轮子属于每个类别.

不可搜索的字段(徽标,社交个人资料):

>当然,您可以在lucene的非索引字段中存储不可搜索的值.但我们已将所有与产品相关的信息存储在DB中,以避免重建Lucene的索引.所以Lucene只拥有产品ID和关键字段的索引但存储的值.

三种语言和多个领域:

>我们只有2种语言.因此,不同的产品标题可以存储在相同的Lucene文档中,并且与产品的单个ID相关(正如我在ID之前写的那样是指DB).这使您即使用户请求使用混合语言也可以搜索产品.>显然标题,标签和描述对搜索结果有不同的权重. Lucene通过分配场重来处理它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读