簡介:淘寶每次的搜索行爲在後端都會有大量的數據計算和處理纔會召回符合用戶需求的搜索結果,當面對的業務愈來愈多如何在工程體系上不斷演化知足不一樣業務的需求?特邀阿里巴巴技術專家介紹統一召回引擎,帶你瞭解如何應對~
特邀嘉賓:算法
項昭貴(項公)-阿里巴巴高級技術專家後端
視頻地址: https://summit.aliyun.com/2021/session/689session
阿里自研的整套搜索工程體系-AI Online Serving體系,目前支撐起海內外阿里電商所有的搜索、推薦、廣告業務,時刻置身大數據主戰場,引導成交佔據集團電商大盤主體;此外,做爲中颱技術中堅,AI·OS已經是包括電商、阿里雲、優酷、菜鳥、盒馬、釘釘等等在內全集團的基礎設施,更爲重要的是,AI·OS體系的雲產品(開放搜索和智能推薦)矩陣經過阿里雲服務於全球開發者,在穩定性和工程效率上都是行業領先水平。架構
左圖是搜索引擎HA3和推薦引擎BE的不一樣執行流程,咱們將各引擎功能抽象成算子,把基礎功能造成公共算子庫,用戶能夠直接複用和根據業務需求開發,造成右圖的Suez框架。併發
1.查詢流程DAG化框架
2.多種查詢表達方式機器學習
等.....分佈式
能夠靈活定製執行流程,加速業務迭代速度高併發
既要,又要,還要性能
數據規模膨脹體如今數據維度愈來愈多。例如電商搜索領域之前只考慮商家、商品兩個維度,如今還須要考慮物流、位置等維度。傳統引擎處理把這些數據在離線處理join成一張大寬表推給在線作索引構建和查詢服務,這會有個問題,極可能出現一個輔表數據更新致使大量的主表數據更新,從而出現寫數據擴大的問題,對在線服務的時效性有很大的挑戰,在一些場景上很可貴到知足,尤爲大促場景很難知足要求低延遲高時效的需求。
傳統解決方案:
將數據按必定維度拆分經過多個引擎實例去提供服務,由業務方來將一次查詢拆分紅多個請求訪問多個引擎,實現搜索結果。
存在的問題:
例如外賣平臺搜索,發現想搜索的店鋪由於配送時間或距離緣由沒有match上,致使意圖搜索菜單沒有體現,用戶體驗不佳;
數據規模膨脹另外一個體現是數據量變大,數據量變大致使單個搜索加載提供查詢的時間變多。
傳統解決方案:
一個是將索引進行擴裂,可能帶來請求的拆分和結果的合併,隨着個數愈來愈多,耗時愈來愈大,逐漸成爲技術瓶頸。另外一個是當搜索個數多時,整個集羣的穩定性和可用性受到損害,對用戶而言存在查詢結果不穩定狀況。
3.並行查詢,下降延遲的利器
把索引數據按必定維度切分,在處理用戶的查詢請求時能夠根據不一樣的切分並行的查詢,從而下降整個查詢的延遲,也避免了經過擴裂的方式帶來的問題。
4.向量召回,深度學習在召回階段應用
在信息豐富的今天,咱們的查詢引擎光靠文本查詢很難知足業務的需求
打造個性化推薦效果的召回引擎
開放搜索(OpenSearch)是基於阿里巴巴自主研發的大規模分佈式搜索引擎搭建的一站式智能搜索業務開發平臺,經過內置各行業的查詢語義理解、機器學習排序算法等能力,提供充分開放的引擎能力,助力開發者快速搭建更高性能、更高搜索基線效果的智能搜索服務。
本文內容由阿里雲實名註冊用戶自發貢獻,版權歸原做者全部,阿里雲開發者社區不擁有其著做權,亦不承擔相應法律責任。具體規則請查看《阿里雲開發者社區用戶服務協議》和《阿里雲開發者社區知識產權保護指引》。若是您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將馬上刪除涉嫌侵權內容。