在此描述了用于生成和操纵关系数据库的可视图的技术。数据表的列表被从数据库中检索并且根据每个数据表的关系的数目被排序。数据库图被生成,其包含与列表中的每个数据表相对应的小块,其中与有关系的数据表相对应的小块沿着小块的至少一个边缘或角在可能的地方相邻。每个小块的显示属性可以被调整为反映相应数据表的性质。然后,数据库图在用户界面中被显示给用户,并且控件被提供,所述控件允许用户在用户界面中导航和缩放数据库图,以便揭示包含在与所显示的小块相对应的数据表中的数据。
【技术实现步骤摘要】
【国外来华专利技术】直量关系数据库常常用于实现用于业务应用的数据存储机制,其中数据映射到现实世 界项,比如财务记录、医疗记录、个人信息、制造和物流数据等等。对于新手用户,关系数据 库可能是难以可视化和理解的。探索和查询关系数据的传统形式着眼于各个表的视图。随 着关系数据库变得越来越归一化并且同时表的数目增加并且每个表中的人类可读列的数 目减少,可能变得越来越难以通过孤立地查看任何表来理解数据库。传统的数据库可视化工具可以允许用户创建图表,比如实体关系(“ER”)图表,其 一并示出关系数据库中的所有表、以及这些表的关系如何。表被绘制为包含方案(schema) 的框,并且表之间的关系被描述为连接框的线。线上的标记或它们的端点可以指示被连接 的表所共有的关系的种类。然而,即使对于中等大小的关系数据库而言,这些图表都可能变 得太复杂而难以理解。本专利技术所做出的公开正是对于这些和其它考虑而提出的。
技术实现思路
在此描述了用于生成和操纵关系数据库的可视图的技术。利用在此所述的技术, 可以实现用于数据库可视化的新颖的隐语,其可视地将关系数据库中的表描绘成数据库 图。该数据库图可以被生成为使得数据库中的彼此具有关系的表表现为在数据库图中尽可 能地彼此接近。通过这种方式,紧密相连或关系紧密的表的组可以一起被显示在区中。这 可以提供对传统ER图的改进,其中传统ER图通常迫使用户将表手动定位在表面上或者基 于字母数字顺序或其他某个简单度量而具有缺省定位。另外,尽管表最初被可视化为包含表的名称和/或其他文本标签的小块,但是可 以向用户提供便利以探索、搜索和缩放数据库图以探索数据库中的表的内容。通过这种方 式,提供给用户的第一视图提供对象的高级概况以及它们相关的方式,同时允许用户按照 需要揭示底层数据。这可以提供对传统ER图表的另一改进,其中传统ER图常常示出过多 的细节以至于难以给出大图片视图。根据实施例,数据表的列表被从数据库中检索并且根据每个数据表的关系的数目 被排序。数据库图被生成,其包含与列表中的每个数据表相对应的小块,其中与有关系的数 据表相对应的小块沿着小块的至少一个边缘或角在可能的地方相邻。每个小块的显示属性 可以被调整为反映相应数据表的性质。然后,数据库图在用户界面中被显示给用户,并且控 件被提供,所述控件允许用户在用户界面中导航和缩放数据库图,以便揭示包含在数据表 中的与所显示的小块相对应的数据。应当理解,上述主题可被实现为计算机控制的装置、计算机进程、计算系统或诸如 计算机可读介质等制品。通过阅读下面的详细描述并审阅相关联的附图,这些及各种其他 特征将变得显而易见。提供本
技术实现思路
是为了以简化的形式介绍将在以下详细描述中进一步描述的选 择的概念。本
技术实现思路
并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本
技术实现思路
用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在 本公开的任一部分中所提及的任何或所有缺点的实现。附图简沭图1是示出由本文呈现的实施例所提供的说明性操作环境和若干软件组件的多 方面的框图;图2A — 2C是根据在此所述的实施例的屏幕图,其示出了用于显示和导航关系数 据库的数据库图的说明性用户界面;图3是示出根据本文描述的各实施例的用于使用“空间划分”生成关系数据库的 数据库图的一个方法的流程图;图4是根据在此所述的实施例的ER图,其一并示出了示例性关系数据库中的多个 表、以及表之间的关系。图5A和5B是根据在此所述的实施例的框图,其示出了关于使用空间划分布局生 成关系数据库的数据库图的附加细节。图6是示出根据在此描述的各实施例的用于使用“边缘粘接”布局生成关系数据 库的数据库图的另一方法的流程图;图7A和7B是根据在此所述的实施例的框图,其示出了关于使用边缘粘接布局生 成关系数据库的数据库图的附加细节。图8是示出能够实现本文呈现的实施例的多方面的计算系统的说明性计算机硬 件和软件体系结构的框图。详细描沭下面的详细描述所针对的是用于生成和操纵关系数据库的可视图的技术。尽管在 结合计算机系统上的操作系统和应用程序的执行而执行的程序模块的一般上下文中提出 了本文描述的主题,但是本领域技术人员将认识到,其他实现可以结合其他类型的程序模 块来执行。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、 组件、数据结构和其他类型的结构。此外,本领域技术人员将明白,可以利用其他计算机系 统配置来实施本文描述的主题,这些计算机系统配置包括手持式设备、多处理器系统、基于 微处理器的或可编程消费电子产品、小型计算机、大型计算机等等。在以下详细描述中,参考了构成其一部分并作为说明示出各具体实施例或示例的 附图。在附图中,在全部若干附图中相似的附图标记表示相似的元素。图1示出了根据此处提供的各实施例的包括用于生成和操纵关系数据库的可视 图的若干软件组件的说明性操作环境100。环境100包括计算机系统102。计算机系统102 可表示用户计算设备,诸如个人计算机(“PC”)、桌面工作站、膝上型计算机、笔记本、移动设 备、个人数字助理(“PDA”)等等。可替代地,计算机系统102可以表示可操作地连接到下列 各项的用户计算设备:一个或多个应用服务器、Web服务器、数据库服务器、网络设备、专用 硬件设备、和/或现有技术中已知的其他服务器计算机或用户计算设备。计算机系统102 由用户104通过显示设备106以及诸如图1所示的键盘和/或鼠标之类的一个或多个输入 设备108来访问。根据实施例,数据库可视化模块110在计算机系统102上执行,其从关系数据库 中生成可视数据库图,向用户104提供服务以对所述数据库图进行导航。数据库可视化模块110可以在计算机系统102的用户计算设备上本地地执行,或者可以在由用户计算设备 上所执行的客户端应用访问的诸如Web服务器之类的服务器计算机上执行。数据库可视化 模块110可以被实现为硬件、软件或者二者的组合。数据库可视化模块110可以是诸如来 自华盛顿州雷蒙德市的微软公司的MICROSOFT? ACCESS?数据库软件之类的关系数据库管理系统(“RDBMS”)的插件或组件,并且可以包括多个应用程序模块和计算机系统 102上的其他组件。数据库可视化模块110访问数据库112以便生成数据库图。数据库112可以是关 系数据库或者本领域已知的其他数据存储机制,并且包含多个用于存储数据的数据表114。 数据库112也可以包含定义数据库的结构或“方案”的元数据116,比如数据表114之间的 关系。根据一个实施例,数据库可视化模块110利用元数据116来生成表示数据库112中 的数据表114的数据库图,并且在显示设备106上向用户104显示所述数据库图,这将在此 处予以更详细描述。图2A — 2C示出了由数据库可视化模块110显示的说明性用户界面200的示例。 用户界面200包括里面显示数据库图204的窗口 202。根据实施例,如图2A所示,数据库 图204包括多个小块206A - 206N (在此统称为小块206)。每个小块206都对应于数据库 112中的单个对象,比如数据表114。小块206A - 206N是根据相应数据表114之间的关系 被布置在数据库图204中本文档来自技高网...
【技术保护点】
一种用于生成描绘数据库中的多个数据表的数据库图的计算机实现的方法,该方法包括在计算机系统中执行指令以执行以下操作:从所述数据库中检索所个多个数据表的列表;确定第一小块在所述数据库图中的相对大小和位置,所述第一小块对应于所述多个数据表中的第一数据表,其中第一小块包括多边形并且第一小块的位置被确定为使得第一小块的至少一个边缘或角与所述数据库图中的第二小块相邻,所述第一小块对应于所述多个数据表中的与第一数据表相关的另一数据表;以及在用户界面中显示所述数据库图,其中所述用户界面包括一个或多个控件,所述控件允许用户导航和缩放所述数据库图以便揭示包含在与第一小块相对应的第一数据表中的数据。
【技术特征摘要】
【国外来华专利技术】2011.06.02 US 13/152,2511.一种用于生成描绘数据库中的多个数据表的数据库图的计算机实现的方法,该方法包括在计算机系统中执行指令以执行以下操作:从所述数据库中检索所个多个数据表的列表;确定第一小块在所述数据库图中的相对大小和位置,所述第一小块对应于所述多个数据表中的第一数据表,其中第一小块包括多边形并且第一小块的位置被确定为使得第一小块的至少一个边缘或角与所述数据库图中的第二小块相邻,所述第一小块对应于所述多个数据表中的与第一数据表相关的另一数据表;以及在用户界面中显示所述数据库图,其中所述用户界面包括一个或多个控件,所述控件允许用户导航和缩放所述数据库图以便揭示包含在与第一小块相对应的第一数据表中的数据。2.如权利要求1所述的计算机实现的方法,其特征在于,第一小块的相对宽度对应于第一数据表与所述数据库中的其他数据表之间的关系的数目,并且其中第一小块的相对高度对应于包含在第一数据表中的记录的数目。3.如权利要求1所述的计算机实现的方法,其特征在于,所述多边形包括正方形和竖直矩形之一。4.如权利要求1所述的计算机实现的方法,其特征在于,与具有最高数目的关系的数据表相对应的小块被定位为接近所述数据库图的中心。5.一种用计算机可执行指令编码的计算机可读存储介质,所述指令在由计算机执行时使所述计算机:从数据库中检索数据表的列表;根据数据表的列表中的每个数据表的关系的数目对所述列表进行排序;将第一小块放置在数据库图的当前布局中,所述第一小块对应于数据表的列表中的具有最大数目的关系的第一数据表;生成所述数据库图的包括新小块的可能的布局的列表,所述新小块对应于数据表的列表中的下一数据表,其中可能的布局的列表中的每个可能的布局都包括所述当前布局, 其中一个现有小块被分割以创建用于放置所述新小块的位置;为可能的布局的列表中的每个可能的布局计算能量;从可能的布局的列表中选择具有最大能量的可能的布局以作为所述数据库图的当前布局;确定在数据表的列表中是否存在更多数据表以用于在所述数据库图中放置相应小块;以及在确定在数据表的列表中存在更多数据表以用于在所述数据库图中放置相应小块以后...
【专利技术属性】
技术研发人员:J·麦克弗森,R·W·小刘易斯,
申请(专利权)人:微软公司,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。