专栏首页数据饕餮数据仓库专题19-数据建模语言Information Engineering - IE模型(转载)

数据仓库专题19-数据建模语言Information Engineering - IE模型(转载)

Information Engineering采用Crow's Foot表示法(也有叫做James Martin表示法的),中文翻译中对使用了Crow's Foot表示法的模型也有笼统的称做鸭掌模型的(关联关系的关联基数中采用到了一个鸭掌形的三叉线来表示)。他由Clive Finkelstein发明,与James Martin一起推广,后来两人各自做了些修正形成两份版本

前面示例模型的Information Engineering表示如下:

图:Information Engineering - IE模型 - Crow's Foot Model - 鸭掌模型图:Information Engineering - IE模型

注意IE模型与ER模型的区别。Purchase Order与Party是多对一 n:1 的关联关系,在ER模型中n被放置在了Party的左边,而IE模型中n被放置在了Purchase Order的右边。两种表示法的形式(相当于语法)不一样,但语义是一致的。这一点也只有ER模型是特殊的,其他模型表示法中都与IE 模型一致 Entity & Attribute:实体属性并不出现在IE模型中,而是单独使用另外的文档记录 Relationship Crow's Foot的可选项optionality和关联基数cardinality 表示法:

图:Crow's Foot的可选项optionality和关联基数cardinality 表示法图:Crow's Foot的可选项optionality和关联基数cardinality 表示法 Optionality 可选项:用来表示该关联关系是可选的,还是必须的。对于可选的关联关系,通常表现为用于关联的外键字段允许为null值,或者对于使用中间关联关系表的情况下可以不出现关联数据,而必须的关联关系则不允许外键为null或者必须存在关联数据 Cardinality 关联基数:用来表示关联实体的数量上限,为1、n等 图中右边部分表示的意义如下:1个A必须关联到1个或多个B,一个B可以关联0个或1个A 关联的约束如图所示,Product和Service通过一个圆连接到Order Line。如果是实心圆则表示Product和Service是exclusive or;如果是空心圆则表示Product和Service是inclusive or(相容的,conjunctive),表示可以是其中之一或者多个 在上面IE模型图中,Order Line右侧是Finkelstein的一个特殊符号,表示一个Purchase Order初始时有0或n个Order Line,但最终必须有1或n个Order Line Martin以动词命名关联关系,只命名一个方向(遵循从左到右、从上往下的方式),而Finkelstein不对关联关系命名

Sub-type:图中Party子类的表示方法由Martin采用,Finkelstein则对每个子类使用单独的实体,使用ISA关联关系(关联关系名称为ISA,也有采用类似UML继承的三角形符合,在关联线上使用一个三角形的)表示其为子类

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 国内外可用的知识图谱资源

    一、前言 这是系列博文《知识图谱实战开发案例剖析》第5部分:知识图谱的获取,第2节:国内外可用的知识图谱资源。该系列内容同时已经录制成视频课程,感兴...

    数据饕餮
  • 内存数据库应用之NBA篮球图文直播室存储设计

      内存数据库适用于实时性访问要求很高的业务应用系统,尤其是实时数据直播报类系统,如篮球比赛图文直播室,足球比赛图文直播室等各类实时播放类的体育赛事。本文以NB...

    数据饕餮
  • 通用网络信息采集器(爬虫)设计方案

      Heritrix3.X与1.X版本变化比较大,基于此带来的Extractor定向扩展方法也受到影响,自定义扩展方面因为接口的变化受阻,从而萌生了通用网络信息...

    数据饕餮
  • TensorFlow实战:验证码识别

    项目地址:https://github.com/kerlomz/captcha_trainer

    Coriander
  • 实战:CNN+BLSTM+CTC的验证码识别从训练到部署 | 技术头条

    本项目适用于Python3.6,GPU>=NVIDIA GTX1050Ti,原master分支已经正式切换为CNN+LSTM+CTC的版本了,是时候写一篇新的文...

    AI科技大本营
  • 利用 Python、SciKit 和文本分类来构建客户行为描述模型

    了解如何根据已购买产品中描述的文本属性来构建客户行为描述模型。SciKit 是一个强大的基于 Python 的机器学习包,可用于模型构造和评估,您可以利用它...

    机器学习AI算法工程
  • Magic Leap新动向:致力于AI计算房间空间

    VRPinea
  • 在ubuntu下 搭建区块链 (Hyperledger Fabric) 可在腾讯云实验室测试

    作为目前Hash chain 的CTO,接到很多开源社区的朋友请教,大家对于区块链抱有很大程度上的热诚。但是由于区块链开发技术门槛较高,广谱技术开发普及度不高...

    林滨
  • 基础 Word2vec的原理介绍

    一,词向量的概念 将 word映射到一个新的空间中,并以多维的连续实数向量进行表示叫做“Word Represention” 或 “Word Embedding...

    企鹅号小编
  • powerdesigner的逆向工程

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    逝兮诚

扫码关注云+社区

领取腾讯云代金券