利用 yEd 软件做元数据管理

yEd Diagram editor 是我常用的 flow chart 制图工具, 另外我也用它画 ER 和 use case 图. 总结一下我喜欢 yEd 的原因:
1. 出色的对齐功能
2. 可随意拖动Node, 永远不用担心相连的 Edge 会自动断开连接
3. 每个 Node 都自带一个Label, 加说明文字非常方便
4. 每个 Edge 都自带一个Label, 加说明文字非常方便

今天总结的是一个非常有价值的使用场景, 在数据仓库和大数据平台中, 数据表的关系很复杂,随着平台的不断建设, 到最后想要清楚知道表和表有何关系都非常困难了. 在商业社会中, 有困难是个好事情, 能解决困难就是一个商机, 所以市场上出现了不少元数据管理工具, 卖的都挺贵的, 环境搭建也复杂.

下面介绍一个免费的方案:
使用 yEd 做元数据管理. 元数据管理在理论层面上将, 就是要能分析出节点与节点的关系, 找到某个节点的上游节点/下游节点. yEd 就有这样的功能:
1. Successors 视图, 以层次关系展现选定节点的下游节点
2. Predecessors 视图, 以层次关系展现选定节点的上游节点
3. Neighborhood 视图,, 展现选定节点的相邻节点
4. Find 搜索功能, 比如我们要找某个table, 无疑搜索是最快的方式.

需要说明的是, 这个方案基本只能表级别依赖分析, 不能细化到column粒度.

元数据管理的步骤和技巧:
1. yEd 软件中打开 Successors/Predecessors/Neighborhood 视图
2. 增加节点, 推荐选择 Entity with attribute 类型, 但在 attributes 区并不填写数据表的columns, 而是写一个非常简要的补充说明,  将columns加到节点的Description属性中. 这样做的好处是, 每个表的节点占据的区域很小, 画布显示区能显示更多的表, 更重要的是, 小的Entity节点比较适合Predecessors/Successors视图区展现, 因为 Predecessors/Successors视图不能缩放, 而且每个节点太大的话, 不利用展现复杂的依赖关系. 如果将来 yEd 软件能将节点显示图标化, 就不需要这种曲线救国的方法了.
3. 增加Edge, 注意箭头方向, 箭头方向按照上下游理解较容易, 但也可以做成双向箭头, yEd 都能正确分析出.
4. 当然 Node 也可以代表报表, 可以为数据表和报表设置不同风格的 Node 的外观来区分.
5. 巧用分组功能, 如果数据表或报表太多, 需要分组甚至需要多个子画布. yEd 有两个分组功能, 分别是: (a)使用 BPMN下的Group组件, (b)Grouping菜单的Group命令.  这两个分组的效果是不同,  BPMN下的Group组件会新建一个子画布; Grouping菜单的Group命令生成的Group可以折叠成图标,还可以加title. 所以我的作法是, 将分组内容先套一个 BPMN下的Group组件, 然后再套一个Grouping菜单的Group, 这样即可将分组内容在主画布上折叠, 也可以分组内容放置到一个新的子画布上.

ER图画布布局小技巧:
ER 图有时候关系很复杂, 要想布局好还不太容易, 这时候就可以借助 yEd 自动布局功能, 一般选择试试下面两种模式即能得到很好的布局效果:
1. Layout菜单/Hierarchical,
2. Layout菜单/Orthogonal/UML Style即可

时间: 2024-08-02 15:12:25

利用 yEd 软件做元数据管理的相关文章

利用Spring AOP做系统日志管理(annotaction注解版)

在进入主题之前,你必须对Spring 的AOP有一定的认识了解,本文还引用到一定的反射机制,请一并学之哦,谢谢大家支持! 首先,在构建好ssh框架后,我们先声明用来记录日志的实体类Log,代码如下: package com.smartsoft.model; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.p

一年多利用业余时间做的协作软件截图

最近完成的协作工具,包括Android App,Window通知助手,响应式UI,协作Web Application(权限系统可控制到页面元素.路由.Web Api:消息通知:包含工作流设计器的工作流引擎:个人及共享日历:支持多语言)等. 一年多利用业余时间做的协作软件截图

利用开源软件搭建JAVA工程CI&CD自动化工具链

