CN111046237B - 用户行为数据处理方法、装置、电子设备及可读介质 - Google Patents

用户行为数据处理方法、装置、电子设备及可读介质 Download PDF

Info

Publication number
CN111046237B
CN111046237B CN201811177811.3A CN201811177811A CN111046237B CN 111046237 B CN111046237 B CN 111046237B CN 201811177811 A CN201811177811 A CN 201811177811A CN 111046237 B CN111046237 B CN 111046237B
Authority
CN
China
Prior art keywords
subgraphs
node
nodes
graph
user behavior
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
CN201811177811.3A
Other languages
English (en)
Other versions
CN111046237A (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.)
Jingdong Technology Holding Co Ltd
Original Assignee
Jingdong Technology Holding Co 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 Jingdong Technology Holding Co Ltd filed Critical Jingdong Technology Holding Co Ltd
Priority to CN201811177811.3A priority Critical patent/CN111046237B/zh
Publication of CN111046237A publication Critical patent/CN111046237A/zh
Application granted granted Critical
Publication of CN111046237B publication Critical patent/CN111046237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种用户行为数据处理方法、装置、电子设备及计算机可读介质。该方法包括:通过配置信息由用户行为数据中提取节点和节点与节点之间的关系即边信息;通过提取的节点和边构建图对象;对所述图对象进行图划分处理,以生成多个子图;以及基于所述多个子图对所述用户行为数据进行分析。本公开涉及的用户行为数据处理方法、装置、电子设备及计算机可读介质,能够自动化生成关系网络,节约算法工程师的开发时间,并解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。

Description

