CN111400278B - 一种基于标签的拖拽构建多层次目标人群的方法和系统 - Google Patents

一种基于标签的拖拽构建多层次目标人群的方法和系统 Download PDF

Info

Publication number
CN111400278B
CN111400278B CN202010160945.5A CN202010160945A CN111400278B CN 111400278 B CN111400278 B CN 111400278B CN 202010160945 A CN202010160945 A CN 202010160945A CN 111400278 B CN111400278 B CN 111400278B
Authority
CN
China
Prior art keywords
sql
labels
tree
dragging
web end
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
CN202010160945.5A
Other languages
English (en)
Other versions
CN111400278A (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.)
China Unicom WO Music and Culture Co Ltd
Original Assignee
China Unicom WO Music and Culture 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 China Unicom WO Music and Culture Co Ltd filed Critical China Unicom WO Music and Culture Co Ltd
Priority to CN202010160945.5A priority Critical patent/CN111400278B/zh
Publication of CN111400278A publication Critical patent/CN111400278A/zh
Application granted granted Critical
Publication of CN111400278B publication Critical patent/CN111400278B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于标签的拖拽构建多层次目标人群的方法,该方法所方法通过用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则;然后模型规则经后台转换成SQL树状结构,并将相关数据存入Oracle数据库表中;根据数据库表中存储的树状结构,生成SQL集传递给hadoop+Spark集群进行计算,Spark计算完毕后,将结果数据统计并回传到Oracle数据库;并将oracle的模型相关统计信息返回到web端展示。本发明通过用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则,实现对目标人群的任意条件的定位,同时通过将模型规则转换成SQL树状结构实现了对多层级模型规则存储。

Description

