CN110457288B - 数据模型构建方法、装置、设备及计算机可读存储介质 - Google Patents

数据模型构建方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN110457288B
CN110457288B CN201910600396.6A CN201910600396A CN110457288B CN 110457288 B CN110457288 B CN 110457288B CN 201910600396 A CN201910600396 A CN 201910600396A CN 110457288 B CN110457288 B CN 110457288B
Authority
CN
China
Prior art keywords
field
data model
pool
scene
relation
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
CN201910600396.6A
Other languages
English (en)
Other versions
CN110457288A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910600396.6A priority Critical patent/CN110457288B/zh
Publication of CN110457288A publication Critical patent/CN110457288A/zh
Application granted granted Critical
Publication of CN110457288B publication Critical patent/CN110457288B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation
    • 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 Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种数据模型构建方法、装置、设备及计算机可读存储介质,该方法包括:通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。本申请涉及数据处理,可以提高数据模型的构建效率。

Description

数据模型构建方法、装置、设备及计算机可读存储介质
技术领域
本申请涉及数据处理的技术领域,尤其涉及一种数据模型构建方法、装置、设备及计算机可读存储介质。
背景技术
数据模型是数据特征的抽象,数据模型从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表示与操作提供了一个抽象的框架。不同业务场景所需的数据模型不同,通常需要工程师基于业务场景对表结构、字段、约束、关系、主键、外键和命名规则等进行严密逻辑的梳理,然后基于梳理得到的表结构、字段、约束、关系、主键、外键和命名规则等构建符合业务场景需求的数据模型,然而,梳理表结构、字段、约束、关系、主键、外键和命名规则等的逻辑较为复杂,需要工程师花费较多的时间进行梳理,数据模型的构建效率较低。
发明内容
本申请的主要目的在于提供一种数据模型构建方法、装置、设备及计算机可读存储介质,旨在提高数据模型的构建效率。
第一方面,本申请提供一种数据模型构建方法,所述数据模型构建方法包括以下步骤:
通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
第二方面,本申请还提供一种数据模型构建装置,所述数据模型构建装置包括:
模型拆分模块,用于通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
关系确定模块,用于根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
模型构建模块,用于通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
第三方面,本申请还提供一种计算机设备,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述的数据模型构建方法的步骤。
第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述的数据模型构建方法的步骤。
本申请提供一种数据模型构建方法、装置、设备及计算机可读存储介质,本申请通过多线程策略将已完成梳理的标准数据模型拆分为字段单元,并确定各字段单元之间的字段关系和表关系,可以提高模型拆分速度,同时通过多线程策略基于的字段单元、字段关系和表关系构建每个场景字段组对应的目标数据模型,可以构建得到已梳理的每个场景对应的目标数据模型,有效的提高了数据模型的构建效率和构建准确性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据模型构建方法的流程示意图;
图2为图1中的数据模型构建方法的子步骤流程示意图;
图3为本申请实施例提供的另一种数据模型构建方法的流程示意图;
图4为本申请实施例提供的一种数据模型构建装置的示意性框图;
图5为图4中的数据模型构建装置的子模块的示意性框图;
图6为本申请实施例提供的另一种数据模型构建装置的示意性框图;
图7为本申请一实施例涉及的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请实施例提供一种数据模型构建方法、装置、计算机设备及计算机可读存储介质。其中,该数据模型构建方法可应用于服务器中,该服务器可以是单台的服务器,也可以是由多台服务器组成的服务器集群。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本申请的实施例提供的一种数据模型构建方法的流程示意图。
如图1所示,该数据模型构建方法包括步骤S101至步骤S103。
步骤S101、通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元。
其中,标准数据模型为表结构、字段、约束、关系、主键、外键和命名规则等均已进行严密梳理得到的数据模型,收集不同业务场景下的标准数据模型,并将收集到的标准数据模型存储至分布式存储系统,从而形成标准数据模型池。通过存储在分布式存储系统,可以有效的实现标准数据模型的存储扩展和数据重构,保证标准数据模型的高可用。
在需要构建数据模型时,通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集拆分得到的字段单元以形成字段单元池。具体地,通过预设的第一线程并发策略并发的从分布式存储系统中获取标准数据模型池,同时将该标准数据模型池中的每个标准数据模型拆分为单个的数据表,再将单个的数据表拆分为单个的字段单元。其中,标准数据模型包括数据表,数据表包括字段单元。
在一实施例中,如图2所示,步骤S101包括:子步骤S1011至子步骤S1012。
子步骤S1011,根据预设标准数据模型池中的标准数据模型的个数,确定第一线程数,并创建所述第一线程数的线程,以形成第一线程池。
具体地,预设的第一线程并发策略具体为统计预设标准数据模型池中的标准数据模型的个数,并确定可创建线程数;然后判断标准数据模型的个数是否大于或等于该可创建线程数,如果标准数据模型的个数大于或等于可创建线程数,则将该可创建线程数确定为第一线程数,如果标准数据模型的个数小于可创建线程数,则将标准数据模型的个数确定为第一线程数;创建该第一线程数的线程,以形成第一线程池。
其中,可创建线程数基于服务器的当前可用内存资源和中央处理器(CentralProcessing Unit,CPU)资源确定,线程创建方式包括但不限于通过继承Thread类创建线程、通过实现Runnable接口创建线程、通过Callable和Future创建线程以及通过实现Callable接口基于FutureTask包装器创建线程,本申请对此不作具体限定。
子步骤S1012、通过所述第一线程池中的每个线程并发的将所述标准数据模型池中的每个标准数据模型拆分为字段单元。
具体地,将该标准数据模型池中的标准数据模型平均分配给第一线程池中的线程,得到每个线程各自对应的待拆分标准数据模型;通过每个线程并发的将各自对应的待拆分标准数据模型拆分为字段单元,即通过每个线程并发的将各自对应的待拆分标准数据模型拆分为单个的数据表,再将单个的数据表拆分为单个的字段单元。
例如,某一标准数据模型包括客户信息表、商品信息表和客户购物清单表,则对该标准数据模型进行数据表拆分之后,可以得到单独的客户信息表、商品信息表和客户购物清单表,客户信息表如表1所示,商品信息表如表2所示,客户购物清单表如表3所示。
表1为客户信息表
客户姓名 客户编号 客户手机号码 客户住址 客户出生年月
张三 SZ000001 188xxxx5011 XX区XX街道 19851203
…… …… …… …… ……
其中,客户信息表包括客户姓名、客户编号、客户手机号码、客户住址和客户出生年月等。
表2为商品信息表
商品名 商品编号 商品单价 生产日期 有效期
牙刷 QS100001 20元/件 20180828 3年
…… …… …… …… ……
其中,商品信息表包括商品名、商品编号、商品单价、生产日期和有效期等。
表3为客户购物清单表
客户姓名 客户编号 商品名 商品编号 购买数量 金额
李四 SZ000002 牙膏 QS100006 2 50
…… …… …… …… …… ……
其中,客户购物清单表包括客户姓名、客户编号、商品名、商品编号、购买数量和金额等。
在拆分得到客户信息表、商品信息表和客户购物清单表之后,可以进一步地将客户信息表、商品信息表和客户购物清单表拆分为单个的字段单元,如表1所示的客户信息表,包括客户姓名、客户编号、客户手机号码、客户住址和客户出生年月等字段单元;如表2所示的商品信息表包括:商品名、商品编号、商品单价、生产日期和有效期等字段单元;如表3所示的客户购物清单列表包括:客户姓名、客户编号、商品名、商品编号、购买数量和金额等字段单元。
步骤S102、根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系。
在得到字段单元池之后,服务器根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系,具体为从每个标准数据模型中获取各数据表的数据约束信息;从该数据约束信息中获取各数据表之间的表关系标签和每个数据表中各字段单元的字段关系标签;按照获取到的各字段单元的字段关系标签,对字段单元池中的各字段单元进行关系标记,以确定字段单元池中各字段单元之间的字段关系;按照获取到的各数据表之间的表关系标签,对字段单元池中各字段单元的所属数据表进行关系标记,以确定字段单元池中各字段单元所属数据表之间的表关系。
其中,字段关系标签用于表示各字段单元之间的字段关系,而字段关系包括表相同关系和表不同关系,其中,表相同关系为字段单元属于同一个数据表,反之,表不同关系为字段单元属于不同数据表;表关系标签用于表示各数据表之间的表关系,而表关系包括模型相同关系和模型不相同关系,其中,模型相同关系为数据表属于同一标准数据模型,而模型不同关系为数据表属于不同的标准数据模型,且模型相同关系包括主键和外键,外键表示了两个关系之间的相关联系,以另一个关系的外键作主关键字的数据表被称为主表,具有此外键的数据表被称为主表的从表。
步骤S103、通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
其中,预设场景字段组池中的每个场景字段组包括对应业务场景通用的场景字段,用于描述业务场景,例如,场景字段组为[商品、订单、评价和客户]描述的是购物场景,而场景字段组[教师、课程、学生、资讯、收藏和学习]描述的是网上教育场景,而场景字段组以及场景字段组与业务场景之间的关系可基于实际情况进行设置,本申请对此不作具体限定。
在确定字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系之后,服务器通过预设的第二线程并发策略并发的根据字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
具体地,预设的第二线程并发策略为:根据预设场景字段组池中场景字段表的个数,确定第二线程数,并创建第二线程数的线程,以形成第二线程池;通过第二线程池中的每个线程并发的根据字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
其中,第二线程数的确定方式具体为:获取可创建线程数,并判断预设场景字段组池中场景字段表的个数是否大于或等于该可创建线程数,如果预设场景字段组池中场景字段表的个数大于或等于该可创建线程数,则将可创建线程数确定为第二线程数,如果预设场景字段组池中场景字段表的个数小于该可创建线程数,则将预设场景字段组池中场景字段表的个数确定为第二线程数。
其中,数据模型的构建方式具体为:通过第二线程池中的每个线程并发的从预设场景字段组池中获取每个场景字段组;从该字段单元池选择每个场景字段组中的各场景字段对应的各字段单元,以确定每个场景字段组各自对应的字段单元集合;根据该字段关系,分别将每个场景字段组各自对应的字段单元集合中的各字段单元进行组合,得到每个场景字段组各自对应的数据表集合;根据该表关系,分别将每个场景字段组各自对应的数据表集合中的各数据表进行组合,得到每个场景字段组各自对应的目标数据模型,即将属于同一标准数据模型的数据表组合在一起,得到若干数据模型,并汇总全部数据模型,形成数据表不重复的目标数据模型。
例如,场景字段组为[商品、订单、评价和客户],则从该字段单元池中选择包含商品、订单、评价或客户这4个场景字段的字段单元,如商品编号、商品名称、商品库存、商品详情、商品价格、商品评价、客户编号、客户姓名、客户手机号、客户地址、客户出生年月、客户性别、客户学历、商品上市时间和订单编号等,得到[商品、订单、评价和客户]对应的字段单元集合;然后根据字段关系,对该字段单元集合中的各字段单元进行组合,即将字段关系为表相同关系的字段单元进行组合,可以得到若干数据表,若干数据表的汇总如表4所示。
表4为组合得到的数据表的汇总表
字段单元1 字段单元2 字段单元3 字段单元4 字段单元5 组合得到的数据表
商品号 商品名称 商品库存 商品详情 商品价格 商品信息表1
商品号 商品名称 商品种类 商品详情 商品评价 商品信息表2
商品号 客户编号 商品名称 客户姓名 商品评价 商品评价表
客户姓名 客户编号 客户手机号 客户住址 客户出生年月 客户信息表1
客户姓名 客户编号 商品名称 商品号 订单编号 订单信息表
客户姓名 客户编号 客户手机号 客户性别 客户学历 客户信息表2
商品号 商品名称 商品上市时间 商品详情 商品价格 商品信息表3
其中,商品号、商品名称、商品库存、商品详情和商品价格组成商品信息表1,商品号、商品名称、商品种类、商品详情和商品评价组成商品信息表2,商品号客户编号、商品名称、客户姓名和商品评价组成商品评价表,客户姓名、客户编号、客户手机号、客户住址和客户出生年月组成客户信息表1,客户姓名、客户编号、商品名称、商品号和订单编号组成订单信息表,客户姓名、客户编号、客户手机、客户性别和客户学历组成客户信息表2,商品号商品名称、商品上市时间、商品详情和商品价格组成商品信息表3。
商品信息表1、客户信息表1和订单信息表属于相同的数据模型,则组成第一数据模型,商品信息表2、客户信息表2和商品评价表属于相同的数据模型,则组成第二数据模型,商品信息表3、客户信息表1、订单信息表和商品评价表属于相同的数据模型,则组成第三数据模型,将第一数据模型、第二数据模型和第三数据模型汇总,得到[商品、订单、评价和客户]对应的目标数据模型,该目标数据模型包括商品信息表、商品评价表、订单信息表和客户信息表,该目标数据模型的组成情况如表5所示。
表5为目标数据模型的组成情况表
Figure BDA0002119100320000081
其中,商品信息表包括商品号、商品名称、商品库存、商品详情、商品价格、商品评价和商品上市时间等字段单元,商品评价表包括商品号、客户编号、商品名称、客户姓名和商品评价等字段单元,订单信息表包括客户姓名、客户编号、商品名称、商品号和订单编号等字段单元,客户信息表包括客户姓名、客户编号、客户手机号、客户住址、客户出生年月、客户性别和客户学历等字段单元。
上述实施例提供的数据模型构建方法,通过多线程策略将已完成梳理的标准数据模型拆分为字段单元,并确定各字段单元之间的字段关系和表关系,可以提高模型拆分速度,同时通过多线程策略基于的字段单元、字段关系和表关系构建每个场景字段组对应的目标数据模型,可以构建得到已梳理的每个场景对应的目标数据模型,有效的提高了数据模型的构建效率和构建准确性。
请参照图3,图3为本申请实施例提供的另一种数据模型构建方法的流程示意图。
如图3所示,该数据模型构建方法包括步骤S201至204。
步骤S201、通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元。
在需要构建数据模型时,通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集拆分得到的字段单元以形成字段单元池。具体地,通过预设的第一线程并发策略并发的从分布式存储系统中获取标准数据模型池,同时将该标准数据模型池中的每个标准数据模型拆分为单个的数据表,再将单个的数据表拆分为单个的字段单元。其中,标准数据模型包括数据表,数据表包括字段单元。
步骤S202、根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系。
具体地,从每个标准数据模型中获取各数据表的数据约束信息;从该数据约束信息中获取各数据表之间的表关系标签和每个数据表中各字段单元的字段关系标签;按照获取到的各字段单元的字段关系标签,对字段单元池中的各字段单元进行关系标记,以确定字段单元池中各字段单元之间的字段关系;按照获取到的各数据表之间的表关系标签,对字段单元池中各字段单元的所属数据表进行关系标记,以确定字段单元池中各字段单元所属数据表之间的表关系。
步骤S203、通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
具体地,在确定字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系之后,服务器通过预设的第二线程并发策略并发的根据字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
步骤S204、当接收到数据模型推荐请求时,根据所述数据模型推荐请求中的关键字段组,获取对应的目标数据模型,并显示获取到的目标数据模型。
其中,在构建完成不同业务场景下的数据模型之后,将数据模型存储至数据库中,数据模型与业务场景标签存在一一对应关系。
当接收到数据模型推荐请求时,服务器根据该数据模型推荐请求中的关键字段组,获取对应的目标数据模型,并显示获取到的目标数据模型。具体地,从数据模型推荐请求中获取关键字段组,并获取预存的关键字段组与业务场景标识之间的映射关系表;查询该映射关系表,获取与该关键字段组对应的业务场景标识,并获取该业务场景标签对应的目标数据模型。
例如,数据模型推荐请求中的关键字段组为[商品、订单、评价和客户],则通过[商品、订单、评价和客户]查询得到目标数据模型如表6所示。
表6为关键字段组为[商品、订单、评价和客户]对应的数据模型
Figure BDA0002119100320000101
上述实施例提供的数据模型构建方法,通过提前构建好不同业务场景下的数据模型,能够在需要构建某个业务场景的数据模型时,通过输入关键字段组即可获取到对应的数据模型,不需要再经过长时间的模型构建,可以快速简单的输出严谨规范的数据模型,降低数据模型的构建难度,提高构建效率。
请参照图4,图4为本申请实施例提供的一种数据模型构建装置的示意性框图。
如图4所示,该数据模型构建装置400,包括:模型拆分模块401、关系确定模块402和模型构建模块403。
模型拆分模块401,用于通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元。
在一个实施例中,如图5所示,所述模型拆分模块401包括:
线程创建子模块4011,用于根据预设标准数据模型池中的标准数据模型的个数,确定第一线程数,并创建所述第一线程数的线程,以形成第一线程池;
模型拆分子模块4012,用于通过所述第一线程池中的每个线程并发的将所述标准数据模型池中的每个标准数据模型拆分为字段单元。
关系确定模块402,用于根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系。
在一个实施例中,所示关系确定模块402,还用于从每个标准数据模型中获取各数据表的数据约束信息;从所述数据约束信息中获取各数据表之间的表关系标签和每个数据表中各字段单元的字段关系标签;按照获取到的各字段单元的字段关系标签,对所述字段单元池中的各字段单元进行关系标记,以确定所述字段单元池中各字段单元之间的字段关系;按照获取到的各数据表之间的表关系标签,对所述字段单元池中各字段单元的所属数据表进行关系标记,以确定所述字段单元池中各字段单元所属数据表之间的表关系。
模型构建模块403,用于通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
在一个实施例中,所示模型构建模块403,还用于根据预设场景字段组池中场景字段表的个数,确定第二线程数,并创建所述第二线程数的线程,以形成第二线程池;通过所述第二线程池中的每个线程并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
在一个实施例中,所示模型构建模块403,还用于通过所述第二线程池中的每个线程并发的从预设场景字段组池中获取每个场景字段组;从所述字段单元池选择每个场景字段组中的各场景字段对应的各字段单元,以确定每个场景字段组各自对应的字段单元集合;根据所述字段关系,分别将每个场景字段组各自对应的字段单元集合中的各字段单元进行组合,得到每个场景字段组各自对应的数据表集合;根据所述表关系,分别将每个场景字段组各自对应的数据表集合中的各数据表进行组合,得到每个场景字段组各自对应的目标数据模型。
请参照图6,图6为本申请实施例提供的另一种数据模型构建装置的示意性框图。
如图6所示,该数据模型构建装置500,包括:模型拆分模块501、关系确定模块502、模型构建模块503和模型推荐模块504。
模型拆分模块501,用于通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元。
关系确定模块502,用于根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系。
模型构建模块503,用于通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
模型推荐模块504,用于当接收到数据模型推荐请求时,根据所述数据模型推荐请求中的关键字段组,获取对应的目标数据模型,并显示获取到的目标数据模型。
在一实施例中,所述模型推荐模块504,还用于从所述数据模型推荐请求中获取关键字段组,并获取预存的关键字段组与业务场景标识之间的映射关系表;查询所述映射关系表,获取与所述关键字段组对应的业务场景标识,并获取所述业务场景标签对应的目标数据模型。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块及单元的具体工作过程,可以参考前述数据模型构建方法实施例中的对应过程,在此不再赘述。
上述实施例提供的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图7所示的计算机设备上运行。
请参阅图7,图7为本申请实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以为服务器。
如图7所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种数据模型构建方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种数据模型构建方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
在一个实施例中,所述处理器在实现通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元时,用于实现:
根据预设标准数据模型池中的标准数据模型的个数,确定第一线程数,并创建所述第一线程数的线程,以形成第一线程池;
通过所述第一线程池中的每个线程并发的将所述标准数据模型池中的每个标准数据模型拆分为字段单元。
在一个实施例中,所述处理器在实现根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系时,用于实现:
从每个标准数据模型中获取各数据表的数据约束信息;
从所述数据约束信息中获取各数据表之间的表关系标签和每个数据表中各字段单元的字段关系标签;
按照获取到的各字段单元的字段关系标签,对所述字段单元池中的各字段单元进行关系标记,以确定所述字段单元池中各字段单元之间的字段关系;
按照获取到的各数据表之间的表关系标签,对所述字段单元池中各字段单元的所属数据表进行关系标记,以确定所述字段单元池中各字段单元所属数据表之间的表关系。
在一个实施例中,所述处理器在实现通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型时,用于实现:
根据预设场景字段组池中场景字段表的个数,确定第二线程数,并创建所述第二线程数的线程,以形成第二线程池;
通过所述第二线程池中的每个线程并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型。
在一个实施例中,所述处理器在实现通过所述第二线程池中的每个线程并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型时,用于实现:
通过所述第二线程池中的每个线程并发的从预设场景字段组池中获取每个场景字段组;
从所述字段单元池选择每个场景字段组中的各场景字段对应的各字段单元,以确定每个场景字段组各自对应的字段单元集合;
根据所述字段关系,分别将每个场景字段组各自对应的字段单元集合中的各字段单元进行组合,得到每个场景字段组各自对应的数据表集合;
根据所述表关系,分别将每个场景字段组各自对应的数据表集合中的各数据表进行组合,得到每个场景字段组各自对应的目标数据模型。
其中,在另一实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型;
当接收到数据模型推荐请求时,根据所述数据模型推荐请求中的关键字段组,获取对应的目标数据模型,并显示获取到的目标数据模型。
在一个实施例中,所述处理器在实现根据所述数据模型推荐请求中的关键字段组,获取对应的目标数据模型时,用于实现:
从所述数据模型推荐请求中获取关键字段组,并获取预存的关键字段组与业务场景标识之间的映射关系表;
查询所述映射关系表,获取与所述关键字段组对应的业务场景标识,并获取所述业务场景标签对应的目标数据模型。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序中包括程序指令,所述程序指令被执行时所实现的方法可参照本申请数据模型构建方法的各个实施例。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种数据模型构建方法,其特征在于,包括:
通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型;
其中,通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型的步骤包括:
根据预设场景字段组池中场景字段表的个数,确定第二线程数,并创建所述第二线程数的线程,以形成第二线程池;
通过所述第二线程池中的每个线程并发的从预设场景字段组池中获取每个场景字段组;
从所述字段单元池选择每个场景字段组中的各场景字段对应的各字段单元,以确定每个场景字段组各自对应的字段单元集合;
根据所述字段关系,分别将每个场景字段组各自对应的字段单元集合中的各字段单元进行组合,得到每个场景字段组各自对应的数据表集合;
根据所述表关系,分别将每个场景字段组各自对应的数据表集合中的各数据表进行组合,得到每个场景字段组各自对应的目标数据模型。
2.如权利要求1所述的数据模型构建方法,其特征在于,所述通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元的步骤,包括:
根据预设标准数据模型池中的标准数据模型的个数,确定第一线程数,并创建所述第一线程数的线程,以形成第一线程池;
通过所述第一线程池中的每个线程并发的将所述标准数据模型池中的每个标准数据模型拆分为字段单元。
3.如权利要求1所述的数据模型构建方法,其特征在于,所述根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系的步骤,包括:
从每个标准数据模型中获取各数据表的数据约束信息;
从所述数据约束信息中获取各数据表之间的表关系标签和每个数据表中各字段单元的字段关系标签;
按照获取到的各字段单元的字段关系标签,对所述字段单元池中的各字段单元进行关系标记,以确定所述字段单元池中各字段单元之间的字段关系;
按照获取到的各数据表之间的表关系标签,对所述字段单元池中各字段单元的所属数据表进行关系标记,以确定所述字段单元池中各字段单元所属数据表之间的表关系。
4.如权利要求1-3中任一项所述的数据模型构建方法,其特征在于,所述通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型的步骤之后,还包括:
当接收到数据模型推荐请求时,根据所述数据模型推荐请求中的关键字段组,获取对应的目标数据模型,并显示获取到的目标数据模型。
5.如权利要求4所述的数据模型构建方法,其特征在于,所述根据所述数据模型推荐请求中的关键字段,获取对应的目标数据模型的步骤,包括:
从所述数据模型推荐请求中获取关键字段组,并获取预存的关键字段组与业务场景标识之间的映射关系表;
查询所述映射关系表,获取与所述关键字段组对应的业务场景标识,并获取所述业务场景标识对应的目标数据模型。
6.一种数据模型构建装置,其特征在于,所述数据模型构建装置包括:
模型拆分模块,用于通过预设的第一线程并发策略并发的将预设标准数据模型池中的每个标准数据模型拆分为字段单元,并汇集所述字段单元以形成字段单元池,其中,所述标准数据模型包括数据表,所述数据表包括字段单元;
关系确定模块,用于根据每个标准数据模型中的数据约束信息,确定所述字段单元池中各字段单元之间的字段关系以及各字段单元所属数据表之间的表关系;
模型构建模块,用于通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型;
其中,所述通过预设的第二线程并发策略并发的根据所述字段单元池、字段关系和表关系,构建预设场景字段组池中每个场景字段组对应的目标数据模型包括:根据预设场景字段组池中场景字段表的个数,确定第二线程数,并创建所述第二线程数的线程,以形成第二线程池;通过所述第二线程池中的每个线程并发的从预设场景字段组池中获取每个场景字段组;从所述字段单元池选择每个场景字段组中的各场景字段对应的各字段单元,以确定每个场景字段组各自对应的字段单元集合;根据所述字段关系,分别将每个场景字段组各自对应的字段单元集合中的各字段单元进行组合,得到每个场景字段组各自对应的数据表集合;根据所述表关系,分别将每个场景字段组各自对应的数据表集合中的各数据表进行组合,得到每个场景字段组各自对应的目标数据模型。
7.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至5中任一项所述的数据模型构建方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至5中任一项所述的数据模型构建方法的步骤。
CN201910600396.6A 2019-07-04 2019-07-04 数据模型构建方法、装置、设备及计算机可读存储介质 Active CN110457288B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910600396.6A CN110457288B (zh) 2019-07-04 2019-07-04 数据模型构建方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910600396.6A CN110457288B (zh) 2019-07-04 2019-07-04 数据模型构建方法、装置、设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110457288A CN110457288A (zh) 2019-11-15
CN110457288B true CN110457288B (zh) 2023-06-20