用户行为数据处理方法、装置、电子设备及可读介质
技术领域
本公开涉及计算机信息处理领域,具体而言,涉及一种用户行为数据处理方法、装置、电子设备及计算机可读介质。
背景技术
在现有技术中,对大数据的处理上面,经常会利用关系网络的方式对用户的行为信息进行分析,识别出欺诈信息或其他平台感兴趣的信息。现有的关系网络主要借助于图数据库进行数据处理,并且使用图数据库提供的算法进行图计算。图主要由节点(Node)和节点之间的关系(relationship)也就是边组成,现有技术中图数据库分为两种:
1)Native graph storage,本地存储图数据,这种设计是从每一个角度对节点和边数据的写入和查询进行优化,确保相关联的节点和边在物理上是接近的,可以进行高速访问。但是由于是本地储存数据,不同区域的开发人员对用户行为数据访问十分不便捷,不利于对用户行为数据进行实时分析。
2)Non-native graph storage,依赖于外部存储引擎,可以是关系型、columnar或者NoSQL例如MongoDB。由于这些外部存储引擎并没有针对图数据进行存储优化,点和边可能被存放在相互距离很远的地方而造成访问延迟。
因此,需要一种新的用户行为数据处理方法、装置、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本公开提供一种用户行为数据处理方法、装置、电子设备及计算机可读介质,能够自动化生成关系网络,节约算法工程师的开发时间,并解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一方面,提出一种用户行为数据处理方法,该方法包括:通过配置信息由用户行为数据中提取第一节点和第一边;通过所述第一节点和所述第一边构建图对象;对所述图对象进行图划分处理,以生成多个子图;以及基于所述多个子图对所述用户行为数据进行分析。
在本公开的一种示例性实施例中,还包括:将所述多个子图储存在分布式数据库中;其中,将所述多个子图中的所述第一节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述第一边的边值作为所述分布式数据库的行键值。
在本公开的一种示例性实施例中,将所述多个子图储存在分布式数据库中包括:确定所述多个子图中每一个子图的标识;确定所述多个子图中每一个子图的节点集合;确定所述多个子图中每一个子图的边集合;以及将子图的标识与节点集合、边集合进行关联储存。
在本公开的一种示例性实施例中,还包括:将所述行键值进行信息加密后储存。
在本公开的一种示例性实施例中,还包括:由实时数据中提取节点和边;将节点与用户历史行为数据的节点进行比对;以及在比对结果一致时,将实时数据的节点和边合并到所述多个子图中。
在本公开的一种示例性实施例中,还包括:在比对结果不一致时,通过所述节点与所述边构建子图。
在本公开的一种示例性实施例中,由实时数据中提取节点和边包括:解析所述实时数据,生成目标字符串;以及通过所述目标字符串提取所述节点和边。
在本公开的一种示例性实施例中,通过配置信息由用户行为数据中提取节点和边包括:由数据仓库中获取用户行为数据,所述用户行为数据为关系库型数据;根据配置信息由用户历史行为数据中提取预定字段的信息;以及通过预定字段的信息生成所述节点和边。
在本公开的一种示例性实施例中,对所述图对象进行图划分处理,以生成多个子图包括:利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图。
在本公开的一种示例性实施例中,利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图还包括:对所述多个子图中不满足条件的子图再次进行图划分处理。
根据本公开的一方面,提出一种用户行为数据处理装置,该装置包括:数据模块,用于通过配置信息由用户历史行为数据中提取节点和边;图模块,用于通过所述节点和所述边构建图对象;子图模块,用于对所述图对象进行图划分处理,以生成多个子图;以及分析模块,用于基于所述多个子图对所述用户行为数据进行分析。
在本公开的一种示例性实施例中,还包括:储存模块,用于将所述多个子图储存在分布式数据库中;其中,将所述多个子图中的所述节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述边边中的起始点id与目标点id以及关系类型作为所述分布式数据库的行键值;和/或实时模块,用于由实时数据中提取节点和边;将实时数据中的节点与历史数据节点进行比对,与已划分好的子图进行合并。
根据本公开的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本公开的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本公开的用户行为数据处理方法、装置、电子设备及计算机可读介质,能够自动化生成关系网络,节约算法工程师的开发时间,并解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种用户行为数据处理方法及装置的***框图。
图2是根据一示例性实施例示出的一种用户行为数据处理方法及装置的***架构。
图3是根据一示例性实施例示出的一种用户行为数据处理方法的流程图。
图4是根据另一示例性实施例示出的一种用户行为数据处理方法的流程图。
图5是根据另一示例性实施例示出的一种用户行为数据处理方法的流程图。
图6是根据一示例性实施例示出的一种用户行为数据处理装置的框图。
图7是根据另一示例性实施例示出的一种用户行为数据处理装置的框图。
图8是根据一示例性实施例示出的一种电子设备的框图。
图9是根据一示例性实施例示出一种计算机可读存储介质示意图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
本申请的发明人发现,目前市面流行的数据库主要有Neo4J、OrientDB、DatastaxEnterprise、ArangoDb、PowerGraph,每种数据库都有其优缺点。其中,Neo4J优点是自带一些图计算算法,如最短路径算法、连通分支算法,缺点是目前只适用于单机版,不能支持分布式操作;Datastax Enterprise数据库是企业版应用,没有开源,不利于维护;arangodb则查询语言比较麻烦,不容易上手,且代码开发复杂量比较大,数据***性能稍低;在PowerGraph中存在大量的同步过程(G-A-S),很多的障碍和能力不足的问题都可以导致算法的效率很低。另外还调研了国内的Gemini,该数据库目前只能单机运行,如果内存不足就不能计算,无法满足大数据量的图计算需求。
有鉴于现有技术中的技术缺陷,本申请的发明人提出了用户行为数据处理方法,能够利用关系网络的方式对用户的行为信息进行分析,识别出欺诈信息,本申请的用户行为数据处理方法要是针对关系网络的构造、图数据的计算、存储以及查询分析提供一个完整的解决方案。主要包括:
一、关系网络的构造:利用用户的pin、手机号、银行卡、身份证、ip地址、eid等信息,以及这些信息之间的注册、登录、实名认证、绑定、下单、支付等关系,构造出关系网络的图结构。这个图主要由节点(Node)和节点之间的关系(relationship)也就是边组成。生成节点和边的过程就是构造关系网络。
二、图划分:研究如何利用Spark GraphX对已经构造的关系网络进行连通子图的划分,利用连通子图算法,将构造的图结构划分成一个个连通的子图。另外,对于***接入的实时数据,需要研究如何实现实时数据的图划分算法。
三、图存储与访问:关系网络的数据覆盖了XX商城17年1月份至今近的交易、支付、注册、登录数据以及XX全量的实名、绑卡数据等多场景业务数据。这些数据构造的图数据规模包含17亿的点以及35亿的边信息,以及***上线后接入每天百万量级的实时数据量,如何存储节点和边的数据,以及如何进行快速访问来解决问题,目前现有的图数据库不能满足关系网络分析***的图数据库需求,本申请中的关系网络分析***针对自己特有的业务场景数据,利用HBase数据库实现图数据的存储与快速访问。
其中,本申请中可涉及到的词汇解释如下:
节点点:以用户最小粒度的属性为一个节点。如:一个电话,一个ip,一个证件,一个地址等。
边:用户属性之间的关系,做为一个边。
图:所有的边与点组成一个完整的图。
关系网络:关系网络指的是一种基于图的数据结构,由节点和边组成,每个节点代表一个个体,每条边为个体与个体之间的关系。关系网络把不同的个体按照其关系连接在一起,从而提供了从“关系”的角度分析问题的能力,这更有利于从正常行为中识别出到异常的团伙欺诈行为。
下面是对本申请内容的详细介绍:
图1是根据一示例性实施例示出的一种用户行为数据处理方法及装置的***框图。
如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的购物类网站提供支持的后台服务器。服务器105可以对接收到的用户行为数据进行分析等处理,并生成处理结果。
服务器105可例如通过配置信息由用户行为数据中提取节点和边;服务器105可例如通过所述节点和所述边构建图对象;服务器105可例如对所述图对象进行图划分处理,以生成多个子图;服务器105可例如基于所述多个子图对所述用户行为数据进行分析。
服务器105还可例如将所述多个子图储存在分布式数据库中;其中,将所述多个子图中的所述节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述边中的起始点id与目标点id以及关系类型作为所述分布式数据库的行键值。
服务器105还可例如由实时数据中提取节点和边;将节点与历史数据中的节点进行比对;以及在比对结果一致时,将节点和边合并到历史数据划分好的子图中。
服务器105可以是一个实体的服务器,还可例如为多个服务器组成,服务器105中的一部分可例如作为本公开中的获取用户数据***,用于通过配置信息由用户行为数据中提取节点和边;服务器105中的一部分可例如作为本公开中的图数据***,用于用于通过所述节点和所述边构建图对象;对所述图对象进行图划分处理,以生成多个子图;服务器105中的一部分还可例如作为本公开中的分析***,用于基于所述多个子图对所述用户行为数据进行分析。
需要说明的是,本公开实施例所提供的用户行为数据处理方法可以由服务器105执行,相应地,用户行为数据处理装置可以设置于服务器105中。而提供给用户进行商品浏览的网页端与进行商家查询的请求端一般位于终端设备101、102、103中。
图2是根据一示例性实施例示出的一种用户行为数据处理方法及装置的***架构。
如图2所示,在***框图中,数据加载包括存量数据和流式数据,存量数据可例如经过Spark GraphX图计算的结果保存在Hive中,需要从Hive导入到HBase数据库中,流数据指的是关系网络分析***接入的实时数据,这部分数据经过实时子图变更计算后存入到HBase数据库中。查询时需要根据节点值进行查询,可例如将节点值设为为HBase的rowKey(行键值),rowKey是HBase数据库表的索引。操作维护包括任务调度平台和配置中心,其中任务调度平台可例如用于维护自动化的任务,这些任务包括数据采集的任务和关系网络构造的任务,配置中心主要配置常用的信息,提供整个图框架使用。
整个***架构实现的功能为,采集用户的行为数据,然后根据这些数据提取出节点和边构造出关系网络,利用图论的原理进行子图划分,将关系网络划分成小的子图,将结算结果保存到数据库中。可例如按照业务进行划分,划分后,就可以对子图进行分析计算,将计算的结果存储到HBase数据库,HBase数据库提供查询服务。
根据本公开的用户行为数据处理方法及装置,通过配置信息由用户行为数据中提取节点和边,然后组建图对象,进而对图对象进行分析的方式,能够自动化生成关系网络,节约算法工程师的开发时间。
根据本公开的用户行为数据处理方法及装置,通过将所述多个子图储存在分布式数据库中,并且将所述多个子图中的所述节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述边的边中的起始点id与目标点id以及关系类型作为所述分布式数据库的行键值的方式,能够解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。
图3是根据一示例性实施例示出的一种用户行为数据处理方法的流程图。用户行为数据处理方法30至少包括步骤S302至S308。
如图3所示,在S302中,通过配置信息由用户行为数据中提取第一节点和第一边。可包括:由数据仓库中获取用户行为数据,所述用户行为数据为关系库型数据;根据配置信息由用户行为数据中提取预定字段的信息;以及通过预定字段的信息生成所述节点和边。
在一个实施例中,用户行为数据存储在Hive表中,主要有注册、登录、实名认证、绑卡、下单、支付、会员,因为Hive表中是业务方从Mysql库推送的原始数据,不能直接使用,需要经过一系列的抽取、清洗、转换操作,提取关系网络分析***需要用到的字段信息。
在一个实施例中,用户行为数据可包括:注册、登录、实名认证、绑定银行卡、下单、支付、绑定会员id等。这些数据保存在Hive表中,通过任务调度平台配置定时任务,每天T+1更新。
在一个实施例中,利用自动化配置实现关系网络的构造,便于算法工程师从原始业务数据中提取图计算依赖的节点和边信息,进行自动化配置,***根据这些配置自动实现关系网络的构造。
在一个实施例中,可例如通过如图2中的任务调度平台提供可视化界面进行任务的配置,当用户需要选择节点和边时,选中业务表中的相关字段进行配置,***自动根据这些配置生成相关的任务,这些任务包括Hive SQL、java的接口调用等,生成节点和边的数据信息。例如一条注册用户包含了用户pin、注册手机号、注册时间、注册ip等,这条信息中的用户pin和手机号就是节点信息,用户pin与手机号的注册关系就是一条边信息。构造关系网络时,需要选择用户pin、手机号作为节点信息,其中注册ip、作为用户pin的节点属性信息,手机号归属地作为手机号节点的属性信息,注册时间作为边的属性信息。用户通过这些自动化配置就可以自动化完成关系网络构造。并且可以在任务调度平台对这些任务进行修改配置。
在S304中,通过所述节点和所述边构建图对象。可例如,根据关系网络构造生成的节点和边信息生成图对象,G=(V,E),G指图信息,V指的是节点信息,E指的是边信息。根据图论的连通子图理论,可以将一个大图划分成不同的连通子图,每个连通子图内的节点都是连通的,即每个节点都是有关系的。这样就可以根据一个节点信息查询该节点有关系的信息,可以用来做个体归并,即根据一个用户的身份证号,查询出该用户是否注册过多个pin,以及拥有多个手机号等信息。也可以查找群体用户的活动信息,根据子图中节点的聚合程度,分析群体用户的行为特征。
在S306中,对所述图对象进行图划分处理,以生成多个子图。可包括:利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图。
在一个实施例中,利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图还包括:对所述多个子图中不满足条件的子图再次进行图划分处理。
在一个实施例中,由于整个关系网络图规模庞大,必须对整个图进行划分,针对划分后的子图进行分析计算。图划分是指将整个图的顶点划分到不同的子图中,主要难点在于子图中节点分布不均衡。可例如采用图论中的最大连通子图算法进行划分,这样能够保证每个子图中的所有节点都是连通的,对于划分出规模巨大的连通子图需要进行进一步的分割,选择了社区划分算法,把划分好的社区当做一个连通子图。
在S308中,基于所述多个子图对所述用户行为数据进行分析。可例如,使用SparkGraphX作为图计算引擎,还可例如基于子图对用户行为数据进行分析,以确定用户之间的关系,或者用户之间是否存在欺诈信息等。
根据本公开的用户行为数据处理方法及装置,通过配置信息由用户行为数据中提取节点和边,然后组建图对象,进而对图对象进行分析的方式,能够自动化生成关系网络,节约算法工程师的开发时间。
应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。
图4是根据另一示例性实施例示出的一种用户行为数据处理方法的流程图。如图4所示的用户行为数据处理方法40中示例性的描述了“将所述多个子图储存在分布式数据库中”的详细内容。
如图4所示,在S402中,确定所述多个子图中每一个子图的标识。通过连通子图算法进行划分子图后,生成每个子图的唯一标识,即子图id。
在S404中,确定所述多个子图中每一个子图的节点集合。
在S406中,确定所述多个子图中每一个子图的边集合。
在S408中,将子图的标识与节点集合、边集合进行关联储存。把子图id这个信息关联到点表和边表。得到三个表分别为点表、边表、子图信息表,可以根据节点信息查询该节点所在的子图,然后根据子图id查询该子图下所有的点和边的信息。
在一个实施例中,可例如根据不同的业务对应的图算法对不同的子图分别进行计算,图计算的结果主要是生成子图的id,然后把这个id关联到节点表、边表,并且生成子图信息表,子图信息表包含子图id,子图下的节点数等信息。
图存储主要是保存图结构中的点信息和边信息,以及提供查询,实时数据接入后的变更、删除等操作。HBase需要保存的节点表、边表、子图信息表。因为HBase表查询只能根据RowKey进行查询,***中查询点表分为两种一种是根据节点值查询节点,一种是根据子图id查询节点信息,因此需要将节点信息保存到两个rowkey索引不同的表中。为了使HBase的数据均匀分布,对rowkey可例如做md5加密处理。同理查询边表也需要保存两种索引,一种是根据源节点与目标节点查询边信息,一种是根据子图id查询边信息。
根据本公开的用户行为数据处理方法,通过将所述多个子图储存在分布式数据库中,并且将所述多个子图中的所述节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述边中的起始点id与目标点id以及关系类型作为所述分布式数据库的行键值的方式,能够解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。
其中,在本申请实施例中,图存储相关表详细设计可如下:
1、第一个点表主要是根据节点值查询,该表的rowKey为节点值的md5加密和节点类型,中间用“|”分割符分割。即:rowKey=md5(node_val)|node_type。node_id是节点的id标识,节点值可以是pin的值,也可以是手机号、银行***、身份证的加密存储信息,属性是针对不同类型的节点特有的属性信息,例如pin的属性包含了注册时间等信息,身份证节点的属性包含了证件类型、脱敏字段等信息。
下表是关系网络点表结构信息:
表1关系网络点表
2、第二个点表根据子图id查询时使用该表,该表的rowKey由子图id的md5加密、节点id、节点类型三部分组成,中间用“|”分割符分割。即:rowKey=md5(gid)|node_id|node_type。
该表结构与第一个点表一致。
3、第一个边表根据源点ID查询时,该表的rowKey由源点ID的md5加密、目标ID、边类型三部分组成,中间用“|”分割符分割。即:rowKey=md5(src_node)|tar_node|edge_type。表2是关系网络边表信息:
表2关系网络边表
4、第二个边表是根据子图ID查询,该表的rowKey由子图ID的md5加密、源点ID、目标点ID、边类型四部分组成,中间用“|”分割符分割。即:rowKey=md5(gid)|src_node|tar_node|edge_type。
该表结构与第一个边表相同。
5、子图信息表,该表的rowKey是子图ID的md5加密。表3是关系网络子图结构信息:
表3关系网络子图信息
图5是根据另一示例性实施例示出的一种用户行为数据处理方法的流程图。如图5所示的用户行为数据处理方法50中示例性的描述了“将实时的用户行为数据合并入子图中”的详细内容。
如图5所示,在S502中,由实时的用户行为数据中提取节点和边。其中,实时数据接入平台需要订阅数据平台中相关业务主体topic,消息数据包含了一条用户操作记录,这个记录里面包含了关系网络中的节点信息和边信息,首先需要解析该消息,这个消息格式通常为XML或JSON类型,从XML或JSON字符串中解析里面的字段信息,生成节点和边。
在一个实施例中,储存图数据的数据库主要为HBase数据库,用于保存关系网络中的点表、边表和子图信息。关系网络数据存储可分为两部分,第一是存量数据从Hive表导入HBase表;其次是接入的实时数据,关系网络从消息平台接入后利用实时变更子图的算法,将新接入的数据解析成点和边表保存到HBase数据库。
在S504中,将实时数据提取节点与历史数据的节点进行比对。
在S506中,在比对结果一致时,将节点和边合并到历史数据已经划分好的子图中。
在S508中,在比对结果不一致时,通过所述节点与所述边构建新的子图。
在一个实施例中,查询两个节点信息,如果两个节点都不存在,即两个节点信息都是新的信息,这两个点和两个点之间的关系就构造出一个新的子图;
在一个实施例中,如果只存在一个点,则合并到另外一个点的子图中,说明子图新增了一个节点;
在一个实施例中,如果两个节点都存在,并且都在一个子图中,则生成一条新的边,比如用户A今天新买了一个商品,并且用的之前的收货手机号,这个子图中就新增了一条订单的记录;
在一个实施例中,如果两个节点都存在,并且位于不同的子图中,则需要把两个子图合并到一个子图中。
根据本公开的用户行为数据处理方法,关系网络的构造可以实现通过业务需求进行配置,自动化生成关系网络,算法工程师只需要关注具体的业务算法即可,节约算法工程师的开发时间。
根据本公开的用户行为数据处理方法,提供一个完整的图框架解决方案
根据本公开的用户行为数据处理方法,解决大数据量图计算、存储问题,以及毫秒级响应的查询问题。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图6是根据一示例性实施例示出的一种用户行为数据处理装置的框图。用户行为数据处理装置60包括:数据模块602,图模块604,子图模块606,分析模块608。
数据模块602用于通过配置信息由用户行为数据中提取第一节点和第一边;可包括:由数据仓库中获取用户行为数据,所述用户行为数据为关系库型数据;根据配置信息由用户行为数据中提取预定字段的信息;以及通过预定字段的信息生成所述节点和边。
图模块604用于通过所述节点和所述边构建图对象;可例如,根据关系网络构造生成的节点和边信息生成图对象,G=(V,E),G指图信息,V指的是节点信息,E指的是边信息。
子图模块606用于对所述图对象进行图划分处理,以生成多个子图;可包括:利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图。
分析模块608用于基于所述多个子图对所述用户行为数据进行分析。可例如,使用Spark GraphX作为图计算引擎,还可例如基于子图对用户行为数据进行分析,以确定用户之间的关系,或者用户之间是否存在欺诈信息等。
图7是根据另一示例性实施例示出的一种用户行为数据处理装置的框图。用户行为数据处理装置70在用户行为数据处理装置60的基础上还包括:储存模块702,实时模块704。
储存模块702用于将所述多个子图储存在分布式数据库中;其中,将所述多个子图中的所述节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的所述边中的起始点id与目标点id以及关系类型作为所述分布式数据库的行键值;和/或
实时模块704用于由实时数据中提取节点和边;将实时数据的节点与历史数据节点进行比对;以及在比对结果一致时,将节点和边合并到所述多个子图中。
图8是根据一示例性实施例示出的一种电子设备的框图。
下面参照图8来描述根据本公开的这种实施方式的电子设备200。图8显示的电子设备200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同***组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元210执行,使得所述处理单元210执行本说明书上述电子处方流转处理方法部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元210可以执行如图3,图4,图5中所示的步骤。
所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
图9示意性示出本公开示例性实施例中一种计算机可读存储介质示意图。
参考图9所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品400,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:通过配置信息由用户行为数据中提取节点和边;通过所节点和所述边构建图对象;对所述图对象进行图划分处理,以生成多个子图;以及基于所述多个子图对所述用户行为数据进行分析。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (12)

