美文网首页Android开发Android开发Android开发经验谈
云搜索服务在APP搜索场景的应用

云搜索服务在APP搜索场景的应用

作者: 程序员的那点事 | 来源:发表于2018-08-28 16:55 被阅读6次

搜索无处不在,尤其是在移动互联的今天。无论是社交,电商,还是视频等APP中,搜索都已经在其中扮演了重要的角色。作为信息的入口,搜索能帮用户从海量信息中找到想要的信息。在APP搜索的典型场景如下:

● 查找用户:根据输入匹配用户昵称,依据用户属性对搜索结果进行排序;

● 搜索话题:根据用户输入匹配话题,依据话题属性对搜索结果排序;

● 搜索帖子:根据用户输入匹配帖子内容,依据内容属性对搜索结果排序;

● 按照地理位置搜索或推荐:根据用户输入地址信息,转换为经纬度,在一定距离范围内匹配话题、内容中的地址信息,依据它们的属性对搜索结果排序。

事实上,尽管搜索的概念深入人心,但做好一个体验绝佳的搜索服务并不是一件容易的事。在性能和搜索精度等细节上,都存在不可忽略的难点,而这些往往又是提升搜索体验的关键。客户难点如下:

● 基于数据库的性能问题:

• 数据一般都是分库分表存储在MySql数据库中,搜索时存在关联操作,查询效率很低;

• 数据库的查询性能很难做到毫秒级,用户搜索体验十分不好。

基于数据库的匹配问题:

•数据库中,无法做到综合考虑查询条件的属性后排序;

• 数据库中无法过滤一些特殊字符,搜索过程中如果用户昵称中有特殊字符,就会不准确。

● 基于开源搜索引擎Elasticsearch的问题:

• 默认的BM25相关性打分排序无法确保搜索结果的合理性;

• 简单的分词器对特殊字符处理不当。

举个例子:搜索用户“大海”时为什么大V用户“kkw眼中de星辰大海”排在了“寻找那片大海”后面?

对于想要搭建APP搜索的客户来讲,从技术层面出发,实现方案如下。云搜索服务是基于Elasticsearch,能够在毫秒级完成TB级检索任务并返回结果,能够很好解决传统数据库的性能问题。

▽ 整体实现方案

在云搜索服务中,我们针对客户的搜索痛点,做了如下优化,帮助客户增强用户体验,提升效率,快速实现业务增长。

云搜索服务中搜索方案优化:

● 支持自定义词库,用户在词库中添加热搜词、关键词、网络常用词等来提高搜索输入的匹配精度;

● 支持自定义权重,用户可以根据业务定义不同查询条件的权重,来决定最终结果的排序;

● 支持越搜越准(规划),云搜索服务根据对搜索结果的点击行为,自动更新属性权重,达到最终结果排序更精准的效果。

在云搜索服务中,我们额外提供关于分词和词库的解决方案,帮助客户解决搜索精准度等问题。

云搜索服务分词、词库方案:

● 因为用户昵称和内容、话题表达的含义不同,针对不同字段可以采取不同的分词器,以便于提升匹配精准度。具体作用见下表所示:

● 采取使用简繁体分词器,还可以支持所有可搜索字段都能处理繁体字;

● 对于热搜词、关键词、网络常用词,经常随时间变化,因此,我们采取用户自定义词库的方式更新,来提高搜索精准度。

总体而言,云搜索服务在互联网APP的搜索场景有如下的优势:

● 一键化操作,无忧运维

所有主要操作都是一键可达,专业团队贴身运维,快速实现搭建搜索功能模块;

● 灵活弹性

按需申请,在线扩容,轻松满足业务增长需求;

● 灵活词库管理

支持自定义词库与拼音分词,支持词库热更新,无需重启,配置即生效,对最终用户无影响;

● 灵活分词、灵活权重

不同字段使用不同的分词方式,提高搜索准确率。不同条件设置不同权重,提高搜索精准度;

● 高效实时检索

毫秒级检索结果返回,新数据入库后,即刻能被检索到,提供良好的用户体验。

相关文章

  • 云搜索服务在APP搜索场景的应用

    搜索无处不在,尤其是在移动互联的今天。无论是社交,电商,还是视频等APP中,搜索都已经在其中扮演了重要的角色。作为...

  • 云搜索服务在APP搜索场景的应用

    搜索无处不在,尤其是在移动互联的今天。无论是社交,电商,还是视频等APP中,搜索都已经在其中扮演了重要的角色。 作...

  • 11.26

    搜索的本质:信息获取 (从门户——目录——搜索——推荐) (ndir) 搜索的应用场景: 1、文档/内容/资源搜索...

  • 什么是ASM

    ASM (苹果应用商店搜索市场) 苹果应用商店搜索市场:App Store Search Marketing,简称...

  • 工具篇--app统计工具

    ASO是什么 一般来讲,ASO指的是专门针对APP应用市场搜索系统的优化方法,它能提升APP在应用市场的搜索结果排...

  • Solr 6.2 搭建搜索引擎应用实践

    一、前言 在开发网站/App项目的时候,通常需要搭建搜索服务。比如,新闻类应用需要检索标题/内容,社区类应用需要检...

  • 详解支撑7亿用户搜索的百度图片处理收录中台

    导读:在百度搜索中,主要由“搜索在线”和“搜索离线”两部分构成,“在线”服务主要用于响应用户请求,“离线”服务则将...

  • 30-Swift之UISearchBar

    一、UISearchBar 的介绍和用途 搜索框 UISearchBar搜索框广泛应用于App中,在很多商品中能够...

  • iOS应用外搜索之 Core Spotlight 适配

    前言 前段时间为APP做了应用外搜索的适配,也就是iOS Core spotlight服务的支持,可以让用户在iP...

  • ASO优化是什么,如何提高应用商店排名?

    ASO是应用商店搜索优化”的简称;指的是各应用市场提升App在排行榜和搜索结果排名的过程。不过,在当前,ASO的定...

网友评论

    本文标题:云搜索服务在APP搜索场景的应用

    本文链接:https://www.haomeiwen.com/subject/zzrqwftx.html