Family

ID=68482229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910600396.6A Active CN110457288B (zh) 2019-07-04 2019-07-04 数据模型构建方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110457288B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112434078A (zh) * 2020-11-20 2021-03-02 广州奇享科技有限公司 一种锅炉数据的处理方法、装置、设备及存储介质
CN112711412B (zh) * 2020-12-29 2023-01-24 山东浪潮通软信息科技有限公司 一种业务计划通用编制方法及平台
CN113486010A (zh) * 2021-07-01 2021-10-08 远光软件股份有限公司 数据库的同步方法、装置、服务器和存储介质
CN114707953A (zh) * 2022-03-28 2022-07-05 上海精鲲计算机科技有限公司 一种主数据全生命周期管理方法、系统、引擎及存储介质
CN115098502A (zh) * 2022-06-24 2022-09-23 平安银行股份有限公司 一种数据表的创建方法、装置、终端设备和可读存储介质
CN116401303B (zh) * 2023-04-12 2023-11-10 岱特智能科技(上海)有限公司 用于肾病治疗的医院多数据库数据管理方法及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104361221A (zh) * 2014-10-31 2015-02-18 沈阳锐易特软件技术有限公司 基于异构系统数据映射模板的医疗数据采集系统及方法
CN105589886A (zh) * 2014-10-24 2016-05-18 国家电网公司 电网公共信息模型构建方法及装置
CN107704625A (zh) * 2017-10-30 2018-02-16 锐捷网络股份有限公司 字段匹配方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089266B2 (en) * 2003-06-02 2006-08-08 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for the query and visualization of multidimensional databases
US20150293947A1 (en) * 2014-04-10 2015-10-15 Raghuvira Bhagavan Validating relationships between entities in a data model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589886A (zh) * 2014-10-24 2016-05-18 国家电网公司 电网公共信息模型构建方法及装置
CN104361221A (zh) * 2014-10-31 2015-02-18 沈阳锐易特软件技术有限公司 基于异构系统数据映射模板的医疗数据采集系统及方法
CN107704625A (zh) * 2017-10-30 2018-02-16 锐捷网络股份有限公司 字段匹配方法和装置