1.一种用户行为数据处理方法,其特征在于,包括:
通过配置信息由用户行为数据中提取第一节点和第一边;
通过所述第一节点和所述第一边构建图对象;
对所述图对象进行图划分处理,以生成多个子图;以及
基于所述多个子图对所述用户行为数据进行分析;
在实时的用户行为数据中提取两个节点;
在所述多个子图中查询所述两个节点,如果在所述多个子图中所述两个节点都不存在,则根据所述两个节点和两个节点之间的关系构造出一个新的子图;
如果在所述多个子图中只存在一个节点,则将另一个节点合并到其中一个节点所在的子图中,以在其中一个节点所在的子图新增了一个节点;
如果在所述多个子图中所述两个节点都存在,并且所述两个节点都在同一个子图中,则在所述同一个子图中的所述两个节点之间生成一条新的边;
如果在所述多个子图中所述两个节点都存在,并且所述两个节点位于不同的子图中,则将所述两个节点所在的两个子图合并到一个子图中。
2.如权利要求1所述的方法,其特征在于,还包括:
将所述多个子图储存在分布式数据库中;
其中,将所述多个子图中的第一节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的第一边的边值作为所述分布式数据库的行键值。
3.如权利要求2所述的方法,其特征在于,将所述多个子图储存在分布式数据库中包括:
确定所述多个子图中每一个子图的标识;
确定所述多个子图中每一个子图的第一节点集合;
确定所述多个子图中每一个子图的第一边集合;以及
将子图的标识与第一节点集合、第一边集合进行关联储存。
4.如权利要求2所述的方法,其特征在于,还包括:
将所述行键值进行信息加密后储存。
5.如权利要求1所述的方法,其特征在于,由实时的用户行为数据中提取第二节点和第二边包括:
解析所述实时的用户行为数据,生成目标字符串;以及
通过所述目标字符串提取所述第二节点和第二边。
6.如权利要求1所述的方法,其特征在于,通过配置信息由用户行为数据中提取第一节点和第一边包括:
由数据仓库中获取用户行为数据,所述用户行为数据为关系库型数据;
根据配置信息由用户行为数据中提取预定字段的信息;以及
通过预定字段的信息生成第一节点和第一边。
7.如权利要求1所述的方法,其特征在于,对所述图对象进行图划分处理,以生成多个子图包括:
利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图。
8.如权利要求7所述的方法,其特征在于,利用最大连通子图算法对所述图对象进行图划分处理,以生成多个子图还包括:
对所述多个子图中不满足条件的子图再次进行图划分处理。
9.一种用户行为数据处理装置,其特征在于,包括:
数据模块,用于通过配置信息由用户行为数据中提取第一节点和第一边;
图模块,用于通过所述第一节点和所述第一边构建图对象;
子图模块,用于对所述图对象进行图划分处理,以生成多个子图;以及
分析模块,用于基于所述多个子图对所述用户行为数据进行分析;在实时的用户行为数据中提取两个节点;在所述多个子图中查询所述两个节点,如果在所述多个子图中所述两个节点都不存在,则根据所述两个节点和两个节点之间的关系构造出一个新的子图;如果在所述多个子图中只存在一个节点,则将另一个节点合并到其中一个节点所在的子图中,以在其中一个节点所在的子图新增了一个节点;如果在所述多个子图中所述两个节点都存在,并且所述两个节点都在同一个子图中,则在所述同一个子图中的所述两个节点之间生成一条新的边;如果在所述多个子图中所述两个节点都存在,并且所述两个节点位于不同的子图中,则将所述两个节点所在的两个子图合并到一个子图中。
10.如权利要求9所述的装置,其特征在于,还包括:
储存模块,用于将所述多个子图储存在分布式数据库中;其中,将所述多个子图中的第一节点的节点值作为所述分布式数据库的行键值;和/或将所述多个子图中的第一边的边值作为所述分布式数据库的行键值。
11.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
CN201811177811.3A 2018-10-10 2018-10-10 用户行为数据处理方法、装置、电子设备及可读介质 Active CN111046237B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811177811.3A CN111046237B (zh) 2018-10-10 2018-10-10 用户行为数据处理方法、装置、电子设备及可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811177811.3A CN111046237B (zh) 2018-10-10 2018-10-10 用户行为数据处理方法、装置、电子设备及可读介质