一种基于标签的拖拽构建多层次目标人群的方法和系统
技术领域
本发明涉及大数据领域的技术领域,具体为一种基于标签的拖拽构建多层次目标人群的方法和系统。
背景技术
目前,现有的大数据领域的标签建模工具,其标签只能进行属性选择,无法进行数据比较及属性选择和数据比较的结合,难以支撑普遍运营需求;另外其标签树状层级上是存在限制的,也就是层级节点是不能超过4层,当根节点超过四个后无法构建用户群体,因此,根本无法满足深度运营上的业务需求。
发明内容
本发明的目的在于提供基于标签的拖拽构建多层次目标人群的方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于标签的拖拽构建多层次目标人群的方法,所述方法包括如下步骤:
步骤1:用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则;并且每个叶子可以是标签的属性选择、数据比较及属性选择和数据比较的结合;
步骤2:模型规则经后台转换成SQL树状结构,并将相关数据存入Oracle数据库表中;
步骤3:根据步骤2表中存储的树状结构,生成SQL集传递给hadoop+Spark集群进行计算;
步骤4:Spark计算完毕后,将结果数据统计并回传到Oracle数据库,Oracle只存储结果数据集在hadoop集群的路径及统计数据,其结果数据集继续保留在hadoop集群中。
步骤5:将Oracle的标签构建结果以及相关统计信息返回到web端展示;
优选的,步骤2中将SQL树状结构对应的值分为两类即一类为SQL树根节点、分支节点和叶子节点的关系,另一类为叶子节点的对应值,并分别存储在两张不同的数据表中;这里的叶子这类把标签、比较或属于类型和标签值存下来,因此可满足步骤1中标签的属性选择、数据比较及属性选择和数据比较的结合。
优选的,步骤3中所述SQL集是指步骤3中存储的SQL树,根据至底向上及叶子节点上面一个叶子节点一条SQL,一棵子树一条SQL的规则,写成的多条SQL。
本发明还提供了一种基于标签的拖拽构建多层次目标人群的系统,所述系统包括可视化WEB端模块、关系型数据库模块和分布式系统模块,所述可视化WEB端模块用于用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则;所述关系型数据库模块是指用于将所述模型规则对应的SQL树状结构数据存储的Oracle数据库,所述分布式系统模块是指用于接受Oracle数据库传递的指令进行计算并将计算结果返回给Oracle数据库的Hadoop+Spark集群。
与现有技术相比,本发明的有益效果是:
本发明通过用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则,实现对目标人群的任意条件的定位,同时实现了在标签进行属性选择基础上可进一步进行标签的自定义数据的比较及属性选择和数据结合的比较,从而解决了现有技术中存在的标签的筛选中只能进行属性选择之痛点,满足了深度运营业务上的普遍需求;同时通过将模型规则转换成SQL树状结构实现了对多层级模型规则存储,并且可根据SQL树的叶子及树枝数量解析成适当多的SQL,而非一条SQL运行,避免出现瓶颈。
附图说明
图1为本发明方法流程图;
图2为本发明实施例模型界面图;
图3为本发明实施例经拖拽、选择后形成的树状筛选规则示意图;
图4至图5为本发明实施例操作界面示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1至图5,本方法通过用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则,然后将模型规则经后台转换成SQL树状结构,并将相关数据存入Oracle数据库表中,再根据表中存储的树状结构,生成SQL集传递给hadoop+Spark集群进行计算,Spark计算完毕后,将结果数据统计并回传到Oracle数据库,Oracle只存储结果数据集存放在hadoop集群的路径及统计数据(此数据长期保存总和不足1M的轻量数据),其结果数据集(此数据量长期保存较大)继续保留在hadoop集群里,并将oracle的模型相关统计信息返回到web端展示。现以一个通过可视化标签拖拽,构建目标人群标签的业务场景来描述,该场景的模型界面如图2,所述界面包括分类标签菜单栏和拖拽区,在系统上实现筛选偏好为美食外卖并且热度介于10-14,应用名称为微信、支付宝,用户性别属于男或者用户年龄介于18至22岁的人群,通过拖拽操作即可得界面如下图3。为对所得到的界面所对应的标签进行存储,需进行模型SQL树的标签类型的设置:标签根据其值的内容分为三种类型,其一是值为数字类型的数值型数据,这种类型的数值由用户自身去填写,用户可选择大于,等于,小于,大等于,大于等于以及介于。如用户年龄:大于18岁;其二是值为字符的字符型数据,这种数据的值让用户筛选,用户可以选择“属于”和“不属于”如图4;其三是数字和字符的组合类型,这种类型可以让用户先筛选字符值,再填写其想要的范围如图5。本发明将标签的信息存在一张数据表中,其中的表结构类型如下:标签id,唯一标识某个标签的ID;标签名称,标签的中文名称如:用户年龄,用户性别;表名,标签所对应的底层数据表名称如:用户年龄在表A,用户性别在表B;字段名,标签所对应的底层数据表的字段名称如:用户年龄在表A字段是user_age;标签类型,标签类型分为数值类型,字符类型,数字字符组合类型;在WEB端用户使用以上各标签类型的标签进行相应的拖拽,逻辑的选择,最后汇成一套筛选规则,即所述的模型,如图3。在模型结构存储方面,从模型直观来看可以写成一条两层嵌套的SQL,但如果一条SQL跑完的话必定会遇上性能上面的瓶颈,因此必须得拆分适当的多条SQL,这个称为SQL集。为了实现把模型化为SQL集的功能,将模型逻辑看成一棵SQL树。这棵SQL树存储的方法分两步,通过数据库的两张表存储,其步骤如下:第一张表存储存储SQL树根节点、分支节点和叶子节点的关系:这棵SQL树拆按一个分支一颗树方法分成多棵子树。如图3,该模型分为两棵子树:第一棵树R-02为根节点、L-01、L-02是叶子节点;第二棵树R-01为根节点,R02、L-03、L-04为叶子节点。一棵子树一个节点存储在数据库一条数据,一棵子树有一个唯一ID,这里称为子树ID,然后再用另一个ID记录第几个叶子节点,即叶子节点ID。然后第一棵子树的根节点R-02是第二棵子树的叶子节点R-02,这里利用子树ID及叶子节点ID来做关联。第二棵树存储的是叶子节点存储具体标签的选择。如图3里,L-01、L-02、L-03、L-04就是叶子节点。L-01存储的就是用户性别是男,L-02存储就是用户年龄介于18到22。L-03存储的是应用名称属于微信、支付宝。L-04存储的是偏好(热度0-14)属于美食外卖介于10到14,在SQL树已经存储好之后,根据至底向上的规则写成多条SQL,叶子节点上面一个叶子节点一条SQL,一棵子树一条SQL。这样无论模型被构建多少层,无论SQL树多复杂都通过这种方法将复杂的SQL树拆分成相应多条的SQL,在进行SQL查询时,都不会出现瓶颈。把SQL集传到Hadoop+Spark上执行,进而得到模型结果集,最后将标签构建结果以及相关统计信息返回到web端展示。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (3)

1.一种基于标签的拖拽构建多层次目标人群的方法,其特征在于:所述方法包括如下步骤:
步骤1:用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则,并且每个叶子是标签的属性选择、数据比较及属性选择和数据比较的结合;
步骤2:模型规则经后台转换成SQL树状结构,其中SQL树状结构对应的值分为两类即一类为SQL树根节点、分支节点和叶子节点的关系,另一类为叶子节点的对应值,并分别存储在两张不同的数据表中;
步骤3:根据步骤2表中存储的树状结构,生成SQL集传递给hadoop+Spark集群进行计算,其中SQL集是指根据至底向上及叶子节点上面一个叶子节点一条SQL,一棵子树一条SQL的规则,写成的多条SQL;
步骤4:Spark计算完毕后,将结果数据统计并回传到数据库;
步骤5:并将数据库的模型相关统计信息返回到web端展示。
2.根据权利要求1所述的方法,所述数据库为Oracle数据库。
3.一种基于标签的拖拽构建多层次目标人群的系统,其特征在于:所述系统用于实现权利要求1所述的一种基于标签的拖拽构建多层次目标人群的方法,所述系统包括可视化WEB端模块、关系型数据库模块和分布式系统模块,所示可视化WEB端模块用于用户在web端筛选标签,并拖拽生成具有若干层级的树状结构模型规则;所述关系型数据库模块是指用于将所述模型规则对应的SQL树状结构数据存储的Oracle数据库,所述分布式系统模块是指用于接收Oracle数据库传递的指令进行计算并将计算结果返回给Oracle数据库的Hadoop+Spark集群。
CN202010160945.5A 2020-03-10 2020-03-10 一种基于标签的拖拽构建多层次目标人群的方法和系统 Active CN111400278B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010160945.5A CN111400278B (zh) 2020-03-10 2020-03-10 一种基于标签的拖拽构建多层次目标人群的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010160945.5A CN111400278B (zh) 2020-03-10 2020-03-10 一种基于标签的拖拽构建多层次目标人群的方法和系统