Also Published As

Publication number Publication date
CN110457288A (zh) 2019-11-15

Similar Documents

Publication Publication Date Title
CN110457288B (zh) 数据模型构建方法、装置、设备及计算机可读存储介质
US20120072307A1 (en) Providing a marketplace for software services
US20120059706A1 (en) Methods and Apparatus for Transforming User Data and Generating User Lists
JP5982310B2 (ja) 販売促進システム、サーバ装置、販売促進方法、及びプログラム
US20160092933A1 (en) Advertisement opportunity bidding
CN113450162A (zh) 用户分群方法、装置及存储介质
CN108874805B (zh) 数据的处理方法和装置
CN114444478A (zh) 一种凭证可视化方法、装置、电子设备及存储介质
JP2014135050A (ja) ビジュアルサーチを利用したコンピュータにより実現される方法、システム及びコンピュータプログラム
US11487793B1 (en) Optimized search results system and methods
Johansson et al. Why rational agents report zero or negative WTPs in valuation experiments
CN109035070B (zh) 一种基于物联网搜索的餐饮系统
CN111259242A (zh) 数据处理方法、装置、存储介质及设备
CN110069499A (zh) 数据管理方法、装置、系统及存储介质
US20140006098A1 (en) Methods and systems utilizing an engagement code
CN109408792B (zh) 一种客户信息补录方法及装置
CN113434266A (zh) 任务分发方法、系统、电子设备及介质
CN107644298B (zh) 一种数据处理的方法、装置、存储装置及终端设备
CN112990995A (zh) 商品对象的发布方法、装置及计算机系统
US20120253951A1 (en) Scalable inventory protection and optimization in display advertising
CN110471726B (zh) 组件显示控制方法及终端设备
KR20200133561A (ko) 지연 결제 기반의 결제 혜택 제공방법
Birmpas et al. Cost-sharing models in participatory sensing
US12100020B2 (en) Method, apparatus, and computer program product for ascertaining a demand of promotions
JP2004005745A (ja) 広告効果測定システム及び広告効果測定方法

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