Publications (2)

Publication Number Publication Date
CN111046237A CN111046237A (zh) 2020-04-21
CN111046237B true CN111046237B (zh) 2024-04-05

Family

ID=70228930

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811177811.3A Active CN111046237B (zh) 2018-10-10 2018-10-10 用户行为数据处理方法、装置、电子设备及可读介质

Country Status (1)

Country Link
CN (1) CN111046237B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111815255A (zh) * 2020-05-11 2020-10-23 国泰财产保险有限责任公司 基于互联网保险数据平台的用户应用***的配置方法及装置
CN111640005A (zh) * 2020-05-28 2020-09-08 深圳壹账通智能科技有限公司 数据分析方法、装置、计算机设备及存储介质
CN111681049B (zh) * 2020-06-04 2023-08-11 广州视源电子科技股份有限公司 用户行为的处理方法、存储介质及相关设备
CN111914180B (zh) * 2020-08-19 2024-04-16 腾讯科技(深圳)有限公司 基于图结构的用户特征确定方法、装置、设备及介质
CN112036418A (zh) * 2020-09-04 2020-12-04 京东数字科技控股股份有限公司 用于提取用户特征的方法和装置
CN112291272B (zh) * 2020-12-24 2021-05-11 鹏城实验室 网络威胁检测方法、装置、设备及计算机可读存储介质
CN113297426A (zh) * 2021-04-27 2021-08-24 上海淇玥信息技术有限公司 图数据库的特征生成方法、装置及电子设备
CN113485900A (zh) * 2021-06-07 2021-10-08 广发银行股份有限公司 一种用户行为分析方法、***、设备及计算机介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428165A (zh) * 2012-05-15 2013-12-04 腾讯科技(深圳)有限公司 社交网络节点分组方法和装置
CN105426375A (zh) * 2014-09-22 2016-03-23 阿里巴巴集团控股有限公司 一种关系网络的计算方法及装置
EP3113042A1 (en) * 2015-07-01 2017-01-04 Alcatel Lucent A method for providing contextual information, an information processing system and a computer program product
US9576020B1 (en) * 2012-10-18 2017-02-21 Proofpoint, Inc. Methods, systems, and computer program products for storing graph-oriented data on a column-oriented database
CN107943918A (zh) * 2017-11-20 2018-04-20 合肥亚慕信息科技有限公司 一种基于层次化大规模图数据的运算***
CN108228706A (zh) * 2017-11-23 2018-06-29 ***股份有限公司 用于识别异常交易社团的方法和装置
CN108322473A (zh) * 2018-02-12 2018-07-24 北京京东金融科技控股有限公司 用户行为分析方法与装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428165A (zh) * 2012-05-15 2013-12-04 腾讯科技(深圳)有限公司 社交网络节点分组方法和装置
US9576020B1 (en) * 2012-10-18 2017-02-21 Proofpoint, Inc. Methods, systems, and computer program products for storing graph-oriented data on a column-oriented database
CN105426375A (zh) * 2014-09-22 2016-03-23 阿里巴巴集团控股有限公司 一种关系网络的计算方法及装置
EP3113042A1 (en) * 2015-07-01 2017-01-04 Alcatel Lucent A method for providing contextual information, an information processing system and a computer program product
CN107943918A (zh) * 2017-11-20 2018-04-20 合肥亚慕信息科技有限公司 一种基于层次化大规模图数据的运算***
CN108228706A (zh) * 2017-11-23 2018-06-29 ***股份有限公司 用于识别异常交易社团的方法和装置
CN108322473A (zh) * 2018-02-12 2018-07-24 北京京东金融科技控股有限公司 用户行为分析方法与装置

