【技术实现步骤摘要】
一种多对象标签数据的抽取方法及系统
[0001]本专利技术涉及数据处理
,具体而言,涉及一种多对象标签数据的抽取方法及系统。
技术介绍
[0002]对象的标签数据是用户画像系统的重要数据,来源于不同的数据源。在实际应用中需要将多个对象的标签数据集成在一起以用于查询、分析等处理,这就需要对大量的标签数据进行存储。现有技术中,在进行多个对象的标签数据存储时,会直接将所有的标签直接存储成一个大宽表,在ETL的时候会耗费大量的时间,针对底层数据的存储,常用的技术方案是采用Apache Hive进行存储,但是在更新标签值的时候需要更新Hive表中所有的数据,因为Hive不支持按行进行数据更新,只能通过全量数据覆盖的方式,所以在数据量较大的情况下,比较耗费资源。
技术实现思路
[0003]为解决上述问题,本专利技术的目的在于提供一种多对象标签数据的抽取方法及系统,能够实现多个对象的大量标签数据的高效存储问题,并能实现标签数据的低延迟动态更新。
[0004]本专利技术实施例提供了一种多对象标签数据的抽取方法, ...
【技术保护点】
【技术特征摘要】
1.一种多对象标签数据的抽取方法,其特征在于,所述方法包括:基于抽取规则对多个对象的标签数据进行元数据抽取,每个抽取规则抽取出的数据产生一张临时表,所述临时表包括各个uid和每个uid对应的所有标签的值,其中,每个对象的所有标签的值对应一个uid,所述每个uid对应的所有标签的值是基于当前抽取规则从所述多个对象的标签数据中计算得到的数据;对多个所述临时表进行格式转换,并将格式转换后的多个所述临时表的结果合并至一个大宽表中;基于预先构建的标签树结构将所述大宽表中的各个标签的值路由至不同的分表中,其中,所述分表包括当前分类所属对象的uid和当前分类对应的所有标签的值,所述分表存储于时间戳分区中,所述时间戳分区为以标签的值更新时间为值的分区,用于标识不同版本的标签的值。2.如权利要求1所述的方法,其中,所述临时表为横向的临时宽表,所述临时宽表中第一列表示各个uid,从第二列起表示各个uid对应的标签的值,或,所述临时表为纵向的临时窄表,所述临时窄表中第一列表示各个uid,第二列表示各个uid对应的标签的键,第三列表示各个uid对应的标签的值。3.如权利要求1所述的方法,其中,所述标签树结构中,一级节点表示业务,二级节点表示业务下的对象,每个二级节点下有多个分类节点,每个分类节点下有多个叶子节点,每个叶子节点表示一个标签的值,所述基于预先构建的标签树结构将所述大宽表中的各个标签的值路由至不同的分表中,包括:将每个分类节点划分为一张分表,所述分表中第一列表示分类的uid,从第二列开始表示该分类的所有叶子节点对应的标签的值。4.如权利要求1所述的方法,其中,所述方法还包括:比对每个分表中的列和关系数据库中对应的标签数据,在比对出有差异数据时,根据所述差异数据构建新分表或对已有分表进行数据更新,新分表和更新后的分表导入至所述时间戳分区。5.如权利要求4所述的方法,其中,所述方法还包括:根据对象的uid,从所述时间戳分区中获取最新的分表,以基于所述最新的分表获取对象最新的所有标签的值。6.一种多对象标签数据的抽取系统,其特征在于,所述系统包括:元数据抽取模块,用于基于抽取规则对多个对象的标签数据进行元数据抽取,每个抽取规则抽取出的数据产生一张临时表,所述临时表包括各个uid和每个uid对应...
【专利技术属性】
技术研发人员:黄景景,徐文朝,朱辉,张涛,薛延波,赵鹏,
申请(专利权)人:北京华品博睿网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。