CN114186101A - 数据处理方法、装置、计算机设备及存储介质 - Google Patents
数据处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114186101A CN114186101A CN202111536335.1A CN202111536335A CN114186101A CN 114186101 A CN114186101 A CN 114186101A CN 202111536335 A CN202111536335 A CN 202111536335A CN 114186101 A CN114186101 A CN 114186101A
- Authority
- CN
- China
- Prior art keywords
- data
- recommended
- target
- recommendation
- graph
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种数据处理方法、装置、计算机设备及存储介质,其中方法包括:获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。其中,采用本申请实施例提供的数据处理方法可以提升数据推荐的效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、计算机设备及存储介质。
背景技术
随着互联网技术的蓬勃发展,人们可以根据需求从网络中获取各式各样的信息。在实际应用场景中,通常会基于某些标签信息从相关数据中筛选出符合用户需求的数据,从而实现针对用户的数据推荐。在数据推荐的过程中,通常需要从海量的推荐数据中进行数据筛选,传统的数据推荐方法在存储这些推荐数据时,通常需要占用大量的存储空间,这也就导致了数据筛选时需要大量的计算资源,进而导致了数据推荐的速率低下的问题。因此,如何提升数据推荐的效率成了当下的研究热点。
发明内容
本申请实施例提供了一种数据处理方法、装置、计算机设备及存储介质,可提升数据推荐的效率。
一方面,本申请实施例提供了一种数据处理方法,包括:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
一方面,本申请实施例提供了一种数据处理装置,包括:
获取单元,用于获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
确定单元,用于从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
生成单元,用于基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
处理单元,用于根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
一方面,本申请实施例提供了一种计算机设备,包括:
处理器,所述处理器适于实现一条或多条计算机程序;
计算机存储介质,计算机存储介质存储有一条或多条计算机程序,一条或多条计算机程序适于由处理器加载并执行:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
一方面,本申请实施例还提供了一种计算机存储介质,计算机存储介质存储有一条或多条计算机程序,一条或多条计算机程序适于由处理器加载并执行:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
一方面,本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品包括计算机程序,计算机程序适于由处理器加载并执行:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
在本申请实施例中,推荐数据都存储在预设存储空间中,因此,执行本申请实施例提供的数据处理方法的相关设备在获取到每个推荐数据对应的目标推荐数据之后,可以基于该推荐数据以及对应的目标推荐数据在预设存储空间中的存储地址来生成图节点。其中,任一推荐数据对应的目标推荐数据指的是相关设备获取到的多个推荐数据中与该任一推荐数据具有关联关系的推荐数据,也就是说,相关设备可以基于本申请实施例中的每个图节点获取具有关联关系的至少两个推荐数据。那么,也就不难理解,相关设备在采用本申请实施例提供的数据处理方法实现数据推荐时,可以基于目标数据图中的某一个节点获取到推送数据,避免了对预设存储空间中所有推荐数据的遍历,因此,采用本申请实施例提供的数据处理方法,可以有效地提升数据推荐的速率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种目标数据图的结构示意图;
图1b是本申请实施例提供的一种数据处理***的示意图;
图2是本申请实施例提供的一种数据处理方法的示意流程图;
图3是本申请实施例提供的又一种数据处理方法的示意流程图;
图4是本申请实施例提供的一种数据处理装置的结构示意图;
图5是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
本申请实施例提供了一种数据处理方法,该方法指出:可以将所有推荐数据存储在预设存储空间中,然后基于一个推荐数据以及与该推荐数据具有关联关系的目标推荐数据的存储地址(即:目标推荐数据在预设存储空间中的存储地址)来生成一个图节点,进一步可以基于每个推荐数据对应的图节点生成目标数据图。那么,在为客户端进行数据推荐时,可以从目标数据图中获取相关的推荐数据来作为推送数据发送给对应客户端。由于目标数据图中每个图节点都存储了具有关联关系的推荐数据,因此,基于该目标数据图进行推送数据的确定可以具备较高的速率,也就是说,基于该目标数据图进行数据推荐时具有较高的数据推荐效率。
其中,推送数据指的是:计算机设备从预设存储空间包括的推荐数据中确定出的、需要为该客户端推送的推荐数据。推荐数据可以是与客户端相关的任一推荐业务中的业务数据,且推荐数据的数据类型可以包括但不限于:图像类型、文本类型、音频类型、视频类型等。示例性地,以客户端为购物类客户端为例,推荐数据可以是商品推荐业务中的业务数据,如:在该购物类客户端中可购买到的商品对应的商品名称,或者,在该购物类客户端中开设的店铺对应的店铺信息(如:店铺视频简介、店铺推广图像)等。任一推荐数据的目标推荐数据可以理解为:在预设存储空间包括的所有推荐数据中,与该任一推荐数据具有关联关系的推荐数据。可选地,推荐数据A和推荐数据B具有关联关系的情况,可以包括但不限于以下任意一种或两种:(1)推荐数据A的数据特征和推荐数据B的数据特征之间的特征相似度大于相似度阈值;(2)在客户端中产生针对任一推荐数据(即:推荐数据A或推荐数据B)的选择行为后,有较大概率(如:80%及以上)产生针对对应的另一推荐数据(即:推荐数据B或推荐数据A)的选择行为。以商品推荐场景下的数据推荐为例,若用户浏览XX相机这一商品之后,有85%的概率会浏览XX相纸,那么,可以认为XX相机对应的商品数据(如:商品名称)和XX相纸对应的商品数据之间具有关联关系。预设存储空间可以是本地存储空间(如:客户端所在终端设备的存储器),也可以是云存储空间(如:客户端所在服务器的数据库)。其中,任一推荐数据对应的目标推荐数据的确定方式可参见后续实施例中的详细阐述,本申请实施例在此不作赘述。
在具体实施例中,预设存储空间中的推荐数据可以是按照数据表的形式存储的。那么,在此情况下,推荐数据的存储地址可以用于指示该推荐数据在数据表中的具***置,如:预设存储空间中XX数据表的X行X列。此外,目标数据图是指数学意义上的图,是一种数据结构,其本质上可以理解为二维数组。图可以用于描述一组对象之间的关联关系,这一组对象中任一对象均可以称为节点或点。那么,若图中任意两节点之间具有连接关系,则认为这两个节点对应的两个数据之间具有关联关系,并且对应地,该图对应的二维数组中用于表示这两个节点的关联关系的元素值为非零值。示例性地,图的结构可以如图1a所示。图1a中的每个圆圈(如:图1a中由101标记的圆圈或图1a中由103标记的圆圈)代表图中的一个图节点,圆圈之间的连边用于表示对应两个图节点之间具有连接关系,也就可以理解,若两个圆圈之间存在连边,则代表对应两个图节点对应的两个数据之间具备关联关系。结合本申请实施例来说,假设图1a所示的图用于表示本申请实施例中的目标数据图,那么,每个图节点可以包括一个推荐数据以及与该推荐数据具有关联关系的目标推荐数据的存储地址,任意两个图节点之间的连边则可以表示对应的两个推荐数据之间具备关联关系。那么,也就是说,因为由101标记的节点(以下简称:节点101)和由103标记的节点(以下简称:节点103)之间具有由102标记的连边,因此可以认为节点101和节点103之间具有关联关系,也就进一步可以认为节点101存储的推荐数据和节点103存储的推荐数据之间具有关联关系。其中,不难理解的是,若一个图节点中存储有另一个图节点对应的推荐数据的存储地址,则代表这两个图节点在目标数据图中具备连接关系。那么,基于此,可以根据每个推荐数据对应的图节点中存储的存储地址来确定各个图节点之间的连接关系,从而可以基于这些图节点以及图节点之间的连接关系构建得到网状的目标数据图。也就可以理解,在实际应用中,用于执行数据推荐的设备可以在检测到客户端浏览了节点101存储的推荐数据之后,向该客户端推送与节点101具有连接关系的其他节点存储的推荐数据(如:节点103存储的推荐数据),进而实现针对客户端的数据推荐。
在一个实施例中,本申请实施例提供的数据处理方法可以由计算机设备来执行。其中,计算机设备可以是终端设备,也可以是服务器,本申请实施例对此不作具体限制。那么,当本申请实施例提供的数据处理方法由计算机设备来执行时,本申请实施例的大致原理可以如下:计算机设备先将获取到的推荐数据存储至预设存储空间,然后,计算机设备可以确定每个推荐数据对应的目标推荐数据,并在计算机设备确定出任一推荐数据的目标推荐数据之后,获取该目标推荐数据的存储地址。进一步地,计算机设备可以基于该任一推荐数据以及获取到的存储地址生成一个图节点。那么,基于此,计算机设备可以基于获取到的多个推荐数据生成多个图节点,进而使得计算机设备可以基于多个图节点构建得到目标数据图。那么,在计算机设备构建出目标数据图之后,计算机设备可以基于目标数据图来确定需要为客户端发送的推送数据,从而实现对客户端的数据推荐。
在又一个实施例中,本申请实施例提供的数据处理方法可以应用于如图1b所示的数据处理***。图1b可见,该***包括数据推荐模块111,数据安全管理模块112,数据传输模块113以及数据应用模块114。其中,数据推荐模块111用于为客户端确定推送数据,且数据推荐模块111可以包括一个或多个服务器,任意两个服务器之间均可以建立数据连接。示例性地,这一个或多个服务器具体可以包括以下任意一个或多个:IM(Instant Messaging,即时通讯)服务器、推荐数据过滤服务器、数据推荐服务器、AI(Artificial Intelligence,人工智能)运算服务器。实际应用中,数据推荐模块111中任意两个服务器之间的数据连接可以是计算机设备基于Netty框架实现的。Netty框架指的是一款异步的事件驱动的网络应用程序框架,其支持快速地开发可维护的高性能的面向协议的服务器和客户端。为了便于清楚地理解本申请实施例提供的数据处理***,以下对数据推荐模块111可以包括的各个服务器进行详细介绍。
(1)IM服务器:IM服务器和客户端建立有通信连接,并且IM服务器可以用于和客户端进行信息交互,如:用于将推送数据发送给客户端。在实际应用中,IM服务器和客户端之间的通信连接也可以是基于Netty框架实现的。此外,IM服务器还可以用于获取客户端对应目标对象的对象数据,并对获取到的对象数据进行数据分析,以使得数据推荐模块111中的其他服务器可以根据数据分析结果为客户端提供数据推荐业务。在本申请实施例中,IM服务器还可以提供独有的举报、反馈等功能,使得本申请实施例提供的数据处理***可以支持客户端对应的用户通过IM服务器直接举报其他有违规、违法行为的用户。那么,数据推荐***的监管运营人员可以在运营管理平台上查看举报信息,以及可以在运营管理平台上对违规用户进行禁言等操作,从而使得本申请实施例提供的数据处理***可以实现技术与运营管理的完美结合,最大限度地保证客户端使用环境的健康性。
(2)数据推荐服务器:数据推荐服务器可以用于获取推荐业务中的业务数据,并从冗杂的各项业务数据中确定出可能需要推送给客户端的业务数据,并进一步将确定出的业务数据作为推荐数据。此外,数据推荐服务器还可以用于构建推荐数据对应的目标数据图,以使得AI运算服务器和推荐数据过滤服务器可以基于目标数据图实现为客户端提供数据推荐业务。在具体实现中,数据推荐服务器中可以通过定义注解来实现目标数据图的构建。其中,注解(Annotation)又称标注,是JDK5.0(Java Development Kit,Java语言软件开发工具包)引入的一种注释机制。在这种注释机制中,注解可以使用@interface(一种实现自定义注解的方式)实现定义。需要说明的是,在本申请实施例中,注解可以理解为一个软件包,这个软件包存储的是用于实现目标数据图的构建的代码逻辑对应的代码数据。此外,需要说明的是,在实际应用中,本申请实施例中的注解可以被其它应用程序调用。也就是说,本申请实施例提供的数据处理***可以包括其他应用程序对应的终端设备和后台服务器等。其中,其他应用程序调用本申请实施例提供的注解的方式,可以具体参见(3)中关于推荐数据过滤服务器的相关描述。
(3)推荐数据过滤服务器:推荐数据过滤服务器可以用于实现部分或全部推送数据的确定,还可以实现与其他应用程序之间数据连接的建立。在推荐数据过滤服务器实现与其他应用程序之间的数据连接的过程中,相关技术人员可以将本申请实施例中的注解封装成Jar包(Java Archive,Java归档),然后将该Jar包存储在数据仓库(以maven仓库为例)中。在此情况下,当存在其他应用程序想要调用本申请实施例提供的数据处理方法时,该应用程序所在业务方可以将该应用程序封装成Jar包并上传至maven仓库。然后,业务方可以在maven仓库的配置文件pom.xml(maven仓库中的一个配置文件的文件名称)中添加该应用程序的Jar包的GAV(GroupId组织机构/顶层项目、ArtifactId项目/库、Version唯一发行版本号)坐标,以使得推荐数据过滤服务器可以建立应用程序的Jar包与注解对应的Jar包之间的依赖关系,从而实现应用程序对注解的调用,也就使得业务方的应用程序可以采用本申请实施例提供的数据处理方法。
(4)AI运算服务器:AI运算服务器可以用于根据IM服务器获取到的对象数据以及数据推荐服务器中的目标数据图,来确定客户端对应的推送数据。需要说明的是,当数据处理***检测到客户端有数据推荐需求的时候,数据推荐模块111会首先在AI运算服务器中进行一次推送数据的确定。但是为了保证推送数据的准确性,AI运算服务器还可以将确定出的推送数据发送至推荐数据过滤服务器进行二次筛选,从而使得数据推荐模块111可以确定出更加符合客户端的业务需求的推荐数据。
以下继续对数据处理***包括的其他组成模块进行说明。其中,数据安全管理模块112用于保证推荐数据以及客户端相关数据的安全性,数据安全管理模块112可以是基于防火墙技术实现的,防火墙技术是指:一种通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的技术。数据传输模块113用于在数据推荐模块111和数据应用模块114之间传输客户端相关数据(如:后续提及的对象数据)和推荐数据等,数据传输模块113可以由广域网和/或局域网组成。广域网和局域网均可用于数据传输,其中,广域网是指:用于连接多个地区、城市和国家,或横跨几个洲,并且提供远距离通信的远程网络;局域网是指:一个可连接住宅、学校、实验室、大学校园或办公大楼等有限区域内的计算机的计算机网络。数据应用模块114用于接收数据推荐模块111确定出来的推送数据,在实际应用中,数据应用模块114主要包括一个或多个终端设备,并且任一终端设备中可以运行具有数据推荐需求的客户端。
那么,当本申请实施例提供的数据处理方法应用于如图1b所示的数据处理***中时,该数据处理方法具体可以由图1b中的各个模块协同执行。那么,在此情况下,该数据处理方法的大致原理可以如下:由数据推荐模块111获取推荐数据,并基于获取到的推荐数据构建目标数据图。然后,当数据推荐模块111检测到数据应用模块114中运行的客户端存在数据推荐需求时,从构建好的目标数据图中为该客户端确定推送数据,并通过数据传输模块113发送给数据应用模块114中的客户端,从而实现对客户端的数据推荐。其中,在数据处理***进行推荐数据的传输过程中,还可以通过数据安全管理模块112对传输的推荐数据的数据来源或者客户端发送的相关数据(如:后续实施例中提及的对象数据)进行安全检测。这种方式可以有效防止恶意入侵、恶意代码的传播等,从而确保客户端以及数据推荐模块111的安全性,在一定程度上可以提升客户端的用户体验以及降低数据处理***的维护成本。
需要说明的是,本申请实施例中的终端设备可以包括但不限于:智能手机、平板电脑、笔记本电脑、台式计算机、车载终端、智能电视等。终端设备内可运行各式各样的客户端(application,APP),如多媒体播放客户端、社交客户端、浏览器客户端、信息流客户端、教育客户端,以及购物类客户端等等。此外,服务器可以包括但不限于:独立的物理服务器,多个物理服务器构成的服务器集群或者分布式***,以及提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content DeliveryNetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器等,本申请对此不作具体限制。
为了便于描述,在无特殊说明的情况下,以下均以计算机设备单独执行上述数据处理方法为例,来对本申请实施例提供的数据处理方法所涉及的各个步骤进行详细说明。
请参见图2,图2是本申请实施例提供的一种数据处理方法的流程示意图,该数据处理方法可以由计算机设备执行。如图2所示,该数据处理方法包括如下步骤S201-S204:
S201,获取多个推荐数据,并将多个推荐数据存储至预设存储空间。
在实际应用中,推荐数据可以是与推荐业务相关的数据,推荐业务可以是计算机设备能够为客户端提供的任一种。那么,计算机设备可以从推荐业务的业务数据中获取推荐数据。举例来说,在网络社交场景下的用户推荐业务中,推荐数据可以是用户信息(如:用户喜好信息或用户位置信息等);在音乐播放场景下的音乐推荐业务中,推荐数据可以是歌曲信息、歌单信息或歌手信息等。不难理解,计算机设备通过向客户端发送推荐数据,可以使得该客户端对应的目标对象能够更快地获取到满足对象需求的业务数据,在一定程度上可以提升目标对象对客户端的满意度,从而可以提升客户端的产品竞争力。具体以社交应用场景为例,社交应用场景中的客户端可以是用于提供社交服务的社交应用程序,目标对象则可以是使用社交应用程序的用户。那么,当推荐数据是用户信息时,计算机设备向该客户端对应的用户推送其他用户的用户信息,可以使得该客户端对应的用户可以更快速地找到志同道合的好友,在一定程度上可以提升用户对社交应用程序的体验。需要说明的是,当本申请实施例运用到具体产品或技术中时,若涉及到计算机设备获取与用户信息相关的数据的行为,该计算机设备需要获得用户许可或者同意,并且计算机设备获取的用户信息需要符合相关国家和地区的法律法规和标准。
预设存储空间可以是计算机设备的存储器,也可以是与计算机设备具有数据连接的数据库。在具体应用中,计算机设备可以在预设存储空间中建立数据表,并采用数据表来存储获取到的推荐数据。可选地,计算机设备可以建立一个或多个数据表,每个数据表用于存储一个类别的推荐数据。以商品推荐业务中推荐数据为商品名称为例,若该场景下的商品分为日用品类、学习用具类、服饰类和生鲜类,那么,计算机设备可以在预设存储空间中构建4个数据表,一个数据表用于存储一个类别下的商品名称。可选地,计算机设备也可以只建立一个数据表,并采用该数据表存储所有的推荐数据。当然,在其他实施例中,计算机设备也可以按照其他方式确定构建的数据表的数量,本申请实施例对此不作具体限制。
S202,从多个推荐数据中确定与每个推荐数据关联的目标推荐数据,并获取目标推荐数据在预设存储空间中的存储地址。
其中,计算机设备可以根据任一推荐数据的存储地址,从预设存储空间中获取到该任一推荐数据。在计算机设备获取到的多个推荐数据中,每个推荐数据与其他至少一个推荐数据存在关联关系。也就可以理解,在本申请实施例中的每个推荐数据至少对应一个目标推荐数据。由于任一目标推荐数据均是从多个推荐数据中确定出来的,也就是说,任一目标推荐数据就是存储在预设存储空间中一个推荐数据,那么,当计算机设备采用多个数据表来存储计算机设备从推荐业务中获取到的推荐数据时,目标推荐数据的存储位置可以是存储该目标推荐数据的数据表在预设存储空间中的位置(如:XX数据表)。在此情况下,计算机设备可以根据一个存储位置获取到对应的数据表包括的一个或多个推荐数据。当计算机设备采用一个数据表来存储计算机设备从推荐业务中获取到的推荐数据时,目标推荐数据的存储位置可以是该目标推荐数据在数据表中的位置(如:XX行XX列)。
需要说明的是,为了便于更清楚地描述本申请实施例提供的数据处理方法,在无特殊说明的情况下,以下均以计算机设备采用一个数据表存储所有的推荐数据为例,来对本申请实施例涉及的相关步骤进行详细阐述。
S203,基于每个推荐数据及与每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点。
在计算机设备获取到任一推荐数据以及该任一推荐数据对应的目标推荐数据之后,计算机设备可以基于获取到的数据构建一个图节点,也就可以理解,计算机设备可以根据多个推荐数据构建得到多个图节点。在具体实施例中,为了便于计算机设备能够根据一个推荐数据快速地获取到与该推荐数据具有关联关系的其他推荐数据(即:该推荐数据对应的目标推荐数据),计算机设备可以采用不同的存储方式来存储推荐数据和对应目标推荐数据的存储地址。示例性地,计算机设备可以采用字节数组来存储推荐数据,以及采用双向链表来存储对应目标推荐数据的存储地址。需要说明的是,计算机设备构建图节点的具体方式将在后续实施例中进行详细阐述,本申请实施例在此不作赘述。
又由上述描述可知,计算机设备可以基于获取到的多个推荐数据构建得到多个图节点。那么,由于图节点中存储的推荐数据只有一个,因此,每个图节点所占用的存储资源较小。进而可见,计算机设备采用本申请实施例提供的数据处理方法来构建推荐业务中用于存储推荐数据的图节点时,无需为该推荐业务分配大量的存储空间,在一定程度上可以节省推荐业务的开发成本。
S204,根据多个图节点构建目标数据图,目标数据图用于确定向客户端发送的推送数据。
其中,由前述可知,推送数据指的是:计算机设备从所有推荐数据中确定出来的、需要发送至客户端的推荐数据。那么,不难理解,推送数据存在于计算机设备获取到的多个推荐数据中。又基于步骤S203的相关实施例的描述可以理解,每个推荐数据都有对应的图节点,那么,由于任一推荐数据的目标推荐数据均存在于计算机设备获取到的多个推荐数据中,也就可以理解,任一目标推荐数据也有对应的图节点。基于此,不难理解的是,由于任一图节点中存储有一个推荐数据以及与该推荐数据具有关联关系的目标推荐数据的存储地址,那么,计算机设备则可以基于任一图节点获取到与该图节点存储的推荐数据具有关联关系的目标推荐数据,又由于任一目标推荐数据也具有对应的图节点,那么在某种程度上可以认为该任一图节点和对应的目标推荐数据所在的图节点之间具有关联关系,也就使得计算机设备可以基于多个图节点中各个图节点之间的关联关系构建得到目标数据图。
在本申请实施例中,计算机设备在获取到推荐数据后将推荐数据都存储在预设存储空间中,因此,当计算机设备获取到每个推荐数据对应的目标推荐数据之后,该计算机设备可以基于该推荐数据以及对应的目标推荐数据在预设存储空间中的存储地址来生成图节点。在通常情况下,计算机设备存储一个存储地址所需的存储空间远小于存储一个推荐数据所需的存储空间,因此不难理解,计算机设备采用此种方式来根据每个推荐数据对应的图节点构建得到目标数据图,可以使得计算机设备分配较小的存储空间来存储目标数据图,可以有效地节省存储资源。此外,由于任一推荐数据对应的目标推荐数据指的是计算机设备获取到的多个推荐数据中与该任一推荐数据具有关联关系的推荐数据,也就是说,计算机设备可以基于本申请实施例中的每个图节点获取具有关联关系的至少两个推荐数据。那么,也就不难理解,计算机设备在采用本申请实施例提供的数据处理方法实现数据推荐时,可以基于目标数据图中的某一个节点获取到推送数据,避免了对预设存储空间中所有推荐数据的遍历,因此,计算机设备采用本申请实施例提供的数据处理方法,可以有效地提升数据推荐的速率。
请参见图3,图3是本申请实施例提供的又一种数据处理方法的示意流程图,该方法也可由计算机设备执行。如图3所示,该方法包括如下步骤S301-S306:
S301,获取多个推荐数据,并将多个推荐数据存储至预设存储空间。
在一个实施例中,步骤S301的具体实施例可以参见步骤S201中相关实施例的描述,本申请实施例在此不作赘述。
S302,从多个推荐数据中确定与每个推荐数据关联的目标推荐数据,并获取目标推荐数据在预设存储空间中的存储地址。
在一个实施例中,计算机设备在获取多个推荐数据中任一推荐数据对应的目标推荐数据时,计算机设备可以先对多个推荐数据中的每个推荐数据进行特征提取,以得到每个推荐数据的数据特征。其中,为了便于说明,以下称多个推荐数据中任一推荐数据为推荐数据A,基于此,进一步地,计算机设备可以计算推荐数据A的数据特征与其他推荐数据的数据特征之间的特征相似度,并根据特征相似度来判定对应两个推荐数据之间是否具有关联关系,从而确定出对应的目标推荐数据。其中,其他推荐数据指的是:多个推荐数据中除推荐数据A之外的任一推荐数据。同样地,为了便于说明,以下称其他推荐数据为推荐数据B。那么,基于此,若计算机设备确定出推荐数据A的数据特征与推荐数据B的数据特征之间的特征相似度大于或等于相似度阈值(如:80%),则计算机设备可以确定推荐数据B和推荐数据A之间具有关联关系,从而计算机设备可以进一步将推荐数据B作为推荐数据A对应的目标推荐数据。那么,不难理解,若计算机设备基于推荐数据之间的特征相似度来确定对应的两个推荐特征之间的关联关系,则在实际的数据推荐场景中,计算机设备向客户端推送的推送数据可以是与某个推荐数据相似的相似推荐数据,相似推荐数据也就是该推荐数据对应的目标推荐数据。在此情况下,客户端对应的目标对象可以更快速地获取到需要的数据,提升了用户的体验感。
在又一个实施例中,计算机设备还可以基于客户端对应目标对象的行为数据来确定推荐数据之间的关联关系。具体来说,计算机设备可以先获取该客户端对应的所有目标对象中每个目标对象的行为数据,然后计算机设备可以对获取到的行为数据进行数据分析,进而使得计算机设备可以在对获取到的行为数据进行数据分析的过程中确定推荐数据之间的关联关系。为了便于清楚的描述计算机设备确定推荐数据之间的关联关系的具体方式,以下以游戏推荐场景为例来对相应的步骤进行详细阐述。在游戏推荐场景中,推荐数据可以是游戏名称(如:后续提及的游戏A和游戏B),目标对象可以是在游戏类客户端中具有账号的用户,目标对象的行为数据可以包括但不限于:游戏购买记录、游戏搜索记录、游戏评论数据等。以行为数据为游戏购买记录为例,在此情况下,计算机设备可以先获取一个或多个用户的游戏购买记录,然后计算机设备可以根据获取到的游戏购买记录进行数据分析,以确定对应用户产生的某次针对某项游戏购买行为是否和其他一项或多项游戏名称有关,若有关,则计算机设备可以认为对应的游戏具有关联关系,进而使得计算机设备可以确定对应的推荐数据之间的关联关系。
举例来说,若计算机设备在对用户的游戏购买记录进行数据分析的过程中发现:用户在购买游戏A之后有较大的概率购买游戏B(即:用户在购买游戏A之后,产生购买游戏B这一行为的概率大于或等于概率阈值)。那么,在此情况下,计算机设备可以确定游戏A这一推荐数据与游戏B这一推荐数据之间具备关联关系,进而可以确定出游戏A对应的目标推荐数据包括游戏B。不难理解,在实际应用中,游戏A和游戏B之间的特征相似度可能小于特征相似度阈值,如:游戏A可以是拼图类游戏,游戏B可以是竞技类游戏,那么,从游戏本身的特征出发,可以判定游戏A和游戏B并不相似。基于此,也就不难理解,计算机设备通过对行为数据进行数据分析从而确定推荐数据之间的关联关系的方式,可以使得每个推荐数据对应更丰富的目标推荐数据,从而可以在实际的数据推荐场景中使得计算机设备向客户端推送更丰富多样的推荐数据,进一步也就可以使得客户端对应的目标对象可以获取到更多样化的数据,可以提升对应客户端的趣味性。
S303,基于每个推荐数据及与每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点。
在实际应用中,针对任一推荐数据,计算机设备在生成该推荐数据的图节点时,可以先对该推荐数据进行可逆压缩编码处理,得到编码数据;进一步地,计算机设备在得到编码数据之后可以采用字节数组存储该编码数据,从而实现对该推荐数据的存储。其中,可逆压缩编码又称无损数据压缩,是指:计算机设备对压缩后的推荐数据进行解压缩后,可以完全恢复到压缩前的原样的一种技术。也就是说,在计算机设备采用该可逆压缩编码的方式对推荐数据进行数据压缩的过程中,推荐数据对应的信息不受损失。此种压缩编码方式保证了压缩前和压缩后的推荐数据的一致性。在实际应用中,计算机设备可以具体采用香农-范诺编码、霍夫曼编码、词典编码或算术编码等可逆压缩编码技术来对推荐数据进行可逆压缩编码,本申请实施例对此不作限制。那么,不难理解,在计算机设备生成图节点时,计算机设备采用可逆压缩编码加字节数组来对推荐数据进行存储的方式,可以在保证推荐数据完整的情况下减少图节点所占用的存储空间,从而可以有效节省计算机设备的存储资源。此外,在计算机设备构建任一推荐数据对应的图节点的过程中,计算机设备还可以采用双向链表存储该任一推荐数据对应的目标推荐数据的存储地址,以使得计算机设备可以进一步基于双向链表和字节数组生成图节点。其中,双向链表可以是非循环双向链表,也可以是循环双向链表(或称:环形双向链表)。双向链表是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。
在本申请实施例中,双向链表中每个数据结点用于存储一个目标推荐数据的存储地址。任一数据结点包括两个指针,这两个指针分别指向前一个数据结点和后一个数据结点。基于此,计算机设备可以从双向链表中的任意一个结点开始遍历该双向链表。具体来说,计算机设备可以从双向链表中任一结点开始访问它的前驱结点和后继结点,从而可以实现计算机设备对整个双向链表中所有结点的访问。需要说明的是,若计算机设备采用的是环形双向链表,则计算机设备还可以在环形双向链表中添加缺口指针。所谓的缺口指针可以理解为一个结点标记,用于标记对应的链表节点为环形双向链表中的起止结点,从而使得计算机设备可以从该标识对应的链表节点处开始遍历环形双向链表,并在计算机设备再次访问到该链表节点时停止对环形双向链表的遍历。不难理解,计算机设备在双向链表中添加缺口指针,可以避免计算机设备对双向链表的重复遍历,或者理解为,可以避免计算机设备重复地获取存储地址以及基于存储地址获取对应目标推荐数据,那么,也就不难理解,在双向链表中添加缺口指针可以在一定程度上提升计算机设备执行数据推荐时的速率。并且示例性地,环形双向链表可以是List(是一个计算机专业术语,可以理解为以线性列的方式存储数据的集合),那么计算机设备可以借助List的迭代器实现对环形双向链表的遍历(如:深度优先遍历、广度优先遍历等)。
在一个实施例中,任一图节点中的双向链表还可以用于存储推荐数据之间的关联度。具体来说,双向链表还可以用于存储每个存储地址对应的目标推荐数据与该图节点对应的推荐数据之间的关联度。基于前述可知,推荐数据之间的关联关系可以是根据推荐数据之间的特征相似度确定的,那么,双向链表中存储的关联度则可以是特征相似度。在实际应用中,针对任一推荐数据对应的图节点中的双向链表的构建,计算机设备可以先获取该任一推荐数据与该任一推荐数据对应的目标推荐数据之间的特征相似度,然后将获取到的特征相似度作为该目标推荐数据与该任一推荐数据之间的关联度。进一步地,计算机设备可以将获取到的关联度以及该目标推荐数据的存储地址,关联存储至双向链表的一个链表节点中,也就是说,计算机设备可以用目标推荐数据对应的关联度来表示相应链表结点的权重,从而使得计算机设备可以在实际的数据推荐过程中,根据每个存储地址对应的关联度来确定需要为客户端推送的推送数据。举例来说,当客户端中存在针对推荐数据A的浏览行为时,计算机设备可以从推荐数据A对应的图节点的双向链表中,确定与推荐数据A的关联度大于等于关联度阈值的存储地址,进一步地,计算机设备可以基于确定出的存储地址获取对应的推荐数据作为推送数据发送给客户端。不难理解,这种推送数据的确定方式可以使得客户端接收到的推送数据与历史浏览数据具有更强的关联关系,从而使得计算机设备可以为客户端发送更准确地推荐数据。
S304,根据多个图节点构建目标数据图。
在一个实施例中,计算机设备根据多个图节点构建目标数据图的具体方式可以参见步骤S204的相关实施例,本申请在此不再赘述。
S305,获取目标客户端对应目标对象的对象数据,并根据对象数据确定目标对象的对象标签。
其中,目标客户端指的是存在于某个用户的终端设备上的客户端,如:存在于用户A的智能手机上的社交类客户端X,或,存在于用户B的笔记本电脑上的社交类客户端X。实际应用中,在计算机设备获取目标客户端对应目标对象的对象数据的过程中,计算机设备可以先获取目标客户端对应的标签参数,然后基于目标客户端对应的标签参数获取目标对象的对象数据。其中,标签参数包括第一标签参数和/或第二标签参数,第一标签参数用于指示计算机设备需要获取的对象数据为对象画像数据(如:对象所在城市、对象年龄等);第二标签参数用于指示计算机设备需要获取的对象数据为对象行为数据(如:历史浏览记录、历史购买记录等)。示例性地,标签参数可以是客户端为对应的目标对象预先设置的,也可以是计算机设备预先为所有客户端统一设置的,本申请实施例对此不作限制。
需要说明的是,当本申请实施例运用到具体产品或技术中时,若涉及到计算机设备获取与用户信息相关的数据(如:对象行为数据、对象画像数据等),该计算机设备需要获得用户许可或者同意,并且计算机设备获取的用户信息需要符合相关国家和地区的法律法规和标准。
S306,从目标数据图中获取与对象标签匹配的第一待推荐数据,并基于第一待推荐数据确定向目标客户端发送的推送数据。
其中,推送数据可以是一个或多个,并且推送数据可以包括计算机设备从目标数据图中确定出的推荐数据,还可以包括计算机设备从推荐业务新产生的业务数据中确定出的推荐数据。
在一个实施例中,当推送数据包括计算机设备从目标数据图中确定出的推荐数据时,计算机设备可以先确定对象标签对应的第一特征信息(如:对象标签的语义信息),然后计算机设备再从目标图数据中获取任一图节点存储的推荐数据的第二特征信息(如:推荐数据的语义信息)。进一步地,计算机设备可以在确定第一特征信息和第二特征信息之间的匹配度大于或等于匹配度阈值后,将该第二特征信息对应的推荐数据作为第一待推荐数据。在此情况下,计算机设备在确定推送数据时可以先获取第一待推荐数据的图节点中的双向链表,然后计算机设备可以基于双向链表中的存储地址获取相应的推荐数据;进一步地,计算机设备可以将基于双向链表获取到的推荐数据和第一待推荐数据一起作为确定出的推送数据发送给目标客户端。可选地,在计算机设备从目标数据图中确定推送数据时,计算机设备确定第一待推荐数据的方式也可以如下:计算机设备依次获取每个图节点中的推荐数据的特征信息,然后,计算机设备再将对象标签的特征信息和每个推荐数据的特征信息进行匹配。在计算机设备确定对象标签的特征信息和对应推荐数据的特征信息之间的匹配度大于或等于匹配度阈值后,将该推荐数据作为第一待推荐数据。也就是说,在此情况下,计算机设备可以依次确定目标数据图中的每个图节点存储的推荐数据是否为第一推荐数据,从而确定出目标数据图包括的所有第一待推荐数据,进一步使得计算机设备可以将确定出的所有第一待推荐数据作为推送数据发送给目标客户端。
在又一个实施例中,当推荐业务新产生了业务数据时,计算机设备可以将产生的业务数据作为推荐数据存储至预设存储空间中,从而使得计算机设备可以基于新产生的推荐数据确定出更全面的推送数据。那么,当推送数据包括计算机设备从目标数据图中确定出的推荐数据,以及计算机设备从推荐业务新产生的业务数据中确定出的推荐数据时,计算机设备确定推送数据的方式可以如下:在计算机设备检测到预设存储空间中存在除目标数据图包括的多个推荐数据之外的其他推荐数据后,计算机设备可以从其他推荐数据中确定出与对象标签匹配的第二待推荐数据。其中,第二待处理数据的数量可以为一个或多个。那么,计算机设备可以基于获取到的第二待推荐数据及第一待推荐数据确定出需要向目标客户端发送的推送数据。具体来说,计算机设备可以基于第一待推荐数据确定出目标数据图中所有需要为客户端推送的推送数据,然后计算机设备可以将从目标数据图中确定出的推送数据和第二待推荐数据一起作为最终的推送数据发送给目标客户端。
在具体实施例中,计算机设备还可以基于新产生的推荐数据更新完善目标数据图。可以理解,随着时代的发展以及互联网技术的革新,客户端所需要的推荐数据是与时俱进的,因此,计算机设备对目标数据图进行更新可以确保推送数据符合客户端的业务需求,从而保持推荐数据的有效性。具体来说,计算机设备更新目标数据图的方式可以如下:计算机设备先获取第二待推荐数据与多个推荐数据中任一推荐数据之间的特征相似度;若计算机设备确定该特征相似度大于或等于相似度阈值,则建立该任一推荐数据与第二待推荐数据之间的关联关系;进一步地,计算机设备可以基于该任一推荐数据与第二待推荐数据之间的关联关系,更新目标数据图。
其中,计算机设备建立任一推荐数据与第二待推荐数据之间的关联关系时,可以包括如下步骤:计算机设备获取第二待推荐数据在预设存储空间中的存储位置;计算机设备将获取到的存储位置添加至该任一推荐数据对应的图节点的双向链表中;计算机设备从目标数据图包括的推荐数据中确定出与第二待推荐数据具有关联关系的推荐数据,然后计算机设备获取与第二待推荐数据具有关联关系的推荐数据的存储地址,并进一步基于获取到的存储地址以及第二待推荐数据生成该第二待推荐数据对应的图节点;最后,计算机设备将该图节点添加至目标数据图中以实现对目标数据图的更新。
在本申请实施例中,计算机设备可以采用带有缺口指针的环形双向链表存储推荐数据的存储地址,该缺口指针可以用于指示计算机设备从环形双向链表中获取存储地址时的起始访问结点和终止访问结点。也就是说,计算机设备可以从缺口指针标记的链表结点开始获取存储地址,进而基于存储地址获取对应的推荐数据,并在计算机设备下一次访问到被缺口指针标记的链表结点时停止获取存储地址。这样的处理方式可以避免计算机设备在一个图节点中重复获取相同的存储地址,从而保证计算机设备获取推荐数据时的速率,也就可以进一步保证计算机设备在执行数据推荐时的效率。此外,由于计算机设备是基于可逆压缩编码技术对每个图节点中的存储数据进行压缩处理,因此,可以保证推荐数据以字节数组的形式存储在图节点中时的完整性,从而保证计算机设备在执行数据推荐时的准确性。
基于上述数据处理方法的相关描述,本申请还公开了一种数据处理装置。该数据处理装置可以是运行与上述所提及的计算机设备中的一个计算机程序(包括程序代码)。该数据处理装置可以执行如图2和图3所示的数据处理方法,请参见图4,该数据处理装置至少可以包括:获取单元401、确定单元402、生成单元403以及处理单元404。
获取单元401,用于获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
确定单元402,用于从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
生成单元403,用于基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
处理单元404,用于根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
在一种实施方式中,生成单元403可以用于执行:
对所述任一推荐数据进行可逆压缩编码处理,得到编码数据,并采用字节数组存储所述编码数据;
采用双向链表存储所述任一推荐数据对应的目标推荐数据的存储地址;
基于所述双向链表和所述字节数组生成图节点。
在又一种实施方式中,处理单元404还可以用于执行:
获取所述任一推荐数据对应的目标推荐数据与所述任一推荐数据之间的关联度;
将获取到的关联度以及所述任一推荐数据对应的目标推荐数据的存储地址,关联存储至所述双向链表中。
在又一种实施方式中,处理单元404还可以用于执行:
获取目标客户端对应目标对象的对象数据,并根据所述对象数据确定所述目标对象的对象标签;
从所述目标数据图中获取与所述对象标签匹配的第一待推荐数据,并基于所述第一待推荐数据确定向所述目标客户端发送的推送数据。
在又一种实施方式中,获取单元401可以用于执行:
获取所述目标客户端对应的标签参数;
基于所述目标客户端对应的标签参数获取所述目标对象的对象数据;其中,所述标签参数包括第一标签参数和/或第二标签参数,所述第一标签参数用于指示需要获取的对象数据为对象画像数据,所述第二标签参数用于指示需要获取的对象数据为对象行为数据。
在又一种实施方式中,处理单元404还可以用于执行:
在检测到所述预设存储空间中存在除所述目标数据图包括的多个推荐数据之外的其他推荐数据后,从所述其他推荐数据中确定出与所述对象标签匹配的第二待推荐数据;
基于所述第二待推荐数据及所述第一待推荐数据,确定所述向所述目标客户端发送的推送数据。
在又一种实施方式中,处理单元404还可以用于执行:
获取所述第二待推荐数据与所述多个推荐数据中任一推荐数据之间的特征相似度;
若所述特征相似度大于或等于相似度阈值,则建立所述任一推荐数据与所述第二待推荐数据之间的关联关系;
基于所述任一推荐数据与所述第二待推荐数据之间的关联关系,更新所述目标数据图。
在又一种实施方式中,处理单元404还可以用于执行:
基于所述任一推荐数据在所述预设存储空间的存储地址及所述第二待推荐数据,构建新的图节点;
将所述新的图节点添加至所述目标数据图。
根据本申请的一个实施例,图2和图3所示的方法所涉及各个步骤可以是由图4所示的数据处理装置中的各个单元来执行的。例如,图2所示的步骤S201可由图4所示的数据处理装置中的获取单元401来执行;步骤S202可由图4所示的数据处理装置中的确定单元402来执行;步骤S203可由图4所示的数据处理装置中的生成单元403来执行;步骤S204可由图4所示的数据处理装置的处理单元404来执行。再如,图3所示的步骤S301可由图4所示的数据处理装置中的获取单元401来执行;步骤S302可由图4所示的数据处理装置中的确定单元402来执行;步骤S303可由图4所示的数据处理装置中的生成单元403来执行;步骤S304至步骤S306均可由图4所示的数据处理装置的处理单元404来执行。
根据本申请的另一个实施例,图4所示的数据处理装置中的各个单元是基于逻辑功能划分的,上述各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。在本申请的其它实施例中,上述基于数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图3所示的方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图4中所示的数据处理装置,以及来实现本申请实施例的数据处理方法。计算机程序可以记载于例如计算机存储介质上,并通过计算机存储介质装载于上述计算机设备中,并在其中运行。
在本申请实施例中,推荐数据都存储在预设存储空间中,因此,数据处理装置在获取到每个推荐数据对应的目标推荐数据之后,可以基于该推荐数据以及对应的目标推荐数据在预设存储空间中的存储地址来生成图节点。其中,任一推荐数据对应的目标推荐数据指的是数据处理装置获取到的多个推荐数据中与该任一推荐数据具有关联关系的推荐数据,也就是说,数据处理装置可以基于本申请实施例中的每个图节点获取具有关联关系的至少两个推荐数据。那么,也就不难理解,数据处理装置在采用本申请实施例提供的数据处理方法实现数据推荐时,可以基于目标数据图中的某一个节点获取到推送数据,避免了对预设存储空间中所有推荐数据的遍历,因此,数据处理装置采用本申请实施例提供的数据处理方法,可以有效地提升数据推荐的速率。
基于上述方法实施例以及装置实施例的相关描述,本申请实施例还提供了一种计算机设备,请参见图5。该计算机设备至少包括处理器501和计算机存储介质502,且计算机设备的处理器501和计算机存储介质502可通过总线或其他方式连接。
其中,上述提及的计算机存储介质502是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质502既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质502提供存储空间,该存储空间存储了计算机设备的操作***。并且,在该存储空间中还存放了适于被处理器501加载并执行的一条或多条的计算机程序,这些计算机程序可以是一个或一个以上的程序代码。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储介质。处理器501(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条计算机程序,具体适于加载并执行一条或多条计算机程序从而实现相应方法流程或相应功能。
在一个实施例中,可由处理器501加载并执行计算机存储介质502中存放的一条或多条计算机程序,以实现上述有关图2和图3所示的方法实施例中的相应方法步骤;具体实现中,计算机存储介质502中的一条或多条计算机程序由处理器501加载并执行如下步骤:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
在一种实施方式中,所述处理器501可以用于加载并执行:
对所述任一推荐数据进行可逆压缩编码处理,得到编码数据,并采用字节数组存储所述编码数据;
采用双向链表存储所述任一推荐数据对应的目标推荐数据的存储地址;
基于所述双向链表和所述字节数组生成图节点。
在又一种实施方式中,所述处理器501可以用于加载并执行:
获取所述任一推荐数据对应的目标推荐数据与所述任一推荐数据之间的关联度;
将获取到的关联度以及所述任一推荐数据对应的目标推荐数据的存储地址,关联存储至所述双向链表中。
在又一种实施方式中,所述处理器501可以用于加载并执行:
获取目标客户端对应目标对象的对象数据,并根据所述对象数据确定所述目标对象的对象标签;
从所述目标数据图中获取与所述对象标签匹配的第一待推荐数据,并基于所述第一待推荐数据确定向所述目标客户端发送的推送数据。
在又一种实施方式中,所述处理器501可以用于加载并执行:
获取所述目标客户端对应的标签参数;
基于所述目标客户端对应的标签参数获取所述目标对象的对象数据;其中,所述标签参数包括第一标签参数和/或第二标签参数,所述第一标签参数用于指示需要获取的对象数据为对象画像数据,所述第二标签参数用于指示需要获取的对象数据为对象行为数据。
在又一种实施方式中,所述处理器501可以用于加载并执行:
在检测到所述预设存储空间中存在除所述目标数据图包括的多个推荐数据之外的其他推荐数据后,从所述其他推荐数据中确定出与所述对象标签匹配的第二待推荐数据;
基于所述第二待推荐数据及所述第一待推荐数据,确定所述向所述目标客户端发送的推送数据。
在又一种实施方式中,所述处理器501可以用于加载并执行:
获取所述第二待推荐数据与所述多个推荐数据中任一推荐数据之间的特征相似度;
若所述特征相似度大于或等于相似度阈值,则建立所述任一推荐数据与所述第二待推荐数据之间的关联关系;
基于所述任一推荐数据与所述第二待推荐数据之间的关联关系,更新所述目标数据图。
在又一种实施方式中,所述处理器501可以用于加载并执行:
基于所述任一推荐数据在所述预设存储空间的存储地址及所述第二待推荐数据,构建新的图节点;
将所述新的图节点添加至所述目标数据图。
在本申请实施例中,计算机设备在获取到推荐数据后将推荐数据都存储在预设存储空间中,因此,当计算机设备获取到每个推荐数据对应的目标推荐数据之后,该计算机设备可以基于该推荐数据以及对应的目标推荐数据在预设存储空间中的存储地址来生成图节点。在通常情况下,计算机设备存储一个存储地址所需的存储空间远小于存储一个推荐数据所需的存储空间,因此不难理解,计算机设备采用此种方式来根据每个推荐数据对应的图节点构建得到目标数据图,可以使得计算机设备分配较小的存储空间来存储目标数据图,可以有效地节省存储资源。此外,由于任一推荐数据对应的目标推荐数据指的是计算机设备获取到的多个推荐数据中与该任一推荐数据具有关联关系的推荐数据,也就是说,计算机设备可以基于本申请实施例中的每个图节点获取具有关联关系的至少两个推荐数据。那么,也就不难理解,计算机设备在采用本申请实施例提供的数据处理方法实现数据推荐时,可以基于目标数据图中的某一个节点获取到推送数据,避免了对预设存储空间中所有推荐数据的遍历,因此,计算机设备采用本申请实施例提供的数据处理方法,可以有效地提升数据推荐的速率。
本申请还提供了一种计算机存储介质,该计算机存储介质中存储了上述数据处理方法对应的一条或多条计算机程序,当一个或多个处理器加载并执行该一条或多条计算机程序,可以实现实施例中对数据处理方法的描述,在此不再赘述。对采用相同方法的有益效果的描述,在此不再赘述。可以理解的是,计算机程序可以被部署在一个或多个能够相互通信的设备上执行。
需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品包括计算机程序,该计算机程序存储在计算机存储介质中。计算机设备中的处理器从计算机存储介质读取该计算机程序,然后执行该计算机程序,进而使得该计算机设备能够执行上述图2和图3所示的数据处理方法实施例方面的各种可选方式中提供的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于计算机取存储介质中,该计算机程序在执行时,可包括如上述数据处理方法的实施例的流程。其中,计算机存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
以上所揭露的仅为本申请的局部实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或局部流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (11)
1.一种数据处理方法,其特征在于,包括:
获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
2.根据权利要求1所述的方法,其特征在于,针对所述多个推荐数据中的任一推荐数据,基于所述任一推荐数据及所述任一推荐数据对应的目标推荐数据的存储地址生成图节点的方式包括:
对所述任一推荐数据进行可逆压缩编码处理,得到编码数据,并采用字节数组存储所述编码数据;
采用双向链表存储所述任一推荐数据对应的目标推荐数据的存储地址;
基于所述双向链表和所述字节数组生成图节点。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述任一推荐数据对应的目标推荐数据与所述任一推荐数据之间的关联度;
将获取到的关联度以及所述任一推荐数据对应的目标推荐数据的存储地址,关联存储至所述双向链表中。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取目标客户端对应目标对象的对象数据,并根据所述对象数据确定所述目标对象的对象标签;
从所述目标数据图中获取与所述对象标签匹配的第一待推荐数据,并基于所述第一待推荐数据确定向所述目标客户端发送的推送数据。
5.根据权利要求4所述的方法,其特征在于,所述获取目标客户端对应目标对象的对象数据,包括:
获取所述目标客户端对应的标签参数;
基于所述目标客户端对应的标签参数获取所述目标对象的对象数据;其中,所述标签参数包括第一标签参数和/或第二标签参数,所述第一标签参数用于指示需要获取的对象数据为对象画像数据,所述第二标签参数用于指示需要获取的对象数据为对象行为数据。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在检测到所述预设存储空间中存在除所述目标数据图包括的多个推荐数据之外的其他推荐数据后,从所述其他推荐数据中确定与所述对象标签匹配的第二待推荐数据;
基于所述第二待推荐数据及所述第一待推荐数据,确定所述向所述目标客户端发送的推送数据。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取所述第二待推荐数据与所述多个推荐数据中任一推荐数据之间的特征相似度;
若所述特征相似度大于或等于相似度阈值,则建立所述任一推荐数据与所述第二待推荐数据之间的关联关系;
基于所述任一推荐数据与所述第二待推荐数据之间的关联关系,更新所述目标数据图。
8.根据权利要求7所述的方法,其特征在于,所述基于所述任一推荐数据与所述第二待推荐数据之间的关联关系,更新所述目标数据图,包括:
基于所述任一推荐数据在所述预设存储空间的存储地址及所述第二待推荐数据,构建新的图节点;
将所述新的图节点添加至所述目标数据图。
9.一种数据处理装置,其特征在于,包括:
获取单元,用于获取多个推荐数据,并将所述多个推荐数据存储至预设存储空间,所述多个推荐数据中每个推荐数据与其他至少一个推荐数据存在关联关系;
确定单元,用于从所述多个推荐数据中确定与所述每个推荐数据关联的目标推荐数据,并获取所述目标推荐数据在所述预设存储空间中的存储地址;
生成单元,用于基于所述每个推荐数据及与所述每个推荐数据关联的目标推荐数据的存储地址生成图节点,以得到多个图节点;
处理单元,用于根据所述多个图节点构建目标数据图,所述目标数据图用于确定向客户端发送的推送数据,所述推送数据存在于所述多个推荐数据中。
10.一种计算机设备,其特征在于,包括:
处理器,所述处理器适于实现一条或多条计算机程序;
计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并执行如权利要求1-8任一项所述的数据处理方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并执行如权利要求1-8任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111536335.1A CN114186101A (zh) | 2021-12-14 | 2021-12-14 | 数据处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111536335.1A CN114186101A (zh) | 2021-12-14 | 2021-12-14 | 数据处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114186101A true CN114186101A (zh) | 2022-03-15 |
Family
ID=80605169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111536335.1A Pending CN114186101A (zh) | 2021-12-14 | 2021-12-14 | 数据处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114186101A (zh) |
-
2021
- 2021-12-14 CN CN202111536335.1A patent/CN114186101A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109479061B (zh) | 遵从性违反检测 | |
CN102713965B (zh) | 数据源的可缩放主题聚集 | |
US9268716B2 (en) | Writing data from hadoop to off grid storage | |
WO2022041982A1 (zh) | 数据推荐方法、装置、计算机设备以及存储介质 | |
CN112868004A (zh) | 资源推荐方法、装置、电子设备及存储介质 | |
WO2012102761A1 (en) | Method and system for providing detailed information in an interactive manner in a short message service (sms) environment | |
CN113094492A (zh) | 评论信息显示方法、处理***、装置、设备和存储介质 | |
US10182104B1 (en) | Automatic propagation of resource attributes in a provider network according to propagation criteria | |
US9177319B1 (en) | Ontology based customer support techniques | |
WO2020030959A1 (zh) | 资源推荐方法及其装置、设备/终端/服务器、计算机可读介质 | |
US10671686B2 (en) | Processing webpage data | |
CN108932640B (zh) | 用于处理订单的方法和装置 | |
US20180121812A1 (en) | Enhancement of massive data ingestion by similarity linkage of documents | |
CN110399564B (zh) | 帐号分类方法和装置、存储介质及电子装置 | |
Bellini et al. | Managing complexity of data models and performance in broker-based Internet/Web of Things architectures | |
US9503351B1 (en) | Deployment feedback for system updates to resources in private networks | |
CN113434506A (zh) | 数据管理及检索方法、装置、计算机设备及可读存储介质 | |
CN112818213A (zh) | 多媒体业务数据推送方法、装置、设备及存储介质 | |
US9843635B2 (en) | Data replication among portable electronic devices | |
US10970341B2 (en) | Predictive modeling in event processing systems for big data processing in cloud | |
Stanly Wilson | Twitter data analysis using hadoop ecosystems and apache zeppelin | |
CN114186101A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN104011718A (zh) | 用于检测社交媒体中的趋势的方法、计算机程序和计算机 | |
JP2022527671A (ja) | プラットフォームをまたいだコンテンツのミュート | |
CN115048533B (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 |