JAVA传统项目交付流程的问题 开发和运维间环境有明显差异 代码缺乏统一质量度量 客户要求上线时间紧,人工测试慢,导致测试不充分,时常做线上BUG修复 打造工具链 ● 源码管理Gitlab● 持续集成Jenkins● 代码扫描SonarQube● 接口测试PostMan+NewMan● 制品管理ArtifactoryOSS版本(仅支持Maven)● 自动部署Ansible GitLab安装 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] name=

亚马逊AWS林家伟:怎么利用云来做颠覆性的事

<--------- LEFT--<) 导语:6月7日,创新中国成都赛区在成都世纪城娇子国际会议中心举行.亚马逊AWS跨国企业及市场营销拓展部主管林家伟介绍怎么利用云来做颠覆性的事. 亚马逊AWS跨国企业及市场营销拓展部主管 林家伟 6月7日,以发现国内锐公司.扶持有梦想的创业者,并为其提供展示平台的"创新中国"成都赛区在成都世纪城娇子国际会议中心举行.大赛由创业邦联合创业场.天府软件园共同举办.亚马逊AWS跨国企业及市场营销拓展部主管林家伟介绍怎么利用云来做颠覆性的事情.

利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(下篇)

续篇—— 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(上篇) 上篇文章写了如何构建一个支持IKEv2的VPN,本篇记录的是如何利用freeradius,以及结合Daloradius进行VPN的 Web 管理.先让freeradius做个自述吧. 一.Radius 介绍 远端用户拨入验证服务(RADIUS, Remote Authentication Dial In User Service)是一个AAA协议,意思就是同时

财务软件做账的基本流程

企业使用财务软件有助于会计核算的规范化,有助于带动财务管理乃至企业管理的规范化,从而提升企业的管理水平,提高企业的效益.提高会计核算的工作效率,降低会计人员在账务处理方面的工作强度,改变"重核算轻管理"的局面等.那么在会计电算化普及的今天,会计软件的熟练运用是相当的重要,下面来看下在智点财务软件中基本的做账流程是怎样的呢? 财务软件做账的基本流程表现为:系统初始化.财务数据的输入.财务数据的处理.财务数据的输出.财务数据的安全. 一.系统初始化 系统初始化,就是系统开始使用前的准备工作

云计算:利用叶子云桌面虚拟化管理平台搭建企业的桌面云,叶子云安装(二)

云计算:利用叶子云桌面虚拟化管理平台搭建企业的桌面云,叶子云安装(二) --企业轻松搭建kvm桌面云系列教程 一,安装准备 1.先下载叶子云的安装光盘文件,光盘文件是iso格式的. 2.如果你用虚拟机安装,则不用刻录光盘,如果你是用物理机安装,则应该刻录成光盘. 3.光盘文件可到下方的qq群下载. 二,安装演示 安装演示分为2种情况,1种是在虚拟机内进行安装演示,另一种是在物理服务器上进行演示. A.虚拟机安装叶子云虚拟化 1.创建一个虚拟机(会的建议跳过) 我们这里以 VMware演示如何安装

成熟的软件资产管理——license管理

成熟的IT资产管理软件,不仅仅包括对硬件设备的管理,对网络.主机.PC和低值易耗品的管理,还包括对无形资产的管理,特别是软件管理和软件License管理. 软件管理的范畴 软件管理是指一个组织内对软件的购买.部署.维护.利用.分发等管理行为.也就是ITIL中所说的控制.包含企业的IT无形资产部分.软件的管理,对企业合规性要求,节约成本,提升软件的利用率,都有巨大的作用. 软件管理既包括对软件部署的管理,也包括对软件许可管理,还包括对软件内禁止使用软件管理. 软件许可管理(软件License管理)

常见EDA软件的license管理

大型工程软件如Ansys.Fluent.Unigraph.ProE等安装需要经过注册程序Flexlm才可以使用,而Flexlm中涉及到很多知识.技巧,也存在许多问题.本篇文章就是针对上述软件安装中的常见问题作一些探讨与解决.莱曼特的LMT LicManager可对EDA软件的许可证进行集中监控管理.Lanmantech公司研发的licManager产品充分研究识别Flexlm及其他主流授权机制并利用LMT核心计算模式在不影响软件许可证本身授权机制的基础上对许可证进行闲置识别.资源调度从而提高许可