论文部分内容阅读
通用模型管理是针对元数据管理的一种新的方法,它能够提供更高层次上的元数据实现和管理策略。通用模型管理包括两个重要概念:模型和映射,同时还需要提供模型和映射上的操作,包括Match,Merge,Diff,Compose,Apply。 国际上对于通用模型管理的研究主要分为系统的整体设计和系统操作符的实现两大类。目前作为系统设计的研究成果并不多见,多数研究集中在单独操作符的实现上。而在操作符的实现中,Match算法是种类最多,实现最广的方法。尽管上述的研究取得了一定成果,但是还有许多值得深入探讨之处。 本文首先全面介绍了目前通用模型管理的研究方向和成果,针对通用模型管理系统和操作符的算法进行了简要陈述。然后在现有成果的基础上,提出本文的模型管理体系结构及各个操作符算法、新加入的Expression处理方法、冲突解决方案和特定情景下的模型管理方案。 一个模型体系结构的核心就是操作符的实现及连接,本文首先提出了一个新的操作符称为ModelGenerate,用于生成模型系统中的模型,即当外部元数据进入模型系统时,如何产生系统支持的模型描述。例如,在数据仓库领域,我们希望从各个数据库中读取元数据信息,并根据星型模式或者雪花模式进行元数据的导入工作,由于这些元数据信息在数据库中是没有层次关系的,因此需要考虑如何将这些元数据转换成具有层次关系的模型。ModelGenerate是本文提出的一个新的操作符,任何以树型结构作为其模型逻辑表示方法的系统均可以使用。 Match算法是实现最多、应用最广的算法,按算法形式区分为单独的匹配算法和复合的匹配算法;单独的匹配算法又分为基于模式的和基于实例的;基于模式的匹配算法又分为元素级的和结构级的;元素级和结构级的匹配算法下又各分为几种不同的算法。每一种算法都各有优势和局限性。对于传统的使用自顶向下的匹配算法而言,其效率通常比较低,因为一旦顶层模式结构非常不同,而更细粒度上的元素匹配良好时,这种算法常常无法得出正确的匹配结果。如果设计一个自底向上的算法,则所有最细粒度上的元素组合均能够被访问到,因此在上层结构非常不同时也可以很好的工作,但是其运行代价相对较高。本文针对具有结构化的模式匹配提出了一种新的匹配算法,称作T-DM(Top-DownMatch)。T-DM算法是模式级的,而不是实例级的。由于自底向下的算法的代价过大,因此T-DM使用自顶向下的遍历方法,同时针对这种遍历方法对细粒度匹配的劣势进行改进,使得T-DM能够节省计算代价的同时,保证匹配的正确性。T-DM算法首先进行第一阶段的半语言匹配,即结合语言匹配和结构判断信息,之后考虑模式元素上下文或者邻居,同时考虑元素包含的叶子节点,进行第二阶段的结构匹配。得出的结构匹配系数指导Match算法生成映射对象。 为了使模型管理系统能够自动处理更多的情况,在映射对象中,加入一个表示源模型和目标模型间关系的对象,称为Expression。如果对Expression处理得当,则可以在很大程度上加大模型管理的自动实现范围,从而大大提高模型管理的效率。本文提出了一种针对Expression的实现方法,利用树型图的方式定义其语法结构,并根据Expression的类型分别讨论Expression的实现方法,同时提出在模型管理过程中,随着模型操作符的运用,如何对已存在的Expression进行相应的转换。 操作符算法的实现不能仅仅集中在本算法的性能和方法上,同时也需要考虑在模型系统中算法生成的结果所引发的冲突问题。模型管理系统下的各操作符必须满足许多特殊的约束,否则将会引发冲突。冲突或者会导致系统操作符的不可重用性,或者会导致结果不符合用户要求。本文针对模型级冲突、元模型级冲突和结构体系级冲突这3种冲突种类,利用层次与无层次间的转换、元素间的合并、生成一个新元素等方法,研究并提出了冲突解决方案。 本文还提出了在Paraware并行数据仓库系统下的模型管理方案,针对Paraware系统自身的元数据特点设计模型管理实现方法,并给出了核心的数据结构。 本文的主要创新如下: 1.提出了一个新的操作符ModelGenerate,用于生成模型,即将不同的元数据转换成模型管理系统支持的模型表示。 2.针对模型管理操作符Match,提出一种匹配方法T-DM算法,自顶向上并结合自底向下的方法遍历整个元数据结构,同时生成满足元素级和结构级的匹配关系和映射对象。 3.提出一种语义表示方法Expr,用于表达模型间更为复杂的映射关系,给出了Expr在参与模型管理的过程中所必须的转换工作,也讨论了Expr能够被通用化的情况,以及不同情况下的Expr实现。 4.提出操作冲突解决方案,主要针对各个操作符所引出的问题。很多种对元数据的操作的冲突无法自动更正,因此要设定人工干涉的范围和处理标准。 5.提出在ParaWare特定情景下的模型管理方案,主要是如何管理数据仓库元数据到OLAP服务器的元数据转换问题。