华为开发者大会HDC.Cloud技术探秘:云搜索服务技术实践
admin
2021-01-05 03:27:52
0

华为开发者大会HDC.Cloud技术探秘:云搜索服务技术实践

搜索是一个古老的技术,从互联网发展的第一天开始,搜索技术就绽放出了惊人的社会和经济价值。随着信息社会快速发展,数据呈爆炸式增长,搜索技术通过数据收集与处理,满足信息共享与快速检索的需求。基于搜索技术,更是缔造了谷歌、百度、雅虎等一批知名企业。

搜索也是一个蓬勃发展技术,它串联起了问答、地图、小程序等各式各样新的应用形态。最近十几年间,也应用到了更早前并无直接关联的IT运维等领域。更是通过技术融合推动了AI、NoSQL、OLAP等相关技术的发展。

日前,华为开发者大会HDC.Cloud DevRunLive开发者技术沙龙上,华为云专家做了关于“云搜索服务技术实践”的技术演讲。本文为大家介绍业界流行的搜索应用场景,开源Elasticsearch的应用,以及华为云搜索服务在此基础上的一些增强。

一、什么是搜索?

华为开发者大会HDC.Cloud技术探秘:云搜索服务技术实践

搜索行为的基本流程

从技术上来看,搜索指的是:依据不同类型数据的条件组合,筛选出符合条件的记录(或称文档),并依照某种排序规则进行TopN的选择,最后进行呈现。

具体的过程,如上图所示。我们在生活中遇到的各种类型数据,像新闻文档、电话号码、年龄、体重、地图坐标等,在搜索系统各种会映射成不同类型的索引,比如文本一类的数据被映射成倒排表索引,数字一类的数据被映射成KD-Tree索引。还有一类特殊的数据,像图片、视频等多媒体信息,他们不能直接被表达为索引,而是通过机器学习表达为一个个向量数据,然后存储为搜索系统中的向量索引。

各种数据转换为索引后,我们就可以通过不同的条件描述组合来进行搜索了。通过索引来搜索相比一条条数据的过滤,通常速度会快好几个数量级,从而快速筛选出符合条件的数据条目。

最后,当筛选出来的数据条目非常多的时候,人难以一次阅读过来,还有有一个排序的过程,比如按照是否最新、猜测是否最符合搜索目的等方法挑选出其中的Top N条,最后进行呈现。

上述是从技术角度来阐述什么是搜索,从实际应用来看,更加容易体会搜索的形态以及价值。

华为开发者大会HDC.Cloud技术探秘:云搜索服务技术实践

搜索的部分应用

相关内容