Also Published As

Publication number Publication date
CN111046237A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111046237B (zh) 用户行为数据处理方法、装置、电子设备及可读介质
US10922493B1 (en) Determining a relationship recommendation for a natural language request
US11670288B1 (en) Generating predicted follow-on requests to a natural language request received by a natural language processing system
US11036767B2 (en) System and method for providing database abstraction and data linkage
CN110543586B (zh) 多重用户身份融合方法、装置、设备及存储介质
US10311106B2 (en) Social graph visualization and user interface
US11288319B1 (en) Generating trending natural language request recommendations
US20130275229A1 (en) Apparatus and method for universal personal data portability
CN104077723B (zh) 一种社交网络推荐***及方法
WO2019024496A1 (zh) 企业推荐方法及应用服务器
US20140101134A1 (en) System and method for iterative analysis of information content
US10554613B2 (en) Dynamic hashtag ordering based on projected interest
EP3076359A1 (en) Implementing retail customer analytics data model in a distributed computing environment
US10496645B1 (en) System and method for analysis of a database proxy
CN111814065B (zh) 信息传播路径分析方法、装置、计算机设备及存储介质
US8799177B1 (en) Method and apparatus for building small business graph from electronic business data
CN111476595A (zh) 产品推送方法、装置、计算机设备和存储介质
JP2022096632A (ja) コンピュータ実装方法、コンピュータシステムおよびコンピュータプログラム(データ属性に基づくデータセットのランク付け)
CN111177481B (zh) 用户标识映射方法及装置
US20180107763A1 (en) Prediction using fusion of heterogeneous unstructured data
US10083246B2 (en) Apparatus and method for universal personal data portability
CN110781375B (zh) 一种用户状态标识确定方法及装置
CN111488386A (zh) 数据查询方法和装置
CN116383246A (zh) 联合查询方法以及装置
US10621205B2 (en) Pre-request execution based on an anticipated ad hoc reporting request

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Digital Technology Holding Co.,Ltd.

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Digital Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

Address before: Room 221, 2nd floor, Block C, 18 Kechuang 11th Street, Daxing Economic and Technological Development Zone, Beijing, 100176

Applicant before: BEIJING JINGDONG FINANCIAL TECHNOLOGY HOLDING Co.,Ltd.

GR01 Patent grant
GR01 Patent grant