Brief introduction:Every time Taobao searches, there will be a large amount of data calculation and processing in the back end before it recalls the search results that meet the needs of users. When faced with more and more businesses, how to continuously evolve the engineering system to meet the needs of different businesses? Specially invited Alibaba technical experts to introduce the unified recall engine, with you to understand how to deal with ~

Special Guests:

Xiang Zhaogui (Xiang Gong) — Alibaba Senior Technology Specialist

Video address:

AI Online ad-serving Engineering

The whole set of search engineering system developed by Ali itself — AI Online ad-serving system, currently supports all the search, recommendation, and advertising businesses of Ali’s e-commerce at home and abroad, and constantly places itself in the main battlefield of big data, leading transactions to occupy the main body of the group’s e-commerce market. In addition, as a middle technical backbone, AI, OS is including electricity, ali cloud, youku, rookie, box horse, nailing, etc, the infrastructure of wanda group, more importantly, AI, OS system cloud products (open search and intelligent recommendation) matrix by ali cloud service global developers, on the stability and efficiency of engineering is the industry leading level.

Unified recall engine

Unified engine architecture and evolution process

The figure on the left shows the different execution processes of search engine HA3 and recommendation engine BE. We abstract the functions of each engine into operators, and form the basic functions into a common operator library, which can BE directly reused and developed by users according to business needs, forming the Suez framework on the right figure.

Uniform recall engine features

1. Dagization of the query process

  • Unified with deep learning execution engines
  • The search function is abstracted as an operator
  • The unified operator library supports the reuse and development of operator granularity

2. A variety of query expressions

  • SQL
  • TuringSDK

, etc…

It can flexibly customize the execution process and accelerate the business iteration speed

Unify recall engine application practices

The challenge of recalling engines

Do it, do it, do it

  1. Data bloat: document data, algorithm data
  2. Deep learning applications: recall, rough sorting, fine sorting
  3. Stable and efficient: high availability, timeliness, low latency

Traditional solutions and problems

Data scale expansion is reflected in more and more data dimensions. For example, the e-commerce search field used to only consider the two dimensions of merchants and commodities, but now it also needs to consider the dimensions of logistics and location. Traditional engine processing these data in offline processing join into a big wide table to do online index build and query service, it will have a problem, is likely to appear a auxiliary table data update leads to a lot of the main table data update, to write data to expand the problem, has a great challenge on the timing of the online service, it is difficult to satisfy in some scenarios, In particular, it is difficult to meet the requirements of low delay and high timeliness in large promotion scenes.

Traditional solutions:

Divide the data according to a certain dimension to provide services through multiple engine instances, and the business side will split a query into multiple requests to access multiple engines to achieve search results.

Existing problems:

  1. Serialization of large amounts of data occurs;
  2. The data may be truncated, resulting in impaired performance;

For example, when searching on the takeout platform, it is found that the store to be searched is not on the match due to the delivery time or distance, which leads to the absence of the intended search menu and poor user experience.

Another manifestation of data size inflation is larger data sizes, which result in more time for a single search load to provide queries.

Traditional solutions:

One is to spread the index, which may lead to the split of requests and the merger of results. With the increasing number of indexes and the increasing time consumption, it has gradually become a technical bottleneck. On the other hand, when the number of searches is too large, the stability and availability of the whole cluster will be damaged, and the query results will be unstable for users.

Unified recall engine solution

  1. The engine supports multiple tables
  • By using an engine to load multiple tables online at the same time, each table’s index is built, updated, switched and loaded independently.
  • When querying, the global information, including store information and commodity information, can be obtained in one query through online multi-table JOIN, so as to match the recall results that best meet the needs of users.
  1. Use SQL to express the query process
  • Easy for developers to use
  • Reuse SQL ecological base functionality

3. Parallel queries, a powerful tool to reduce latency

By dividing the index data according to a certain dimension, the parallel query can be processed according to different segmentation when the user’s query request is processed, thus reducing the delay of the whole query and avoiding the problem caused by the way of spreading.

4. Vector recall, deep learning applied in the recall stage

In today’s information-rich world, it is difficult for our query engine to meet the needs of business only by text query

  • Proxima, a vector retrieval kernel developed by Damo Institute, is used to construct the vector index of very large scale data, which provides high performance online vector retrieval capability.
  • On the basis of the original text recall, adding vector recall can achieve both the recall rate and the accuracy of documents, and at the same time can be flexibly configured in each sorting route to achieve good search results

Unified recall engine application in recommended scenario

Create a recall engine with personalized recommendation effect

Unified recall engine cloud practice

Aliyun open search

OpenSearch is a one-stop intelligent search business development platform based on the large-scale distributed search engine independently developed by Alibaba. Through the built-in query semantic understanding, machine learning ranking algorithm and other capabilities of various industries, OpenSearch provides fully open engine capabilities. Help developers quickly build higher performance, higher search baseline effect of intelligent search services.

Application of Open Search in E-commerce Industry

  • The implementation of e-commerce industry search products, users do not need to explore all directions of technology, just according to the template access can have a better search service;
  • Built-in higher quality algorithm model, eliminating a lot of data annotation and model training work, directly built in the eluge system search algorithm ability;
  • Support personalized search and service capabilities, through the engine side of the multiple recall ability, to achieve search results, drop-down prompts, shading words and other important services;
  • NLP model, which supports user self-training, introduces open search and flexibly meets the needs of business developers.
  • Alibaba’s self-developed engine system can handle massive data, high concurrency and massive user requests, and its performance is superior to open source solutions.
  • According to the changes of e-commerce firms, the original capacity is constantly updated and iterated to provide more timely service guarantee;

Application of open search in educational search scenario

  • Support text index, image vector index, formula index multiple recall results, reduce text search, photo search scene without results;
  • Educate the full set of query analysis ability, solve the problem of low accuracy, customize the sorting script, and deeply optimize the sorting effect of recall results;
  • The vector + text recall flexibly configured by users can quickly improve the search system effect;
  • Sort plug-in development – CAVA language, stronger customization ability, easier maintenance, easy to achieve business sorting needs;
  • Pay according to quantity, effective immediately, guarantee the peak search stability at the same time, do not need to buy a lot of resources in advance, no cost burden;
  • Support millisecond-level response of hundreds of billions of volume data search, real-time data update can be seen in seconds;

Copyright Notice:The content of this article is contributed by Aliyun real-name registered users, and the copyright belongs to the original author. Aliyun developer community does not own the copyright and does not bear the corresponding legal liability. For specific rules, please refer to User Service Agreement of Alibaba Cloud Developer Community and Guidance on Intellectual Property Protection of Alibaba Cloud Developer Community. If you find any suspected plagiarism in the community, fill in the infringement complaint form to report, once verified, the community will immediately delete the suspected infringing content.