CN108345600B - 一种搜索应用的管理、数据搜索方法及其装置 - Google Patents

一种搜索应用的管理、数据搜索方法及其装置 Download PDF

Info

Publication number
CN108345600B
CN108345600B CN201710050694.3A CN201710050694A CN108345600B CN 108345600 B CN108345600 B CN 108345600B CN 201710050694 A CN201710050694 A CN 201710050694A CN 108345600 B CN108345600 B CN 108345600B
Authority
CN
China
Prior art keywords
data
user
search
object data
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710050694.3A
Other languages
English (en)
Other versions
CN108345600A (zh
Inventor
尹利民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710050694.3A priority Critical patent/CN108345600B/zh
Publication of CN108345600A publication Critical patent/CN108345600A/zh
Application granted granted Critical
Publication of CN108345600B publication Critical patent/CN108345600B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种搜索应用的管理、数据搜索方法及其装置,该搜索应用的管理方法包括:为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理。通过本申请的技术方案,针对不同类型的应用,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的,提高系统扩展性。通过系统和数据结构的复用,将整个搜索搭建链路打通,使得搜索搭建变得更加简单、快捷,从而提升业务的更新、上线效率、提高搜索效率。

Description

一种搜索应用的管理、数据搜索方法及其装置
技术领域
本申请涉及互联网技术领域,尤其涉及一种搜索应用的管理、数据搜索方法及其装置。
背景技术
随着电子商务的不断发展,越来越多的用户选择在网上购物,用户通过客户端访问服务器,从而方便地选择商品。在很多情况下,用户可以在客户端的搜索栏上输入商品的关键词,服务器在接收到搜索请求后,查询该关键词对应的商品,并将查询到的商品返回给客户端,从而将用户搜索的商品显示给用户。
发明内容
本申请提供一种搜索应用的管理方法,所述方法包括:
为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;
为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;
为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;
为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理。
本申请提供一种数据搜索方法,应用于服务器,所述方法包括:
接收来自客户端的搜索请求,所述搜索请求携带应用标识;
利用所述搜索请求获取对象数据、与所述应用标识对应的页面组件;
利用所述对象数据以及所述页面组件生成展示页面;
将所述展示页面返回给客户端,以使所述客户端显示所述展示页面。
本申请提供一种数据搜索方法,应用于客户端,所述方法包括:
向服务器发送搜索请求,所述搜索请求携带应用标识;
接收所述服务器返回的展示页面;其中,所述展示页面是所述服务器在利用所述搜索请求获取到对象数据、与所述应用标识对应的页面组件之后,利用所述对象数据以及所述页面组件生成的;
显示所述展示页面。
本申请提供一种搜索应用的管理装置,所述装置包括:
第一创建模块,用于为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;
配置模块,用于为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;
第二创建模块,用于为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;
第三创建模块,用于为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理。
本申请提供一种数据搜索装置,应用于服务器,所述装置包括:
接收模块,用于接收来自客户端的搜索请求,所述搜索请求携带应用标识;
获取模块,用于利用所述搜索请求获取对象数据、与所述应用标识对应的页面组件;
生成模块,用于利用所述对象数据以及所述页面组件生成展示页面;
发送模块,用于将展示页面返回给客户端,以使客户端显示所述展示页面。
本申请提供一种数据搜索装置,应用于客户端,所述装置包括:
发送模块,用于向服务器发送搜索请求,所述搜索请求携带应用标识;
接收模块,用于接收所述服务器返回的展示页面;其中,所述展示页面是所述服务器在利用所述搜索请求获取到对象数据、与所述应用标识对应的页面组件之后,利用所述对象数据以及所述页面组件生成的;
显示模块,用于显示所述展示页面。
基于上述技术方案,本申请实施例中,服务器在接收到来自客户端的搜索请求后,可以获取与应用标识对应的页面组件,并利用该页面组件生成展示页面,这样,针对不同类型的应用,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的,提高系统扩展性。而且,可以精确的向用户显示与搜索请求匹配的展示页面,提高搜索效率,使用户可以快速搜索到需要的对象,避免用户频繁的访问服务器,减轻服务器的处理负担。而且,通过系统和数据结构的复用,可以将整个搜索应用的搭建链路打通,并使得搜索搭建变得更加简单、快捷,从而提升业务的更新、上线效率。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其它的附图。
图1是本申请一种实施方式中的应用场景示意图;
图2是本申请一种实施方式中的搜索应用的管理方法的流程图;
图3是本申请一种实施方式中的数据搜索方法的流程图;
图4是本申请另一种实施方式中的数据搜索方法的流程图;
图5A-图5H是本申请另一种实施方式中的应用场景示意图;
图6是本申请一种实施方式中的服务器的硬件结构图;
图7是本申请一种实施方式中的搜索应用的管理装置的结构图;
图8是本申请一种实施方式中的服务器的硬件结构图;
图9是本申请一种实施方式中的数据搜索装置的结构图;
图10是本申请一种实施方式中的客户端的硬件结构图;
图11是本申请一种实施方式中的数据搜索装置的结构图。
具体实施方式
在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出一种搜索应用的管理方法以及一种数据搜索方法,该方法可以应用于包括客户端和服务器的系统中,如图1所示,为该系统的结构示意图。其中,该客户端可以是终端设备(如PC(Personal Computer,个人计算机)、笔记本电脑、移动终端等)上的APP(应用),也可以是终端设备上的浏览器,对此客户端的类型不做限制,所有能够访问服务器的客户端,均在本申请实施例的保护范围之内。此外,服务器是具有搜索应用的管理功能、数据搜索功能的设备,如服务器可以是数据平台、电商平台、PC等,对此服务器的类型不做限制,所有具有搜索应用的管理功能、数据搜索功能的设备,均在本申请实施例的保护范围之内。参见图2所示,为本申请实施例提出的搜索应用的管理方法的流程图,该方法可以应用于服务器,该方法可以包括以下步骤:
步骤201,为搜索应用创建能够复用的搜索引擎,以通过搜索引擎收集数据。
步骤202,为搜索引擎配置排序策略,以使搜索引擎根据排序策略进行排序。
步骤203,为搜索应用创建能够复用的业务逻辑,以通过业务逻辑实现业务处理。
步骤204,为搜索应用创建能够复用的展示逻辑,以通过展示逻辑实现组件管理。
在一个例子中,上述执行顺序只是为了方便描述所给出的一个示例,在实际应用中,还可以改变各步骤之间的执行顺序,对此执行顺序不做限制。
针对步骤201,在一个例子中,考虑到对于每一个电子商务网站来说,搜索应用是不可缺少的功能,底层的搜索引擎更是基础设施,而搜索引擎的搭建和使用是一件相对复杂的事情,基于此,可以提供一个标准通用的搜索引擎,从而做到快速搭建和复用搜索引擎的目的。因此,针对“为搜索应用创建能够复用的搜索引擎,以通过搜索引擎收集数据”的过程,可以包括但不限于:维护用户表和对象表,该用户表包括用户基础表和用户扩展表,该用户基础表用于记录第一类型的用户数据,该用户扩展表用于记录第二类型的用户数据;该对象表包括对象基础表和对象扩展表,该对象基础表用于记录第一类型的对象数据,该对象扩展表用于记录第二类型的对象数据;为搜索应用创建能够复用的搜索引擎,并通过该搜索引擎收集用户数据和/或对象数据,并将该用户数据存储到该用户表,并将该对象数据存储到该对象表。
进一步的,在通过搜索引擎收集用户数据之后,还可以通过搜索引擎将收集的用户数据转换为预设格式的用户数据,并将预设格式的用户数据存储到用户表中;其中,若预设格式的用户数据为第一类型的用户数据,则将预设格式的用户数据存储到用户基础表;若预设格式的用户数据为第二类型的用户数据,则将预设格式的用户数据存储到用户扩展表。和/或,在通过搜索引擎收集对象数据之后,还可以通过搜索引擎将收集的对象数据转换为预设格式的对象数据,并将预设格式的对象数据存储到对象表中;其中,若预设格式的对象数据为第一类型的对象数据,将预设格式的对象数据存储到对象基础表;若预设格式的对象数据为第二类型的对象数据,将预设格式的对象数据存储到对象扩展表。
针对步骤202,在一个例子中,考虑到当搜索引擎搭建完成后,排序能力成为关键点,而搜索引擎提供的默认排序能力对电子商务网站来说远远不够,基于此,可以提供一个通用的算法服务来实现搜索中的排序算法,达到算法复用和扩展的目的。因此,针对“为搜索引擎配置排序策略,以使搜索引擎根据排序策略进行排序”的过程,可以包括但不限于:为搜索引擎配置排序策略,以使搜索引擎根据所述排序策略和行为数据,或者,所述排序策略和扩展数据,或者,所述排序策略、行为数据和扩展数据进行排序。进一步的,行为数据可以包括但不限于历史访问信息;扩展数据可以包括但不限于:评价信息。
针对步骤203,在一个例子中,考虑到在搜索引擎返回数据后,上层的业务封装也成为重要环节,而对于电子商务网站来说,搜索业务的通用性很强,业务的处理往往是相似相通的,基于此,可以提供一套标准可扩展的业务服务能力,来实现搜索中快速创建和使用业务服务的目的。因此,针对“为搜索应用创建能够复用的业务逻辑,以通过业务逻辑实现业务处理”的过程,可以包括但不限于:为搜索应用创建能够复用的业务逻辑,以通过该业务逻辑维护搜索应用对应的配置信息,其中,该配置信息包括字段类型和字段类型对应的业务处理逻辑;通过业务逻辑对搜索应用的数据进行解析,得到与字段类型对应的数据,并利用该业务处理逻辑对与字段类型对应的数据进行业务处理。
针对步骤204,在一个例子中,考虑到当数据快速创建并使用后,需要通过页面展示出来,而各类电子商务网站对于页面的搭建是相通的,比如页面布局往往只有几种模式,而其中的组件也只包括搜索框、导航、筛选区、主数据区、翻页等,其中展示的字段也大多类似,基于此,可以提供一套标准组件模型和规范,从而达到搜索中组件沉淀和快速复用的目的。因此,针对“为搜索应用创建能够复用的展示逻辑,以通过展示逻辑实现组件管理”的过程,可以包括但不限于:为搜索应用创建能够复用的展示逻辑,以通过展示逻辑为搜索应用配置页面子组件;其中,不同搜索应用的页面子组件可以相同或者不同;通过展示逻辑将搜索应用对应的页面子组件组成搜索应用对应的页面组件;其中,该页面组件可以包括搜索应用对应的一个或多个页面子组件。
基于上述技术方案,本申请实施例中,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的,提高系统扩展性。通过系统和数据结构的复用,可以将整个搜索应用的搭建链路打通,并使得搜索搭建变得更加简单、快捷,从而提升业务的更新、上线效率。可以实现搜索应用的在线快速搭建,通过对领域内积累的模型、逻辑和展示组件的复用,以及系统的高扩展性,使应用开发者可以在线快速完成一个应用的完整搭建工作。
在上述搜索应用管理的基础上,参见图3所示,为本申请实施例中提出的数据搜索方法的流程图,该方法可以应用于服务器,该方法可以包括以下步骤:
步骤301,接收来自客户端的搜索请求,该搜索请求携带应用标识。
步骤302,利用该搜索请求获取对象数据、与该应用标识对应的页面组件。
步骤303,利用该对象数据以及该页面组件生成展示页面。
步骤304,将该展示页面返回给客户端,以使客户端显示该展示页面。
在一个例子中,上述执行顺序只是为了方便描述所给出的一个示例,在实际应用中,还可以改变各步骤之间的执行顺序,对此执行顺序不做限制。
针对步骤301,在一个例子中,用户可以在客户端的搜索栏上输入关键词,以触发该客户端向服务器发送搜索请求,而且,在该搜索请求中可以携带应用标识、用户标识和关键字等内容。进一步的,服务器在接收到该搜索请求之后,可以从该搜索请求中解析出应用标识、用户标识和关键字等内容。
针对步骤302,在一个例子中,针对“利用该搜索请求获取对象数据”的过程,可以包括:从用户表中获取与该用户标识对应的用户数据;从对象表中获取与该关键字、该用户数据对应的多个对象数据;利用预设排序策略对多个对象数据进行排序;根据多个对象数据的排序结果,选取预设数量个对象数据。
其中,该用户表可以包括用户基础表和用户扩展表,而且,该用户基础表用于记录第一类型的用户数据,该用户扩展表用于记录第二类型的用户数据。此外,该对象表可以包括对象基础表和对象扩展表,而且,该对象基础表用于记录第一类型的对象数据,该对象扩展表用于记录第二类型的对象数据。
在一个例子中,服务器在获得初始用户数据之后,可以将该初始用户数据转换为预设格式的用户数据;若该预设格式的用户数据为第一类型的用户数据,则可以将该预设格式的用户数据存储到用户基础表;若该预设格式的用户数据为第二类型的用户数据,则可以将该预设格式的用户数据存储到用户扩展表。和/或,服务器在获得初始对象数据之后,可以将该初始对象数据转换为预设格式的对象数据;若该预设格式的对象数据为第一类型的对象数据,则可以将该预设格式的对象数据存储到对象基础表;若该预设格式的对象数据为第二类型的对象数据,则可以将该预设格式的对象数据存储到对象扩展表。
在一个例子中,针对“利用预设排序策略对多个对象数据进行排序”的过程,可以包括但不限于如下方式:获取该应用标识对应的与所述多个对象数据关联的行为数据,并利用该行为数据和预设排序策略对所述多个对象数据进行排序。或者,获取该应用标识对应的与所述多个对象数据关联的扩展数据,并利用该扩展数据和预设排序策略对所述多个对象数据进行排序。或者,获取该应用标识对应的与所述多个对象数据关联的行为数据、扩展数据,并利用该行为数据、该扩展数据以及预设排序策略,对所述多个对象数据进行排序。
在一个例子中,行为数据可以包括但不限于:针对多个对象数据的历史访问信息;扩展数据可以包括但不限于:用户针对多个对象数据的评价信息。
在一个例子中,在利用该搜索请求获取对象数据(即步骤302)之后,在利用该对象数据以及该页面组件生成展示页面(即步骤303)之前,服务器还可以获取该应用标识对应的配置信息,且该配置信息可以包括字段类型。从该对象数据(即利用搜索请求获取的对象数据)中解析出与该字段类型对应的对象数据,并将该字段类型对应的对象数据确定为生成展示页面时使用的对象数据。
进一步的,该配置信息还可以包括该字段类型对应的业务处理逻辑,基于此业务处理逻辑,在从该对象数据中解析出与该字段类型对应的对象数据之后,服务器还可以利用该业务处理逻辑对与该字段类型对应的对象数据进行业务处理,并将经过业务处理的对象数据确定为生成展示页面时使用的对象数据。
针对步骤302,在一个例子中,针对“获取与该应用标识对应的页面组件”的过程,可以包括:若页面组件包括多个页面子组件,则服务器还可以通过该应用标识查询映射关系,以得到与该应用标识对应的至少一个页面子组件。进一步的,可以将所述至少一个页面子组件组成该应用标识对应的页面组件。
其中,上述映射关系可以包括应用标识与页面子组件的对应关系,因此,在通过应用标识查询该映射关系时,可以得到与该应用标识对应的页面子组件。
针对步骤303,在一个例子中,针对“利用该对象数据以及该页面组件生成展示页面”的过程,服务器可以在展示页面上配置页面组件(如在不同的位置配置不同的页面组件),并在该页面组件显示相关联的对象数据。
针对步骤304,在一个例子中,服务器在生成展示页面后,就可以将该展示页面返回给客户端,以使客户端显示该展示页面,将对象数据显示给用户。
在一个例子中,上述对象可以包括但不限于:商品。
基于上述技术方案,本申请实施例中,服务器在接收到来自客户端的搜索请求后,可以获取与应用标识对应的页面组件,并利用该页面组件生成展示页面,这样,针对不同类型的应用,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的,提高系统扩展性。而且,可以精确的向用户显示与搜索请求匹配的展示页面,提高搜索效率,使用户可以快速搜索到需要的对象,避免用户频繁的访问服务器,减轻服务器的处理负担。
基于与上述方法同样的申请构思,参见图4所示,为本申请实施例中提出的数据搜索方法的流程图,该方法可以应用于客户端,该方法可以包括:
步骤401,向服务器发送搜索请求,该搜索请求携带应用标识。
步骤402,接收服务器返回的展示页面;其中,该展示页面是服务器在利用该搜索请求获取到对象数据、与该应用标识对应的页面组件之后,利用该对象数据以及该页面组件生成的。针对服务器的处理,参见上述处理流程。
步骤403,在接收到该展示页面后,显示该展示页面。
基于上述技术方案,本申请实施例中,针对不同类型的应用,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的。可以精确向用户显示与搜索请求匹配的展示页面,提高搜索效率,用户可以快速搜索到需要的对象,避免用户频繁的访问服务器,减轻服务器的处理负担。而且,通过系统和数据结构的复用,可以将整个搜索搭建链路打通,并使得搜索搭建变得更加简单、快捷,从而提升业务的更新、上线效率。
以下结合具体的应用场景,对本申请实施例的上述技术方案进行详细说明。在本应用场景下,以对象为商品为例进行说明,并用于实现商品搜索。
在一个例子中,为了实现商品搜索功能,可以在服务器搭建商品搜索模块,该商品搜索模块可以实现商品数据的采集、索引、查询、排序、统计等功能。为了搭建商品搜索模块,在服务器进行相关配置,以使商品搜索模块具备如下功能:通过离线dump方式和在线查询方式,收集用户数据和商品数据的功能;基于各类排序算法对商品进行排序的功能;业务处理逻辑功能;页面组件开发功能等。上述功能的实现,均需要进行复杂的配置,因此,若针对每个应用单独搭建一个商品搜索模块,则搭建时间很长,工作量很大。基于此,本应用场景下,可以为多个应用搭建同一个商品搜索模块,且这些应用可以复用该商品搜索模块的功能,该商品搜索模块为这些应用实现商品搜索功能。
本应用场景下,考虑到在商品搜索领域,针对不同应用,数据处理、业务逻辑、页面展示等方面具有很大相似度,其基础信息可以是商品标题、图片、价格等内容,因此可以通过一个商品搜索模块为多个应用实现商品搜索功能,从而使多个应用可以复用商品搜索模块的功能,实现整体系统的高度复用性,而且还可以提供扩展定制能力,以使不同应用实现个性化的需求。例如,不同应用可以复用商品搜索模块,复用“离线dump方式和在线查询方式,收集用户数据和商品数据的功能”,复用“基于各类排序算法对商品进行排序的功能”,复用“业务处理逻辑功能”,复用“页面组件开发功能”。
当然,上述商品搜索模块只是为多个应用实现商品搜索功能的一个示例,在实际应用中并不局限于此,只要服务器可以为多个应用实现商品搜索功能即可,即服务器具备上述“离线dump方式和在线查询方式,收集用户数据和商品数据的功能”、“基于各类排序算法对商品进行排序的功能”、“业务处理逻辑功能”、“页面组件开发功能”,并基于这些功能实现商品搜索。
如图5A所示,服务器上可以配置数据库、引擎层、业务服务层、展示层。引擎层可以是为搜索应用创建的能够复用的搜索引擎,可以实现“离线dump方式和在线查询方式,收集用户数据和商品数据的功能”,可以实现“基于各类排序算法对商品进行排序的功能”。业务服务层可以是为搜索应用创建的能够复用的业务逻辑,可以通过业务服务层实现“业务处理逻辑功能”。展示层可以是为搜索应用创建的能够复用的展示逻辑,可以通过展示层实现“页面组件开发功能”,最终,可以实现商品搜索功能,为用户显示搜索页面。
在上述应用场景下,针对为不同应用实现“离线dump方式和在线查询方式,收集用户数据和商品数据的功能”的过程,则:如图5B所示,可以维护用户表(也可称为会员表)和商品表,该用户表可以包括用户基础表和用户扩展表,该用户基础表用于记录第一类型的用户数据,该用户扩展表用于记录第二类型的用户数据。该商品表可以包括商品基础表和商品扩展表,该商品基础表用于记录第一类型的商品数据,该商品扩展表用于记录第二类型的商品数据。
在一个例子中,第一类型可以是通用类型,即所有应用的通用数据,如第一类型的商品数据可以包括商品名称、商家信息、价格等,第一类型的用户数据可以包括用户名、性别、年龄等。第二类型可以是特有类型,即不同应用的个性化数据,如针对农业应用(即用于搜索农业商品的应用),第二类型的商品数据可以包括季节信息、天气信息、农药信息等,第二类型的用户数据可以包括与农业有关的用户数据;此外,针对钢材应用(即用于搜索钢材商品的应用),第二类型的商品数据可以包括断面形状、钢材加工温度、脱氧程度等,第二类型的用户数据可以包括与钢材有关的用户数据。
综上所述,针对所有应用,可以只维护一个用户基础表和一个商品基础表,针对每个应用,可以单独维护用户扩展表和商品扩展表。例如,针对农业应用和钢材应用,只维护一个用户基础表和一个商品基础表,并将针对农业应用和钢材应用的通用类型的用户数据存储到用户基础表,将针对农业应用和钢材应用的通用类型的商品数据存储到商品基础表。针对农业应用,维护用户扩展表1和商品扩展表1,并将针对农业应用的特有类型的用户数据存储到用户扩展表1,将针对农业应用的特有类型的商品数据存储到商品扩展表1;针对钢材应用,维护用户扩展表2和商品扩展表2,并将针对钢材应用的特有类型的用户数据存储到用户扩展表2,将针对钢材应用的特有类型的商品数据存储到商品扩展表2。
由于针对所有应用只维护一个用户基础表,这样,可以通过一个用户基础表对所有应用的通用类型的用户数据进行整合。由于针对所有应用只维护一个商品基础表,这样,可以通过一个商品基础表对所有应用的通用类型的商品数据进行整合。由于针对每个应用单独维护用户扩展表和商品扩展表,从而可以实现不同应用之间的个性化需求,方便各应用根据自身的需要进行扩展。
在一个例子中,针对用户基础表、商品基础表、用户扩展表和商品扩展表中各字段,对于不同应用来说,有着大量的相通性,因此,可以定义用户基础表、商品基础表、用户扩展表和商品扩展表中各字段的格式。基于此,在获得用户数据后,在将用户数据存储到用户基础表或者用户扩展表之前,先将该用户数据转换为预设格式(即之前定义的格式)的用户数据,然后将用户数据存储到用户基础表或者用户扩展表。在获得商品数据后,在将商品数据存储到商品基础表或者商品扩展表之前,先将该商品数据转换为预设格式(即之前定义的格式)的商品数据,然后将商品数据存储到商品基础表或者商品扩展表。
基于此,在获得用户数据或者商品数据之后,可以通过进行一个映射逻辑(如按照预设规则将不同应用的字段,按照一定的映射逻辑归一化到统一的字段),从而实现了数据源层面的统一,方便在后续过程中进行逻辑复用。
综上所述,在获得初始用户数据之后,可以将该初始用户数据转换为预设格式的用户数据;若该预设格式的用户数据为第一类型的用户数据,则可以将该预设格式的用户数据存储到用户基础表;若该预设格式的用户数据为第二类型的用户数据,则可以将该预设格式的用户数据存储到用户扩展表(即与该用户数据匹配的应用对应的用户扩展表)。和/或,在获得初始商品数据之后,可以将该初始商品数据转换为预设格式的商品数据;若该预设格式的商品数据为第一类型的商品数据,则可以将该预设格式的商品数据存储到商品基础表;若该预设格式的商品数据为第二类型的商品数据,则可以将该预设格式的商品数据存储到商品扩展表(即与该商品数据匹配的应用对应的商品扩展表)。
在一个例子中,基于用户基础表、商品基础表、用户扩展表和商品扩展表中存储的用户数据和商品数据,以采用离线dump方式收集用户数据和商品数据为例,则dump可以从上述用户基础表、商品基础表、用户扩展表和商品扩展表中,读取到用户数据和商品数据,并将用户数据和商品数据提供给引擎层。
在实际应用中,离线过程是指商品搜索中的一个前置阶段,一个商品搜索除了实时提供搜索能力外,还会有一个离线的任务机制,离线任务会在后台采集所有的商品信息,当商品发生变化时,会将其重新进行相关的业务处理,以供实时搜索。dump是离线阶段的采集系统,负责监听所有商品的变化信息,对发生变化的商品进行重新采集,并可以定时对全部商品进行重新采集。
针对为不同应用实现“基于各类排序算法对商品进行排序的功能”的过程,则:如图5C所示,引擎层的输入可以包括商品数据、商品质量(即对每个商品进行分析,得出每个商品的质量分数),引擎层的输出可以是排序结果。
在一个例子中,可以利用预设排序策略对多个商品数据进行排序,例如,当关键字是“连衣裙”时,则可以获取到多个与“连衣裙”有关的商品数据,例如,商品数据包括商家A的连衣裙1、连衣裙2,商家B的连衣裙3,商家C的连衣裙4等,基于此,可以利用预设排序策略对这些商品数据进行排序。
进一步的,针对“利用预设排序策略对多个商品数据进行排序”的过程,可以包括但不限于如下方式:获取应用标识对应的与所述多个商品数据关联的行为数据,并利用该行为数据以及所述预设排序策略对所述多个商品数据进行排序。或者,获取应用标识对应的与所述多个商品数据关联的扩展数据,并利用该扩展数据以及所述预设排序策略对所述多个商品数据进行排序。或者,获取应用标识对应的与所述多个商品数据关联的行为数据、扩展数据,并利用该行为数据、该扩展数据以及所述预设排序策略,对所述多个商品数据进行排序。
在一个例子中,行为数据可以包括但不限于:针对多个商品数据的历史访问信息;扩展数据可以包括但不限于:用户针对多个商品数据的评价信息。
其中,由于在数据源层面实现了商品数据的一致性,因此,不同应用可以使用相同的排序策略,从而可以最大限度地复用排序策略,采用一套排序策略来实现对商品数据进行排序的能力。虽然可以复用相同的排序策略,但是,不同应用的行为数据并不相同,因此,可以针对每种应用单独统计行为数据。此外,由于不同应用对市场的调节需要不同,因此,可以对不同应用提供个性化需求,即确定每种应用对应的扩展数据。这样,就可以利用某个应用单独对应的行为数据和扩展数据、以及各应用复用的排序策略,对商品数据进行排序。
为了统计应用的行为数据,针对每种应用,可以提供一个行为日志采集系统,该日志采集系统可以按照统一的规范采集商品数据的历史访问信息,继而可以形成行为数据。如图5D所示,为日志采集系统的一个示例,日志采集系统可以采集到商品数据的点击、曝光、交易等历史访问信息,并对这些历史访问信息进行收集,并清洗掉无效信息,然后对信息进行关联(例如将针对商品A的点击、曝光、交易关联在一起),从而形成内部报表,并最终得到针对商品数据的行为数据。当然,在实际应用中,历史访问信息并不局限于上述点击、曝光、交易等,且获得行为数据的方式也并不局限于上述方式,对此不做限制。
为了确定应用的扩展数据,可以提供两个标准的扩展字段:offer_score(商品分数)和company_score(商家分数),每个应用可以对自己的商品和商家进行打分,此分数就是与商品数据关联的扩展数据。此外,还可以对外提供一系列的配置接口,通过配置接口可以将排序策略的参数暴露出来,这样,各应用可以根据自身需要,对排序策略的参数进行个性化的定制,以满足个性化需求。
针对为不同应用实现“业务处理逻辑功能”的过程,则:为每个应用单独提供配置信息,该配置信息可以包括字段类型,因此可以从商品数据(即根据排序结果选取的商品数据)中解析出与该字段类型对应的商品数据,将该字段类型的商品数据显示给用户。例如,针对应用A,配置信息包括字段类型1和字段类型2,从商品数据中解析出与字段类型1对应的商品数据、与字段类型2对应的商品数据。针对应用B,配置信息包括字段类型1和字段类型3,从商品数据中解析出与字段类型1对应的商品数据、与字段类型3对应的商品数据。
进一步的,该配置信息还可以包括该字段类型对应的业务处理逻辑,基于此业务处理逻辑,在从商品数据中解析出与该字段类型对应的商品数据之后,还可以利用该业务处理逻辑对与该字段类型对应的商品数据进行业务处理,并将经过业务处理的商品数据显示给用户。例如,针对应用A,配置信息还包括字段类型2对应的业务处理逻辑1,因此,可以利用该业务处理逻辑1对与字段类型2对应的商品数据进行业务处理,如将语言转换为英语/法语等。又例如,针对应用B,配置信息还包括字段类型3对应的业务处理逻辑2,因此,可以利用该业务处理逻辑2对与字段类型3对应的商品数据进行业务处理。
在一个例子中,业务服务层可以采用统一的服务接口,即使用同一个服务接口来支持不同应用的数据调用需求,如图5E所示,服务接口与引擎层绑定在一起,引擎层可以将商品数据提供给服务接口。进一步的,为了应对不同应用的不同需求,如图5E所示,采用服务接口与配置分离的方案,即每个应用单独提供配置信息,这样,业务服务层在从服务接口获取到商品数据后,可以基于应用的配置信息的内容,对商品数据进行处理。由于不同应用采用不同的配置信息,因此可以通过配置信息,自由定制每个应用的字段以及业务处理逻辑。
其中,每个应用都配置有自身的配置信息,且不同配置信息中的字段可以相同,也可以不同。针对某个字段,在配置信息中可以包含该字段对应的业务处理逻辑,也可以不包含该字段对应的业务处理逻辑。如果不包含该字段对应的业务处理逻辑,则不需要利用业务处理逻辑对该字段的商品数据进行业务处理,输出该字段的商品数据;如果包含该字段对应的业务处理逻辑,则需要利用业务处理逻辑对该字段的商品数据进行业务处理,并输出处理后的商品数据。
在一个例子中,为了更好地实现业务服务层的复用和扩展,可以采用功能点拆分的方式配置业务处理逻辑。如图5F所示,可以将商品的处理服务拆分为多个功能点,而每个功能点又可以拆分为多个功能点,每个功能点就是一个业务处理逻辑。基于此,不同的应用可以选择不同的功能点进行组合,此外,各应用还可以提供自定义的功能点,以满足个性化的需求。综上所述,通过这种灵活组合的模式,可以做到每一个应用都可以定制出满足自身需求的业务服务。
针对为不同应用实现“页面组件开发功能”的过程,则:页面组件可以是页面模块,每一个页面组件代表一个独立区块,例如,商品搜索页面中的主数据区区块、筛选区区块、导航区块、搜索框区块、翻页区块等,每个商品搜索页面由一些页面组件组合而成,而且,针对不同的应用,页面组件可以相同或者类似,基于此,可以为不同应用配置相同的页面组件,如为多个应用配置主数据区区块、筛选区区块、导航区块、搜索框区块、翻页区块等页面组件。
由于每个页面组件可以包括多个页面子组件,且不同应用的页面子组件不同,因此,可以配置应用与页面子组件的映射关系,这样,在生成应用的页面组件时,可以使用该应用的页面子组件组成页面组件。例如,页面组件A包括页面子组件1、页面子组件2、页面子组件3和页面子组件4,应用1对应页面子组件1、页面子组件2、页面子组件3,应用2对应页面子组件2、页面子组件3、页面子组件4,基于此,在生成应用1对应的页面组件A时,使用页面子组件1、页面子组件2、页面子组件3组成页面组件A;在生成应用2对应的页面组件A时,使用页面子组件2、页面子组件3、页面子组件4组成页面组件A。
在一个例子中,通过将页面组件拆分成多个页面子组件,并为不同应用配置不同的页面子组件,从而为应用组合出个性化的页面组件。如图5G所示,每个页面子组件可以是一个widget(小部件)模块,每个页面组件被拆分成多个widget模块,不同的应用可以选择不同的widget模块来组成本应用的页面组件。
为了满足更大程度的定制需求,还可以提供在线的页面组件创建功能,应用开发者可以直接在线创建个性化的页面组件,从而满足更加定制化的需求。
经过上述过程,就可以在服务器实现“离线dump方式和在线查询方式,收集用户数据和商品数据的功能”、“基于各类排序算法对商品进行排序的功能”、“业务处理逻辑功能”、“页面组件开发功能”,从而搭建好商品搜索应用,继而可以实现商品搜索。如图5H所示,为上述过程的全流程的一个示例,当然,实际应用中并不局限于图5H的过程,还可以包括其它步骤,对此不做限制。
基于上述场景,则商品搜索的流程可以如下所示,该方法可以包括:
步骤11,客户端向服务器发送搜索请求,该搜索请求可以携带应用标识、关键字(即搜索的商品的关键字,如“连衣裙”等)、用户标识。
其中,用户可以在客户端的搜索栏上输入关键词,以触发该客户端向服务器发送搜索请求,在该搜索请求中可以携带应用标识、用户标识和关键字等。
步骤12,服务器从搜索请求中解析出应用标识、用户标识和关键字等内容。
步骤13,服务器从用户表(用户基础表、与该应用标识对应的用户扩展表)中获取与该用户标识对应的用户数据,并从商品表(商品基础表、与该应用标识对应的商品扩展表)中获取与该关键字、该用户数据对应的多个商品数据。
步骤14,服务器获取该应用标识对应的与这多个商品数据关联的行为数据,并获取该应用标识对应的与这多个商品数据关联的扩展数据。
步骤15,服务器利用该行为数据、该扩展数据以及预设排序策略对多个商品数据进行排序,根据多个商品数据的排序结果,选取预设数量个商品数据。
步骤16,服务器获取与该应用标识对应的配置信息,该配置信息包括字段类型,此外,该配置信息还可以包括该字段类型对应的业务处理逻辑。
步骤17,针对选取的商品数据(即步骤15中结果),服务器从该商品数据中解析出与该字段类型对应的商品数据,并利用该字段类型对应的业务处理逻辑,对与该字段类型对应的商品数据进行业务处理,具体处理方式不再赘述。
步骤18,服务器获取与该应用标识对应的至少一个页面子组件。
步骤19,服务器将这些页面子组件组成与该应用标识对应的页面组件。
步骤20,服务器利用该商品数据(即经过业务处理的商品数据)以及该页面组件生成展示页面,即在页面组件的位置添加该商品数据,以形成展示页面。
步骤21,服务器将该展示页面返回给客户端。
步骤22,客户端接收服务器返回的展示页面,并显示该展示页面。
基于上述技术方案,本申请实施例中,服务器在接收到来自客户端的搜索请求后,可以获取与应用标识对应的页面组件,并利用该页面组件生成展示页面,这样,针对不同类型的应用,可以复用页面组件,实现页面组件的高度复用性,达到页面组件沉淀和快速复用的目的,提高系统扩展性。而且,可以精确的向用户显示与搜索请求匹配的展示页面,提高搜索效率,使用户可以快速搜索到需要的商品,避免用户频繁的访问服务器,减轻服务器的处理负担。而且,通过系统和数据结构的复用,可以将整个搜索搭建链路打通,并使得搜索搭建变得更加简单、快捷,从而提升业务的更新、上线效率。
基于与上述方法同样的申请构思,本申请实施例还提供一种搜索应用的管理装置120,可以应用在服务器10上。搜索应用的管理装置120可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的服务器10的处理器11,读取非易失性存储器12中对应的计算机程序指令形成的。从硬件层面而言,如图6所示,为搜索应用的管理装置120所在的服务器10的一种硬件结构图,除图6所示的处理器11、非易失性存储器12外,服务器10还可以包括其它硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,服务器10还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
如图7所示,为本申请提出的数据搜索装置的结构图,所述装置包括:第一创建模块1201,用于为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;配置模块1202,用于为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;第二创建模块1203,用于为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;第三创建模块1204,用于为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理。
在一个例子中,所述第一创建模块1201,具体用于在为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据的过程中,维护用户表和对象表,所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;为搜索应用创建能够复用的搜索引擎,通过所述搜索引擎收集用户数据和/或对象数据,将用户数据存储到所述用户表,将对象数据存储到所述对象表;
所述第一创建模块1201在通过所述搜索引擎收集用户数据之后,将收集的用户数据转换为预设格式的用户数据,并将预设格式的用户数据存储到所述用户表中;其中,若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,所述第一创建模块1201在通过所述搜索引擎收集对象数据之后,将收集的对象数据转换为预设格式的对象数据,并将预设格式的对象数据存储到所述对象表中;其中,若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表。
在一个例子中,所述配置模块1202,具体用于在为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序的过程中,为搜索引擎配置排序策略,以使搜索引擎根据所述排序策略和行为数据,或,所述排序策略和扩展数据,或,所述排序策略、行为数据和扩展数据进行排序;所述行为数据包括历史访问信息;所述扩展数据包括:评价信息。
在一个例子中,所述第二创建模块1203,具体用于在为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理的过程中,为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑维护所述搜索应用对应的配置信息,其中,所述配置信息包括字段类型以及所述字段类型对应的业务处理逻辑;通过所述业务逻辑对所述搜索应用的数据进行解析,得到与所述字段类型对应的数据,并利用所述业务处理逻辑对与所述字段类型对应的数据进行业务处理。
在一个例子中,所述第三创建模块1204,具体用于在为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理的过程中,为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑为搜索应用配置页面子组件;其中,不同搜索应用的页面子组件相同或者不同;通过所述展示逻辑将搜索应用对应的页面子组件组成所述搜索应用对应的页面组件;所述页面组件包括所述搜索应用对应的一个或多个页面子组件。
基于与上述方法同样的申请构思,本申请实施例还提供一种数据搜索装置220,该数据搜索装置220应用在服务器20上。数据搜索装置220可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的服务器20的处理器21,读取非易失性存储器22中对应的计算机程序指令形成的。从硬件层面而言,如图8所示,为数据搜索装置220所在的服务器20的一种硬件结构图,除图8所示的处理器21、非易失性存储器22外,服务器20还可以包括其它硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,服务器20还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
如图9所示,为本申请提出的数据搜索装置的结构图,所述装置包括:接收模块2201,用于接收来自客户端的搜索请求,该搜索请求携带应用标识;获取模块2202,用于利用所述搜索请求获取对象数据、与所述应用标识对应的页面组件;生成模块2203,用于利用所述对象数据和所述页面组件生成展示页面;发送模块2204,用于将展示页面返回给客户端,以使客户端显示所述展示页面。
所述接收模块2201接收的搜索请求还携带用户标识和关键字;
所述获取模块2202,具体用于在利用所述搜索请求获取对象数据的过程中,从用户表中获取与所述用户标识对应的用户数据;从对象表中获取与所述关键字、所述用户数据对应的多个对象数据;利用预设排序策略对所述多个对象数据进行排序;根据所述多个对象数据的排序结果,选取预设数量个对象数据。
所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;
所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;
所述获取模块2202,还用于在获得初始用户数据后,将所述初始用户数据转换为预设格式的用户数据;若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,在获得初始对象数据后,将所述初始对象数据转换为预设格式的对象数据;若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表。
所述获取模块2202,具体用于在利用预设排序策略对所述多个对象数据进行排序的过程中,获取所述应用标识对应的与所述多个对象数据关联的行为数据;利用所述行为数据和预设排序策略对所述多个对象数据进行排序;或者,获取所述应用标识对应的与所述多个对象数据关联的扩展数据;利用所述扩展数据和预设排序策略对所述多个对象数据进行排序;或者,获取所述应用标识对应的与所述多个对象数据关联的行为数据、扩展数据;利用所述行为数据、所述扩展数据以及所述预设排序策略,对所述多个对象数据进行排序;
其中,所述行为数据包括:针对所述多个对象数据的历史访问信息;
所述扩展数据包括:用户针对所述多个对象数据的评价信息。
在一个例子中,所述获取模块2202,还用于在利用所述搜索请求获取对象数据之后,在所述生成模块2203利用所述对象数据以及所述页面组件生成展示页面之前,获取所述应用标识对应的配置信息,其中,所述配置信息包括字段类型;从所述对象数据中解析出与所述字段类型对应的对象数据;将所述字段类型对应的对象数据确定为生成展示页面时使用的对象数据。
进一步的,所述配置信息还包括所述字段类型对应的业务处理逻辑;所述获取模块2202,还用于在从所述对象数据中解析出与所述字段类型对应的对象数据之后,利用所述业务处理逻辑对与所述字段类型对应的对象数据进行业务处理;将经过业务处理的对象数据确定为生成展示页面时使用的对象数据。
在一个例子中,页面组件可以包括多个页面子组件;所述获取模块2202,具体用于在获取与所述应用标识对应的页面组件的过程中,通过所述应用标识查询映射关系,得到与所述应用标识对应的至少一个页面子组件;其中,所述映射关系包括应用标识与页面子组件的对应关系;
将所述至少一个页面子组件组成所述应用标识对应的页面组件。
基于与上述方法同样的申请构思,本申请实施例还提供一种数据搜索装置320,该数据搜索装置320应用在客户端30上。数据搜索装置320可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的客户端30的处理器31,读取非易失性存储器32中对应的计算机程序指令形成的。从硬件层面而言,如图10所示,为数据搜索装置320所在的客户端30的一种硬件结构图,除图10所示的处理器31、非易失性存储器32外,客户端30还可以包括其它硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,客户端30还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
如图11所示,为本申请提出的数据搜索装置的结构图,所述装置包括:
发送模块3201,用于向服务器发送搜索请求,所述搜索请求携带应用标识;
接收模块3202,用于接收所述服务器返回的展示页面;其中,所述展示页面是所述服务器在利用所述搜索请求获取到对象数据、与所述应用标识对应的页面组件之后,利用所述对象数据以及所述页面组件生成的;
显示模块3203,用于显示所述展示页面。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可以采用完全硬件实施例、完全软件实施例、或者结合软件和硬件方面的实施例的形式。而且,本申请可以采用在一个或者多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (21)

1.一种搜索应用的管理方法,其特征在于,所述方法包括:
为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;
为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;
为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;
为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理;
所述为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理,包括:为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑为搜索应用配置页面子组件;其中,不同搜索应用的页面子组件相同或者不同;通过所述展示逻辑将搜索应用对应的页面子组件组成所述搜索应用对应的页面组件;所述页面组件包括所述搜索应用对应的一个或多个页面子组件。
2.根据权利要求1所述的方法,其特征在于,所述为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据的过程,具体包括:
维护用户表和对象表,所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;
为搜索应用创建能够复用的搜索引擎,通过所述搜索引擎收集用户数据和/或对象数据,将用户数据存储到所述用户表,将对象数据存储到所述对象表。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在通过所述搜索引擎收集用户数据之后,将收集的用户数据转换为预设格式的用户数据,并将预设格式的用户数据存储到所述用户表中;其中,若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,
在通过所述搜索引擎收集对象数据之后,将收集的对象数据转换为预设格式的对象数据,并将预设格式的对象数据存储到所述对象表中;其中,若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表。
4.根据权利要求1所述的方法,其特征在于,所述为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序的过程,具体包括:
为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略和行为数据,或,所述排序策略和扩展数据,或,所述排序策略、行为数据和扩展数据进行排序;所述行为数据包括历史访问信息;所述扩展数据包括:评价信息。
5.根据权利要求1所述的方法,其特征在于,所述为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理的过程,具体包括:
为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑维护搜索应用对应的配置信息,所述配置信息包括字段类型和所述字段类型对应的业务处理逻辑;通过所述业务逻辑对搜索应用的数据进行解析,得到与所述字段类型对应的数据,利用所述业务处理逻辑对与所述字段类型对应的数据进行业务处理。
6.一种数据搜索方法,应用于服务器,其特征在于,所述方法包括:
接收来自客户端的搜索请求,所述搜索请求携带应用标识;
利用所述搜索请求获取对象数据、与所述应用标识对应的页面组件;
利用所述对象数据以及所述页面组件生成展示页面;
将所述展示页面返回给客户端,以使所述客户端显示所述展示页面;
其中,页面组件包括多个页面子组件,所述获取与所述应用标识对应的页面组件,包括:通过所述应用标识查询映射关系,得到与所述应用标识对应的至少一个页面子组件;其中,所述映射关系包括应用标识与页面子组件的对应关系;将所述至少一个页面子组件组成所述应用标识对应的页面组件。
7.根据权利要求6所述的方法,其特征在于,所述搜索请求还携带用户标识和关键字,所述利用所述搜索请求获取对象数据的过程,具体包括:
从用户表中获取与所述用户标识对应的用户数据;
从对象表中获取与所述关键字、所述用户数据对应的多个对象数据;
利用预设排序策略对所述多个对象数据进行排序;
根据所述多个对象数据的排序结果,选取预设数量个对象数据。
8.根据权利要求7所述的方法,其特征在于,
所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;
所述方法还包括:
在获得初始用户数据后,将所述初始用户数据转换为预设格式的用户数据;
若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,
在获得初始对象数据后,将所述初始对象数据转换为预设格式的对象数据;
若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表。
9.根据权利要求7所述的方法,其特征在于,
所述利用预设排序策略对所述多个对象数据进行排序的过程,具体包括:
获取所述应用标识对应的与所述多个对象数据关联的行为数据;
利用所述行为数据和预设排序策略对所述多个对象数据进行排序;或者,
获取所述应用标识对应的与所述多个对象数据关联的扩展数据;
利用所述扩展数据和预设排序策略对所述多个对象数据进行排序;或者,
获取所述应用标识对应的与所述多个对象数据关联的行为数据、扩展数据;
利用所述行为数据、所述扩展数据以及所述预设排序策略,对所述多个对象数据进行排序;
其中,所述行为数据包括:针对所述多个对象数据的历史访问信息;
所述扩展数据包括:用户针对所述多个对象数据的评价信息。
10.根据权利要求6所述的方法,其特征在于,
所述利用所述搜索请求获取对象数据之后,所述利用所述对象数据以及所述页面组件生成展示页面之前,所述方法进一步包括:
获取所述应用标识对应的配置信息,所述配置信息包括字段类型;
从所述对象数据中解析出与所述字段类型对应的对象数据;
将所述字段类型对应的对象数据确定为生成展示页面时使用的对象数据。
11.根据权利要求10所述的方法,其特征在于,
所述配置信息还包括所述字段类型对应的业务处理逻辑;所述从所述对象数据中解析出与所述字段类型对应的对象数据之后,所述方法还包括:
利用所述业务处理逻辑对与所述字段类型对应的对象数据进行业务处理;
将经过业务处理的对象数据确定为生成展示页面时使用的对象数据。
12.一种数据搜索方法,应用于客户端,其特征在于,所述方法包括:
向服务器发送搜索请求,所述搜索请求携带应用标识;
接收所述服务器返回的展示页面;其中,所述展示页面是所述服务器在利用所述搜索请求获取到对象数据、与所述应用标识对应的页面组件之后,利用所述对象数据以及所述页面组件生成的;
显示所述展示页面;
其中,页面组件包括多个页面子组件,所述服务器获取与所述应用标识对应的页面组件,包括:通过所述应用标识查询映射关系,得到与所述应用标识对应的至少一个页面子组件;其中,所述映射关系包括应用标识与页面子组件的对应关系;将所述至少一个页面子组件组成所述应用标识对应的页面组件。
13.一种搜索应用的管理装置,其特征在于,所述装置包括:
第一创建模块,用于为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据;
配置模块,用于为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序;
第二创建模块,用于为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理;
第三创建模块,用于为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理;其中,所述第三创建模块,具体用于在为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑实现组件管理的过程中,为搜索应用创建能够复用的展示逻辑,以通过所述展示逻辑为搜索应用配置页面子组件;其中,不同搜索应用的页面子组件相同或者不同;通过所述展示逻辑将搜索应用对应的页面子组件组成所述搜索应用对应的页面组件;所述页面组件包括所述搜索应用对应的一个或多个页面子组件。
14.根据权利要求13所述的装置,其特征在于,所述第一创建模块,具体用于在为搜索应用创建能够复用的搜索引擎,以通过所述搜索引擎收集数据的过程中,维护用户表和对象表,所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;为搜索应用创建能够复用的搜索引擎,通过所述搜索引擎收集用户数据和/或对象数据,将用户数据存储到所述用户表,将对象数据存储到所述对象表;
其中,所述第一创建模块在通过所述搜索引擎收集用户数据之后,将收集的用户数据转换为预设格式的用户数据,并将预设格式的用户数据存储到所述用户表中;其中,若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,所述第一创建模块在通过所述搜索引擎收集对象数据之后,将收集的对象数据转换为预设格式的对象数据,并将预设格式的对象数据存储到所述对象表中;其中,若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表。
15.根据权利要求13所述的装置,其特征在于,所述配置模块,具体用于在为搜索引擎配置排序策略,以使所述搜索引擎根据所述排序策略进行排序的过程中,为搜索引擎配置排序策略,以使搜索引擎根据所述排序策略和行为数据,或,所述排序策略和扩展数据,或,所述排序策略、行为数据和扩展数据进行排序;所述行为数据包括历史访问信息;所述扩展数据包括:评价信息。
16.根据权利要求13所述的装置,其特征在于,
所述第二创建模块,具体用于在为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑实现业务处理的过程中,为搜索应用创建能够复用的业务逻辑,以通过所述业务逻辑维护所述搜索应用对应的配置信息,其中,所述配置信息包括字段类型以及所述字段类型对应的业务处理逻辑;通过所述业务逻辑对所述搜索应用的数据进行解析,得到与所述字段类型对应的数据,并利用所述业务处理逻辑对与所述字段类型对应的数据进行业务处理。
17.一种数据搜索装置,应用于服务器,其特征在于,所述装置包括:
接收模块,用于接收来自客户端的搜索请求,所述搜索请求携带应用标识;
获取模块,用于利用所述搜索请求获取对象数据、与所述应用标识对应的页面组件;其中,页面组件包括多个页面子组件;所述获取模块,具体用于在获取与所述应用标识对应的页面组件的过程中,通过所述应用标识查询映射关系,得到与所述应用标识对应的至少一个页面子组件;其中,所述映射关系包括应用标识与页面子组件的对应关系;将所述至少一个页面子组件组成所述应用标识对应的页面组件;
生成模块,用于利用所述对象数据以及所述页面组件生成展示页面;
发送模块,用于将展示页面返回给客户端,以使客户端显示所述展示页面。
18.根据权利要求17所述的装置,其特征在于,
所述接收模块接收的搜索请求还携带用户标识和关键字;
所述获取模块,具体用于在利用所述搜索请求获取对象数据的过程中,从用户表中获取与所述用户标识对应的用户数据;从对象表中获取与所述关键字、所述用户数据对应的多个对象数据;利用预设排序策略对所述多个对象数据进行排序;根据所述多个对象数据的排序结果,选取预设数量个对象数据。
19.根据权利要求18所述的装置,其特征在于,
所述用户表包括用户基础表和用户扩展表,所述用户基础表用于记录第一类型的用户数据,所述用户扩展表用于记录第二类型的用户数据;
所述对象表包括对象基础表和对象扩展表,所述对象基础表用于记录第一类型的对象数据,所述对象扩展表用于记录第二类型的对象数据;
所述获取模块,还用于在获得初始用户数据后,将所述初始用户数据转换为预设格式的用户数据;若所述预设格式的用户数据为第一类型的用户数据,则将所述预设格式的用户数据存储到所述用户基础表;若所述预设格式的用户数据为第二类型的用户数据,则将所述预设格式的用户数据存储到所述用户扩展表;和/或,在获得初始对象数据后,将所述初始对象数据转换为预设格式的对象数据;若所述预设格式的对象数据为第一类型的对象数据,则将所述预设格式的对象数据存储到所述对象基础表;若所述预设格式的对象数据为第二类型的对象数据,则将所述预设格式的对象数据存储到所述对象扩展表;
所述获取模块,具体用于在利用预设排序策略对所述多个对象数据进行排序的过程中,获取所述应用标识对应的与所述多个对象数据关联的行为数据;利用所述行为数据和预设排序策略对所述多个对象数据进行排序;或者,获取所述应用标识对应的与所述多个对象数据关联的扩展数据;利用所述扩展数据和预设排序策略对所述多个对象数据进行排序;或者,获取所述应用标识对应的与所述多个对象数据关联的行为数据、扩展数据;利用所述行为数据、所述扩展数据以及所述预设排序策略,对所述多个对象数据进行排序;
其中,所述行为数据包括:针对所述多个对象数据的历史访问信息;
所述扩展数据包括:用户针对所述多个对象数据的评价信息。
20.根据权利要求17所述的装置,其特征在于,所述获取模块,还用于在利用所述搜索请求获取对象数据之后,在所述生成模块利用所述对象数据以及所述页面组件生成展示页面之前,获取所述应用标识对应的配置信息,所述配置信息包括字段类型;从所述对象数据中解析出与所述字段类型对应的对象数据;将所述字段类型对应的对象数据确定为生成展示页面时使用的对象数据;
所述配置信息还包括所述字段类型对应的业务处理逻辑;所述获取模块,还用于在从所述对象数据中解析出与所述字段类型对应的对象数据之后,利用所述业务处理逻辑对与所述字段类型对应的对象数据进行业务处理;将经过业务处理的对象数据确定为生成展示页面时使用的对象数据。
21.一种数据搜索装置,应用于客户端,其特征在于,所述装置包括:
发送模块,用于向服务器发送搜索请求,所述搜索请求携带应用标识;
接收模块,用于接收所述服务器返回的展示页面;其中,所述展示页面是所述服务器在利用所述搜索请求获取到对象数据、与所述应用标识对应的页面组件之后,利用所述对象数据以及所述页面组件生成的;
显示模块,用于显示所述展示页面;
其中,页面组件包括多个页面子组件,所述服务器获取与所述应用标识对应的页面组件,包括:通过所述应用标识查询映射关系,得到与所述应用标识对应的至少一个页面子组件;其中,所述映射关系包括应用标识与页面子组件的对应关系;将所述至少一个页面子组件组成所述应用标识对应的页面组件。
CN201710050694.3A 2017-01-23 2017-01-23 一种搜索应用的管理、数据搜索方法及其装置 Active CN108345600B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710050694.3A CN108345600B (zh) 2017-01-23 2017-01-23 一种搜索应用的管理、数据搜索方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710050694.3A CN108345600B (zh) 2017-01-23 2017-01-23 一种搜索应用的管理、数据搜索方法及其装置

Publications (2)

Publication Number Publication Date
CN108345600A CN108345600A (zh) 2018-07-31
CN108345600B true CN108345600B (zh) 2022-02-22

Family

ID=62974381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710050694.3A Active CN108345600B (zh) 2017-01-23 2017-01-23 一种搜索应用的管理、数据搜索方法及其装置

Country Status (1)

Country Link
CN (1) CN108345600B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165055B (zh) * 2018-08-30 2022-09-06 百度在线网络技术(北京)有限公司 无人驾驶系统组件加载方法、装置、计算机设备及介质
CN110321508A (zh) * 2019-07-12 2019-10-11 广州华多网络科技有限公司 页面展示数据的处理方法、装置、存储介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101634941A (zh) * 2008-07-24 2010-01-27 北京盖特佳信息安全技术股份有限公司 一种基于ie浏览器的数据复用的实现方法
CN102446193A (zh) * 2010-10-11 2012-05-09 腾讯科技(深圳)有限公司 一种搜索微博消息的方法及装置
CN106528576A (zh) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 页面搜索方法、终端及系统
CN106873982A (zh) * 2017-01-12 2017-06-20 中山大学 一种基于图形用户界面的软件搜索复用方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101634941A (zh) * 2008-07-24 2010-01-27 北京盖特佳信息安全技术股份有限公司 一种基于ie浏览器的数据复用的实现方法
CN102446193A (zh) * 2010-10-11 2012-05-09 腾讯科技(深圳)有限公司 一种搜索微博消息的方法及装置
CN106528576A (zh) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 页面搜索方法、终端及系统
CN106873982A (zh) * 2017-01-12 2017-06-20 中山大学 一种基于图形用户界面的软件搜索复用方法及系统

Also Published As

Publication number Publication date
CN108345600A (zh) 2018-07-31

Similar Documents

Publication Publication Date Title
CN111506849B (zh) 页面生成方法及装置
US9569499B2 (en) Method and apparatus for recommending content on the internet by evaluating users having similar preference tendencies
KR101419504B1 (ko) 사용자 성향 분석을 통한 맞춤형 쇼핑 정보 제공 시스템 및 방법
JP5442799B2 (ja) タグ管理装置、タグ管理方法、タグ管理プログラム、及びそのプログラムを記憶するコンピュータ読取可能な記録媒体
US10860883B2 (en) Using images and image metadata to locate resources
TWI752303B (zh) 營銷資訊投放平台建立方法及裝置
US20160306890A1 (en) Methods and systems for assessing excessive accessory listings in search results
CN108596695B (zh) 实体推送方法及系统
CN104579909B (zh) 一种用户信息的分类、用户分组信息的获取方法和设备
WO2019169963A1 (zh) 一种内容推荐方法、装置、电子设备及系统
CN110704418A (zh) 区块链信息查询方法、装置和设备
US20200142941A1 (en) System and method for improved searching across multiple databases
JP2012501492A (ja) インターネット上で商品のオブジェクト情報を提供するための方法およびシステム
CN112241495A (zh) 页面更新方法
CN105706081A (zh) 结构化信息链接注释
CN108345600B (zh) 一种搜索应用的管理、数据搜索方法及其装置
CN111782946A (zh) 书友推荐方法、计算设备及计算机存储介质
US20130173428A1 (en) Augmenting product information on a client device
TW201407523A (zh) 購物資訊處理方法與其系統
CN110717095B (zh) 服务项目的推送方法及装置
CN110134712B (zh) 实体信息标记的处理方法及装置、存储介质、终端
CN112347347A (zh) 用户生产内容推送方法及服务器端
CN108073609B (zh) 一种页面显示方法和装置
CN111125499A (zh) 数据查询方法及装置
CN115187330A (zh) 基于用户标签的产品推荐方法、装置、设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1258635

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant