一种数据建模的方法

文档序号:9929538阅读:693来源:国知局
一种数据建模的方法
【技术领域】
[0001] 本发明涉及数据库及数据仓库领域,并且更具体地,涉及数据建模的方法。
【背景技术】
[0002] 长久以来,数据建模都是小众的技术人群拥有的、高深的事情,需要利用各种专业 软件,如Erwin, PowerDesigner,EA等,根据业务需求,直接建立模型,如指定数据库表中的 符合长度要求的字母型名称、符合长度要求的字段的字母型名称等。在建立模型过程中还 需要知道什么是数据库设计的三范式,需要知道数据库的字段类型、主键、外键、索引等一 大堆高深的专业术语,使得数据建模的真正受益者一大多数的业务人员无法参与、无法评 判数据建模中的业务合理性、扩展性,而一旦根据建立的模型完成应用开发后,再发现数据 建模的问题,会花费额外的人力、财力、物力去变更从数据建模到应用开发的全部过程。重 要的是,这样的数据建模方式,没有充分发挥最大多数业务人员对于自己应用的软件的设 计热情,毕竟技术人员永远都比业务人员少得多,对于业务的精通程度,技术人员也比业务 人员差得多。
[0003] 但实际上,业务人员心中的初步设想,大部分都是简单的。只要条件适合,不需要 专业建模人员,业务人员自己是可以完成的。精通业务的业务人员虽然不能清晰地、完整地 说出自己的设想,但在头脑中,一定隐藏着一条完整的线条,"文章本天成,妙手偶得之",在 条件成熟时,就会源源不断地顺畅地牵引出来,这个条件,就是一个能把自己的思路很快变 成现实的具备易操作性的方法。
[0004] 这个方法把时间碎片化,不需要大块的时间来处理、探索数据建模,只需要每次一 点点的改进、增加内容,不影响主要业务的工作,让业务人员在时间上能够接受这种方法。
[0005] 利用这个方法,业务人员在自己的业务的数据模型在不断精细化、实用化的进化 过程中,对于数据建模的知识和思想也在进步。随着业务人员自己建立的数据模型越来越 专业,范围越来越多,业务人员对于数据建模的能力会变得越来越强,一方面自己的驾驭软 件的能力越来越强,相应的业务工作能力也因为自己设计的软件工具的应用得到进一步的 增强。
[0006] 另一方面,数据建模专业的人员,也可以更集中精力处理复杂的更有价值的数据 建模,而不是把精力大量地耗费在初步的、简单的数据建模上,影响自己专业的进步。
[0007] 0LTP中的数据模型,主要分成两类,一类是对象模型,主要是描述一个业务对象的 属性,另一类是过程模型,是描述业务发生的过程。对一个业务来说,对象模型是被动的、被 过程模型调用的模型,相当于一棵大树的枝叶,过程模型作为贯穿业务操作的红线,是应用 的主体,相当于大树的主干。
[0008] 0LAP中的数据模型的基础来源,主要分成三类,一类是维度模型,主要是描述一个 事实对象的维度;一类是事实模型,是描述最细粒度的业务事实;另一类是大量的统计汇 总模型,主要是统计应用。对0LAP应用来说,事实模型虽然数量少,但作为统计应用的基础 核心数据,在其上才能进行各种层次的统计、汇总,当事实模型涉及具体维度时,由维度模 型来描述。从这里可以看出,事实模型的数据建模,是建立数据仓库应用的基础,打好了这 个基础,数据仓库应用的大厦才可以比较容易地建立起来。

【发明内容】

[0009] 从业务人员的视角看来,无论是0LTP中的过程模型,还是0LAP中的事实模型,对 它们的数据建模,都是对应一个具体的在业务上发生的"事件",我们称为业务事件,它包括 发生的前置条件、一系列有序的动作、和这些动作产生的结果。业务人员很清楚发生在自己 专注的业务上的内容,让他用平常的语言,如记叙文的方式,来描述自己精通业务的事件, 是很容易的、专业的事情。
[0010] 发明目的:克服对于业务人员不熟悉的直接根据数据库技术建立模型的现状,提 出一种通过对业务事件的描述、分拆和处理,间接地建立过程模型或事实模型的方法。
[0011] 技术方案:通过对提交的业务事件描述进行分词处理后,与属性转换表格对照,找 出对应的属性,形成初始拆解表格,并在拆解表单中呈现;对提交确认的拆解表单进行包括 初步处理、层次处理、复用处理、输出处理的处理过程,形成可用于各种数据库的模型定义 表格。
[0012] -种数据建模的方法,包括以下6个步骤。
[0013] 步骤1,绘制包括业务事件名称输入域,和业务事件描述输入域的业务事件表单。
[0014] 步骤2,对提交的业务事件描述,按分词处理结果进行检索转换,建立初始拆解表 格。
[0015] 所述的分词处理,有很多种方法,本发明不限于某种固定的分词处理。分词条指分 词处理结果中一个一个的分词条目。
[0016] 所述的初始拆解表格,包括栏目名称含义为属性名称、引用属性、引用字段的栏 目。
[0017] 所述的初始拆解表格是指存在于内存中的一组数据集合。
[0018] 所述的表格,在本说明书和权利要求书中,均是指由多行和多列组成的二维表格, 且所述表格分为两部分,表头和记录行。表头在上部,只占一行;每个记录行即是表格中的 一行。表格中坚直的一列,称为一个栏目。栏目的第一行,即表头部分,称为栏目名称。所述 表格,可以呈现,也可以仅是存在于内存中的一组数据集合。在本说明书和权利要求书中, 所述的数据表,是指存在于数据库中的数据表。
[0019] 对每个分词条,按已存在的属性转换表格的属性名称栏目进行检索。若检索到分 词条在属性转换表格中存在对应的属性名称,则在所述初始拆解表格中添加记录行,并分 别在属性名称、引用属性、引用字段栏目中写入属性转换表格中的对应栏目;若不存在,则 在所述初始拆解表格中添加记录行,并在该行的属性名称栏目写入分词条。
[0020] 所述属性转换表格是存储于内存中的一组数据集合,这组数据集合包含了历次数 据建模中建立的属性与字段的转换关系。
[0021 ] 步骤3,根据初始拆解表格绘制拆解表单。
[0022] 所述的拆解表单包括一个拆解表格,所述拆解表格包括栏目名称含义为属性名 称、引用属性、引用字段、父属性的栏目。
[0023] 所述拆解表格的每个记录行对应初始拆解表格的每个记录行。
[0024] 所述记录行的内容包括如下四个栏目的内容。
[0025] (1)属性名称栏目:可接收文字输入的、初始内容为初始拆解表格中同行的属性 名称的内容的输入域。
[0026] (2)引用属性栏目:可接收选择的、选项包括有效的全部模型的全部属性的属性 名称的、选项改变时同时改变同行的引用字段栏目内容的、初始内容为初始拆解表格中同 行的引用属性的内容的选择域。
[0027] 所述有效的全部模型的全部属性的属性名称,是指在历次建立的有效的每个模型 中,全部有效属性的属性名称,这是因为引用时,可能引用任何一个其他有效模型的有效属 性。
[0028] (3)引用字段栏目:引用字段呈现域。
[0029] (4)父属性栏目:可接收选项的、选项为本拆解表格的全部属性名称、初始内容为 空的选择域。
[0030] 对于步骤4中所述的初步处理,包括如下三个特点。
[0031] (1)建立栏目包括含义为模型名称、属性名称、引用属性、引用字段、父属性的模型 处理表格。
[0032] 所述的模型处理表格是存在于内存中的一组数据集合。
[0033] (2)对于所述模型处理表格的每行的属性名称、引用属性、引用字段、父属性栏目 的内容,设置为与确认提交的所述拆解表格的同行的相应栏目内容。
[0034] (3)模型名称设置为与在步骤1提交的业务事件名称相同的名称。
[0035] 对于步骤5中的复用处理,特点包括,对于属性转换表格中每行的属性名称,在模 型处理表格的属性名称中检索是否存在相同的属性名称,若存在,则跳过;若不存在,则在 属性转换表格中添加各栏目内容与模型处理表格相应栏目内容相同的一行。
[0036] 对于步骤5中的层次处理,特点是模型处理表格中的每一行的模型名称内容,由 同行的原模型名称和同行的父属性组成。
[0037] 对于步骤6中的输出处理:包括如下三个特点。
[0038] (1)建立栏目包括含义为模型名称、数据表名、属性名称、字段名的模型定义表格。
[0039] (2)对于所述模型定义表格的每行的模型名称、属性名称栏目的内容,设置为与模 型处理表格的同行的相应栏目内容相同。
[0040] (3)对模型定义表格中的数据表名、字段名栏目进行自动处理,自动处理的原则包 括:相同的模型名称生成相同的数据表名;相同的属性名称生成相同的字段名。
[0041] 本发明与现有的技术相比,有如下三个有益效果。
[0042] (1)本发明提出的通过对业务事件的分拆和处理,通过人们熟知的"事件描述"这 种类似"记叙文"的写作方式,引导业务人员从熟悉的身边的业务开始,记录业务过程。
[0043] (2)本发明提出的通过对业务事件的描述、分拆和处理,根据业务人员提供的事件 描述,半自动化地完成对事件描述的分拆,减少了大部分机械、呆板的建模操作。
[0044] (3)本发明提出的通过对业务事件的分拆和处理,根据业务人员已经完成的数据 建模案例,"自学习"地丰富业务领域内的属性转换表格,随着方法使用越来越多,将使得业 务事件的建模过程越来越"智能化"。
【附图说明】
[0045] 为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使 用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明说明书的内 容,获得其他的附图。
[0046] 图1是通过拆解处理业务事件进行数据建模的方法的示意流程图。
【具体实施方式】
[0047] 我
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1