Publications (2)

Publication Number Publication Date
CN111400278A CN111400278A (zh) 2020-07-10
CN111400278B true CN111400278B (zh) 2023-11-14

Family

ID=71430753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010160945.5A Active CN111400278B (zh) 2020-03-10 2020-03-10 一种基于标签的拖拽构建多层次目标人群的方法和系统

Country Status (1)

Country Link
CN (1) CN111400278B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112365944A (zh) * 2020-10-23 2021-02-12 零氪科技(北京)有限公司 一种树状数据节点处理系统、方法、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11353167A (ja) * 1998-06-05 1999-12-24 Nec Corp 木構造データ変換方法及びその装置
US7353464B1 (en) * 2002-04-01 2008-04-01 Microsoft Corporation Hierarchical data navigation tool populated by a web service
WO2016103055A1 (en) * 2014-12-25 2016-06-30 Yandex Europe Ag Method of generating hierarchical data structure
CN110837492A (zh) * 2019-11-15 2020-02-25 中科院计算技术研究所大数据研究院 一种多源数据统一sql提供数据服务的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645381B2 (en) * 2011-06-27 2014-02-04 International Business Machines Corporation Document taxonomy generation from tag data using user groupings of tags

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11353167A (ja) * 1998-06-05 1999-12-24 Nec Corp 木構造データ変換方法及びその装置
US7353464B1 (en) * 2002-04-01 2008-04-01 Microsoft Corporation Hierarchical data navigation tool populated by a web service
WO2016103055A1 (en) * 2014-12-25 2016-06-30 Yandex Europe Ag Method of generating hierarchical data structure
CN110837492A (zh) * 2019-11-15 2020-02-25 中科院计算技术研究所大数据研究院 一种多源数据统一sql提供数据服务的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于层次树模型的Deep Web数据提取方法;田建伟;李石君;;计算机研究与发展(01);全文 *

Also Published As

Publication number Publication date
CN111400278A (zh) 2020-07-10

Similar Documents

Publication Publication Date Title
US11675801B2 (en) Data analysis platform utilizing database relationships to visualize data
US11620315B2 (en) Using an object model of heterogeneous data to facilitate building data visualizations
US10042901B2 (en) Systems and methods of generating a plurality of data visualizations in a data visualization region
CN108038222B (zh) 用于信息系统建模和数据访问的实体-属性框架的系统
CN107193967A (zh) 一种多源异构行业领域大数据处理全链路解决方案
US9613086B1 (en) Graphical user interface for generating and displaying data visualizations that use relationships
US9779150B1 (en) Systems and methods for filtering data used in data visualizations that use relationships
US20100131457A1 (en) Flattening multi-dimensional data sets into de-normalized form
US7788305B2 (en) Hierarchy nodes derived based on parent/child foreign key and/or range values on parent node
CN113272801A (zh) 根据选择的数据源的对象模型生成数据可视化
CN105320719B (zh) 一种基于项目标签和图形关系的众筹网站项目推荐方法
US9547646B2 (en) User-created members positioning for OLAP databases
US9268831B2 (en) System and method for extracting user selected data from a database
US20030126151A1 (en) Methods, apparatus and data structures for providing a uniform representation of various types of information
CN103646032A (zh) 一种基于本体和受限自然语言处理的数据库查询方法
CN107545046A (zh) 一种多源异构数据的融合方法及装置
US20100023496A1 (en) Processing data from diverse databases
CN110489464A (zh) 探索式图融合可视化方法和装置
EP2098967A1 (en) Apparatus and method for positioning user-created data in OLAP data sources
CN103268327B (zh) 面向高维服务数据的混合可视化方法
US11481654B2 (en) Cognitive rule engine
CN110059073A (zh) 基于子图同构的web数据自动可视化方法
CN103646025A (zh) 一种基于推理的层级知识库构建系统和方法
US20160070751A1 (en) Database management system
CN110059085A (zh) 一种面向Web 2.0的JSON数据解析与建模方法

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
GR01 Patent grant
GR01 Patent grant