数据库(牛津)。2011; 2011年:酒吧038。
BioMart:大型协作项目的数据联合框架
,1 ,2 ,1 ,1 ,1 ,1 ,1 ,1和1,*
张俊军
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
赛义德·海德尔
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
约阿希姆·巴兰
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室CB3 0FD
安东尼·克罗斯
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
乔纳森·古伯曼
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
徐杰客(Jack Hsu)
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
梁勇
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
龙尧
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室CB3 0FD
阿雷克·卡斯普日克
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
1加拿大安大略省M5G 0A3多伦多信息与生物计算安大略癌症研究所2英国剑桥大学计算机实验室
收到日期:2011年5月31日;2011年7月26日修订;2011年7月27日接受。
摘要
BioMart是一个免费可用的开放源码联邦数据库系统,提供对不同地理位置分布的数据源的统一访问。它的设计与数据无关,与平台无关,这样现有的数据库可以很容易地并入BioMart框架。BioMart允许在不同服务器上托管的数据库无缝呈现给用户,促进不同研究小组之间的合作项目。BioMart包含多个级别的查询优化,以有效管理大型数据集,并提供多种图形用户界面和应用程序编程界面选择,以确保可以以用户最方便的方式执行查询。该软件现已被大量不同的生物数据库所采用,这些数据库涵盖了广泛的数据类型,为生物信息学家和生物学家提供了丰富的注释来源。
数据库URL: http://www.biorart.org网站
介绍
生物数据很复杂,需要专门的专业知识来收集、分析和解释。因此,不同的生物数据源分布在世界各地,集中在这些专门知识中心周围。每个中心都有自己的数据存储和呈现解决方案。这些解决方案的创建导致了研究人员的重复努力,也让必须学习如何查询多个界面的用户感到沮丧。数据生产者和消费者都将从标准化解决方案中受益。
生物研究越来越多地涉及多个群体之间的合作,而这些群体往往地理位置遥远。例如,已经建立了大规模的合作,以全面研究癌症基因组(1,2). 这可能导致单个项目的数据存储在不同的位置。为了促进这种合作,需要一种技术,使多个站点的数据相互关联,并作为统一的来源呈现,从而允许研究人员进行综合分析。
下一代测序(NGS)和其他高通量技术以前所未有的速度生成大量数据。经过初步分析后,通过与公共注释的链接,这些类型的数据的解释大大方便了,公共注释通常不存储在与NGS数据相同的服务器上。由于这些数据集非常大,因此在服务器之间交换数据是不切实际的。需要一个可伸缩和分布式的解决方案来促进这种类型的注释。
这些问题的许多传统解决方案都基于集中式模型。一方面,原始数据存储库,如欧洲基因组-现象档案(三)和序列读取存档(4),提供低级数据。为了正确分析和解释数据,用户需要大量的资源和专业知识。另一方面,专门的数据存储库,如Ensembl(5)和UCSC(6),提供处理过的数据。这些都是东道国机构投入大量资源和专业知识的成果。由于这一大笔投资,它们不太可能随着数据的增长而扩展,而且很难适应新的数据类型。这两种方法都有局限性。
为了解决这些问题,我们创建了BioMart,这是一个开源数据联合系统。BioMart最初是为Ensembl数据库编写的(7)已成为管理多种类型生物数据库的流行选择。BioMart数据管理系统基于联邦模型,在该模型下,每个数据源都由其宿主机构独立发布和更新。由于每个数据提供程序都在本地存储和处理自己的数据,因此系统的可扩展性得到了改进。BioMart包含一个集成层,可提供所有数据源的统一视图,这样用户就不会意识到数据存储在多个服务器上。BioMart有一个灵活的数据模型,因此可以与多种生物数据类型一起使用,并且内置的查询优化使其适合用于非常大的数据集。由于这些功能,协作组的成员能够独立维护自己的数据源,同时为其项目生成的所有数据提供统一的访问点。
概述
BioMart是一个数据库联合系统,它可以将地理上分布的数据源表示为一个集成的数据库。无论每个数据源的底层结构如何,都可以将其作为BioMart数据集呈现给用户,该数据集是过滤器和属性的集合。属性是用户可以从系统中检索的信息,过滤器限制查询以缩小结果范围。通过这种方式,用户可以以简单统一的方式与每个数据源交互,而无需学习底层数据模型。
BioMart服务器可以直接访问自己的本地数据库,并可以与其他BioMart服务器通信,以便从远程数据库中检索数据。提供对数据源集合访问的BioMart服务器称为BioMart'门户'。BioMart门户可以配置为类似“主/从”的架构,其中单个服务器仅显示自己的数据源,而单个“主”服务器充当门户,提供对所有源的统一视图(A) ●●●●。或者,可以在类似“对等”的体系结构中配置服务器,其中每个单独的服务器都链接到组中的所有其他服务器,这样,所有服务器都充当门户,提供对所有数据的访问(B) ●●●●。
BioMart门户架构.BioMart门户可以部署在两种不同类型的服务器架构中的任何一种。在“主/从”式架构中(一个)每个“从”服务器仅提供对其自身本地数据的访问,而“主”服务器充当门户,对驻留在所有“从”服务上的数据提供统一视图。在类似“对等”的体系结构中(B类)每个服务器不仅提供对其自身数据源的数据访问,还提供来自所有其他服务器的数据访问。这样,每个服务器都充当了一个数据门户,提供对所有数据的访问。
BioMart门户可以通过几个基于web的图形用户界面(GUI)、编程界面和第三方工具进行查询。无论使用何种查询方法,当用户启动查询时,都会将其发送到BioMart查询引擎。查询引擎将查询分解为各个数据源。结果被返回到查询引擎,查询引擎将数据重新编译为单个结果集,以返回给用户,或使用BioMart的可扩展插件架构进行进一步处理。
BioMart包括许多查询优化,以提高查询速度。这些包括优化的关系模式,支持数据集的物理分区(在单个服务器或多个服务器上),以及并行查询处理。为了在连接多个数据源时提高性能,BioMart提供了预计算索引的可选使用。
BioMart包含安全功能,允许管理员根据用户权限控制对某些数据集的访问。还可以选择使用安全HTTPS协议在服务器之间以及与客户端之间执行数据传输。
设计和实施
BioMart软件是一个带有集成web前端的Java应用程序,只需单击几下鼠标即可创建、配置和部署BioMart服务器实例。BioMart系统分为三个层次:数据库层、应用程序层和客户端层(). 数据库层处理如何在关系数据库中组织、存储和管理数据。客户端层处理如何向用户显示查询界面和查询结果。连接这两者的是应用层,它存储和检索元数据并执行查询,将其发送到适当的目的地,接收响应数据并最终组织结果,然后再将其发送回客户端层。
数据库
架构
为了将数据源包含在BioMart系统中,需要将其显示为BioMart数据集。每个数据集都以一种称为“反向星”的格式组织在查询优化的关系型BioMart模式中(7). 此模式已针对快速检索大量描述性数据进行了优化。该设计源自仓库星型模式(8),并且它对描述性数据的适应要求“颠倒”经典星型模式的某些关键特征。因此,中心(“主”)表与附属(“维度”)表中的关系是一对多的,或者在某些情况下是多对多的而不是多对一的;中心表的主键是维度表中的外键,而主表通常小于维度表。主表列通常是查询约束的来源,而不是经典星型模式中的维度表。通过使用较小的表开始查询,许多结果在查询过程的早期被过滤掉,从而简化了整个搜索路径。为了增加灵活性,允许使用多个主表,主表和子表具有一对多关系。每个主表都可以有自己的维度表(). 为了提供进一步的查询优化,可以在相同的数据库服务器或不同的数据库服务器上将数据集划分为不同的物理模式。
反向星型模式。这个数据集有一个主表和一个子主表,每个子表都有几个维度表。主表和子主表具有一对多关系,而主表和维度表之间的关系是一对多。
模式转换算法
BioMart可以自动将任何以第三范式(3NF)组织的数据库转换为反向星型模式。该算法的工作原理如下:从用户定义的“候选主表”开始,查找候选主表与所有其他表之间1:1或M:1关系的最长路径。沿着这些路径行走,它执行联接,然后将这些表合并在一起以创建主表。可以提供多个候选表作为输入,在这种情况下,算法会从每个选定的候选表中创建主表。一旦主表完成,如果它们之间存在1:M关系,它们将成为主表和子主表。如果它们之间没有1:M关系,则将它们拆分为单独的数据集。任何与新创建的主表或子主表具有1:M或多对多(M:N)关系的表都是构建独立维度表的起点。创建维度表遵循与构建主表相同的算法。显示了模式转换的示例。新创建的数据集及其反向星型模式是源关系数据库的非规范化版本。这种结构消除了连接大量表的必要性,从而提供了更好的查询性能。
转换算法。显示3NF模式如何转换为反向星形模式的示意图。(一个)显示了包含10个表的3NF模式,表之间的关系由连接器指示。为了构建主表,算法从候选表开始,沿着相关表的所有可能路径向外走,直到遇到一对多关系。这种一对多的关系称为断点。从表b开始,有三个断点:i–iii;从表g开始,断点是:i、ii和iv。在到达断点之前遍历的表将通过SQL联接合并,以创建主表。当表b被选为候选主表时,表b和表c被合并;当选择表g作为候选表时,合并表b、c、g和h以构建主表。构建维度表时应用了相同的遍历和合并规则。(B类)显示选择表b作为候选主表时产生的反向星型模式。转换后的模式包括一个主表(合并的原始表b和c)和三个维度表:原始表a成为第一个维度表,表d、e和f合并形成第二个维度表;表g和h合并形成第三个维度表格。(C类)显示当表b和表g都被选为候选主表时产生的反向星型模式。除了与B中相同的一个主表和两个维度表外,还有一个新的子主表,它是通过合并表B、c、g和h构建的。原始表i成为子主表的维度表。注意,子主表和主表具有多对一关系,并且子主表包含主表的所有内容。
在上述模式转换中,可以只生成反向星型模式的视图,而不是物理创建表。基于反向星型模式视图的数据集称为非物化数据集。设置非物化数据集对于构建快速原型或小型数据库非常有用。
SQL编译
BioMart能够查询物化和非物化数据集。SQL将根据用户输入自动编译,并考虑数据集是否物化。对于物化数据集,查询编译通过在运行时根据查询中涉及的表列选择相关的主(或子)表来定义通过模式的SQL路径。此功能可以调整输出的粒度并避免结果集中的冗余。对于非物化数据集,SQL是根据源3NF模式编译的。上述模式转换算法提供了有关用于创建物化表的连接系列的必要信息。此信息用于针对源模式3NF表动态执行一系列联接,为了提高效率,省略了任何未使用的数据源表。为了确保跨平台的可移植性,只使用标准ANSI SQL语句进行查询。在撰写本文时,BioMart支持五大RDBMS平台:MySQL、PostgreSQL、Oracle、DB2和MS SQL server。
查询引擎。
查询引擎负责查询处理,将查询分发到底层数据源以供执行,并收集查询结果。查询处理是一个多步骤的过程(). 第一步是验证。此步骤确保查询中的所有元素都存在,并强制执行数据提供程序设置的任何限制。如果查询包含多个数据集,则可以确保这些数据集可以链接在一起。通过验证后,如果可能,将查询拆分为较小的子查询。子查询并行运行,有助于实现可扩展且健壮的查询。
查询引擎。传入的查询首先传递给QueryValidator,以确保请求的资源存在。验证后,如果原始查询涉及多个数据集的属性或筛选器,则会将其拆分为较小的子查询。然后,QueryPlanner决定执行子查询的最佳顺序;这包括检查是否存在相关的链接索引(如果存在,请进行查询),并确定应用了过滤器的子查询。确定最佳执行顺序后,将子查询传递给QueryRunner执行。当查询涉及分区的数据集时,QueryRunner将为每个分区创建一个QueryRunnerThread,以通过并发执行独立查询来最大化查询性能。查询结果在从任何QueryRunnerThreads生成时流式传输到OutputStream。
根据门户配置,跨多个数据集的查询可以作为并集或交集执行。在交集中,子查询的执行和联接顺序会对性能产生重大影响,因此软件会尝试预测最有效的执行路径。交叉点的进一步优化是可选使用数据链接索引,从而根据预先计算的索引文件检查条目。不会返回结果的条目将在流程的早期被丢弃,从而使下游子查询更小、更高效。
此时,子查询用于编译将发送到数据源的查询,数据源可以是数据库服务器或其他BioMart服务器。对于数据库源,编译过程将确定最有效的表联接系列,以检索请求的数据并创建SQL语句。如果数据源是通过另一个BioMart服务器访问的,那么查询引擎将生成XML格式的子查询,并通过web服务调用将其发送到另一个BioMart server进行处理和查询。
子查询按计划步骤确定的顺序执行。当查询分区数据集时,会并发执行独立查询。系统分批从源中检索结果,其大小可配置为最佳利用不同硬件配置的内存。检索结果时会从数据源流式传输结果,以提高返回结果的速度并控制内存使用。为了进一步优化BioMart的内存使用,结果被同步写入结果缓冲区,以便BioMart服务器使用更少的临时存储。来自各种来源的结果被编译并连接到BioMart服务器上的内存中,以实现快速性能。在编译数据时,会同步输出数据,以便客户端尽快开始接收结果。
插件
BioMart系统可通过插件架构进行扩展。这种开放式体系结构允许第三方开发的软件模块在不同层与系统交互。插件可以是实现新web界面的浏览器客户端模块,也可以是进一步处理查询结果以生成新可视化效果(如条形图)的服务器端模块,或者它可以由客户端和服务器端组件组成,这些组件共同执行复杂的数据操作,如基因序列检索工具。
插件必须符合预定义的接口,并且一旦编写,只需将其放在插件目录中即可安装。BioMart配置工具允许管理员访问所有可用插件,并允许在BioMart-Portal中添加和配置插件。
BioMart的插件架构允许外部开发人员为项目做出贡献,而无需修改BioMart的核心代码。这些贡献可以与整个BioMart社区共享。
安全
BioMart支持多种安全功能来保护敏感数据。BioMart门户可以配置为通过HTTPS协议与其客户端(用户和其他服务器)进行通信,确保受保护的数据不会被截获。
BioMart支持通过OpenID协议进行最终用户身份验证(9). 通过将用户分配给用户组来管理访问控制。可以为每个用户组配置数据集可见性,从而允许根据需要限制访问。默认情况下,有一个“匿名”用户组,用于确定哪些数据集可供未登录的用户使用(即哪些数据是公开可用的)。为了确保在无法使用OpenID的情况下进行正确的身份验证,例如在通过API进行查询时,OAuth协议(10)而是用于对客户端进行身份验证。
BioMart服务器之间的安全通信是BioMart数据联合的重要组成部分。OAuth协议用于确保BioMart服务器仅连接到预先选择的可信合作伙伴。为了实现这一点,BioMart门户管理员必须在一次性配置过程中与受信任的BioMart服务器合作伙伴交换安全令牌,从而消除BioMart-服务器与未知第三方建立连接的可能性。
配置和部署
BioMart提供MartConfigurator(),用于设置、配置和管理BioMart门户的工具。MartConfigurator管理所有元数据,包括有关数据源的结构、相互关联以及向最终用户显示的方式的信息。它还可以限制特权用户对某些数据的访问。配置是一个逐步的过程,如下所述。
MartConfigurator。(一个)主MartConfigurator窗口分为两个面板。左侧列出了数据源。数据门户访问点列在右侧,并按类型进行组织。(B类)模式编辑器窗口,显示数据集的反向星型模式。(C类)“链接管理”窗口,显示数据源之间的数据链接。(D类)访问点编辑器窗口,显示在容器中组织的属性和过滤器。
添加数据源
数据源可以是3NF关系格式的数据库、包含反向星型模式格式的BioMart数据集的数据库,也可以是通过另一个BioMart-Portal的web服务提供的现有BioMart数据源。添加3NF关系数据库时,MartConfigurator将帮助管理员使用数据库部分中描述的算法将原始模式转换为反向星型模式。管理员首先从源3NF模式中选择一个或多个表,这些表将构成要创建的数据集的主干,然后自动创建数据集。MartConfigurator还允许以某些方式修改源模式,例如添加和删除用于调整表之间关系的键。这些修改可能会改变执行转换的方式,但不会影响数据库级别的源模式。此时,新数据集是现有3NF模式上的非物化视图,可以通过屏蔽表或单个列进行进一步修改。管理员可以选择此时停止,并使用非物化数据集进一步配置系统。或者,他或她可以选择将其具体化以获得更好的查询性能。此过程将在包含物化数据的数据库中创建新的物理表。
配置接入点
数据访问点提供了与BioMart门户中的数据交互的图形或编程方式。对于给定的数据集,管理员选择要作为属性和/或筛选器向用户公开的表列。如果两个数据集可以通过公共键链接,则也可以从另一个数据集导入过滤器和属性。例如,在基因注释数据集的接入点中,只要两个数据集共享一个公共数据元素,例如Entrez基因ID,就可以从路径数据集导入路径过滤器。使用此导入的过滤器,用户可以检索用户特定路径中涉及的基因。
创建和组织属性和过滤器后,管理员可以选择使用一个或多个内置web或编程用户界面公开它们。创建访问点后,管理员可以向某些用户组授予数据访问权限。这允许控制哪些用户可以访问哪些数据集,甚至可以控制对数据集特定部分的访问。最后,管理员可以确定主页的布局,组织在最初加载web门户时如何向用户显示各种数据源和视图。
部署BioMart门户
可以使用“启动/停止服务器”按钮直接从MartConfigurator部署BioMart服务器,该按钮会立即在运行MartConfiguator的工作站上启动BioMart服务器的实例。一个浏览器窗口将打开并指向BioMart web应用程序,允许管理员确切地看到最终部署对用户的显示。此实例功能齐全,可以像其他任何BioMart实例一样进行查询。BioMart门户配置可以保存为XML文件,以备将来部署。在生产环境中,管理员可以使用命令行脚本来启动和停止BioMart服务器。从命令行启动服务器时,有几个高级选项可用,例如通过HTTPS启用安全访问,以及为整个服务器配置密码保护。
数据访问
BioMart为访问数据提供了各种不同的图形和编程接口。每个接口的基本概念都非常相似,包括选择数据集、过滤器和属性。在下一节中,我们将演示如何使用不同的BioMart接口发出相同的查询。
图形用户界面
BioMart提供了几种适用于各种情况的图形查询界面,涵盖了简单易用的查询和更高级、高度灵活的查询。无论GUI类型如何,交互都是相似的:用户首先选择要搜索的一个或多个数据集,然后根据需要选择过滤器来限制数据。接下来,根据界面的不同,用户可以选择查询返回的属性。然后,用户按下“Go”或“Results”按钮,结果立即返回。此时也可以选择下载结果。使用“MartForm”、“MartWizard”和“MartExplorer”GUI编译的相同查询的示例如所示分别为A–C。
BioMart网络GUI:“MartForm”、“MartWizard”和“MartExplorer”。(一个)“MartForm”自上而下提供了数据集、过滤器和属性的选择。过滤器和属性可以组织在容器和子容器中,相互排斥的过滤器和属性集可以分隔为单独的选项卡。MartForm在单个页面上显示所有选项,因此最适合于需要用户配置但过滤器和属性数量相对较少的查询。(B类)对于具有更多过滤器和属性的搜索,有“MartWizard”界面。在“MartWizard”界面中,在连续的步骤中选择数据集、过滤器和属性,每个步骤都显示在自己的页面上。查询在构建时汇总在右侧列中,用户可以在过滤器和属性页面之间移动以修改查询。在每个页面中,过滤器和属性可以在容器中显示,也可以在“MartForm”中显示。(C类)为了实现最大的灵活性和复杂的查询,我们提供了“MartExplorer”界面。与“MartWizard”中一样,在“MartExplorer”数据集中,过滤器和属性显示在单独的页面上。然而,在“MartExplorer”中,过滤器和属性不是组织到单个页面上的容器中,而是组织到屏幕左侧列中显示的层次化文件夹结构中。因此,“MartExplorer”最适合于具有大量过滤器和属性的查询,这些过滤器和属性组织在复杂的目录结构中。
应用程序编程接口
除了GUI之外,BioMart还为编程访问提供了一系列不同的应用程序编程接口(API)。其中包括REST和SOAP web服务API、Java API和用于语义查询的SPARQL端点。与图形界面一样,通过编程界面查询门户涉及选择数据集、过滤器和属性。这反映在各种API语法的相似性上,如下所示。
REST/SOAP
<Query client=“true”processor=“TSV”limit=“-1”header=“1”>
<数据集name=“hsapiens_gene_ensembl”>
<过滤器name=“biotype”value=“protein_coding”/>
<属性name=“ensembl_gene_id”/>
<属性name=“ensembl_transcript_id”/>
<属性name=“description”/>
<属性name=“band”/>
<属性name=“percentage_gc_content”/>
<属性name=“transcript_count”/>
</数据集>
</查询>
爪哇
查询。数据集ds = query.addDataset(“hsapiens_gene_ensembl”);
ds.addFilter(“生物型”,“蛋白质编码”);
ds.addAttribute(“ensembl_gene_id”);
ds.addAttribute(“ensembl_transcript_id”);
ds.addAttribute(“描述”);
ds.addAttribute(“波段”);
ds.addAttribute(“百分比_gc_content”);
ds.addAttribute(“transcript_count”);
SPARQL公司
选择?集合基因id?信号群transcript_id?描述?乐队?gc含量百分比?成绩单计数
来自数据集:hsapiens_gene_ensembl
何处{
?x属性:生物型“蛋白质编码”。
?x属性:ensembl_geneid?ensembl_gene_id。
?x属性:ensembl_transcript_id?信号群_传送_ id。
?x属性:描述?描述。
?x属性:波段?乐队。
?x属性:百分比gc内容?百分比gc含量。
?x属性:transcript_count?成绩单计数
}
还可以在查询中设置其他参数,以便根据用户输入返回结果。参数包括:limit(要返回的行)、header(是否包含列header)、processor(在返回给用户之前预定义的处理结果的方式,这通常是为了以不同的格式生成结果)等。
单击按钮时编写脚本
可以在GUI中构造查询,然后单击结果页面上的相应按钮将其转换为一种API格式(). 由于所有查询类型(包括GUI)都使用相同的属性、过滤器和数据集抽象,因此它们之间的相互转换很简单。
通过单击按钮进行编程访问。通过单击一个可用的API按钮,如REST/SOAP web服务、SPARQL或Java,在基于web的GUI中构建的查询将自动编译为所需的语法。
其他GUI类型
除了查询GUI之外,BioMart还预装了两种特殊的GUI类型。第一个是“MartReport”(). “MartReport”界面显示了通过单个标识符链接到数据条目的许多属性,因此可以在集成报告页面中显示大量相关数据。不同来源的数据可以通过BioMart数据联合机制集成到报告中。它旨在与BioMart将超链接与属性关联的功能相集成,这样管理员就可以允许用户通过点击其他搜索结果中的特定标识符来打开报告页面。
MartReport。”“MartReport”提供有关单个数据条目的详细信息,例如癌症样本、基因或点突变。MartReport允许在单个报告页面中显示来自多个数据源的数据。在本例中,从Ensembl、KEGG、Reactome、ICGC、COSMIC和胰腺表达数据库检索并整合NBN基因的数据。
第二种特殊的GUI类型是“MartAnalysis”,它允许通过BioMart插件框架以不同的方式处理和显示查询结果。核心BioMart分发中包含了一些插件,例如条形图和基因组序列检索工具。显示了最常见的受影响路径,使用“MartAnalysis”GUI显示为条形图。
MartAnalysis。”MartAnalysis向用户提供左侧列中的数据集选择和右侧列中的过滤器列表。属性由管理员预先确定,用户不能更改。因此,“MartAnalysis”界面最适合快速查询常用属性。在本例中,对查询结果进行处理,以生成最常见受影响路径的直方图表示。
对元数据的编程访问
为了允许用户和第三方工具探索可用的数据集、过滤器和属性,BioMart提供了通过REST/SOAP web服务和Java API检索元数据的方法。不同API的元数据检索语法类似,如以下示例所示:
要检索的元数据 | 美国石油学会 | 方法 |
---|
数据来源 | REST/SOAP | /市场服务/数据源 |
Java语言 | 获取数据源() |
数据集 | REST/SOAP | /市场服务/数据集?数据源=数据源名称 |
Java语言 | 获取数据集(数据源名称) |
过滤器 | REST/SOAP | /集市服务/过滤器?数据集=数据集名称 |
Java语言 | 获取筛选器(数据集名称) |
属性 | REST/SOAP | /市场服务/属性?数据集=数据集名称 |
Java语言 | 获取属性(数据集名称) |
对于SPARQL语义查询,元数据(包括过滤器和属性)通过本体表示为RDF/XML文档,可以从SPARQL-端点检索。例如,有关hsapiens_gene_ensembl数据集的本体信息可以从:/martsemantics/hsapiens _gene_rensembl/ontology中检索。可以通过OWL本体工具(如SWOOP)中的GUI打开和浏览本体文档(11),猫头鹰(12)和Protégé(13).
未来的方向
BioMart软件已成功应用于30多个包含多种数据类型的公共生物数据库,包括基因注释[Ensembl(14)、HGNC(15)],基因组变异(16)]、蛋白质序列和结构(17),百事可乐(18),骄傲(19)、UniProt(20)]分子相互作用和生物途径(21)],基因表达(22),欧盟快递(23),德国在线(24),SigReannot(25)]癌症基因组(26),胰腺表达数据库(27)、IntOGen(28)]和模型生物(29)、MGI(30),草履虫DB(31),蜗杆底座(32)]. 国际癌症基因组联盟(ICGC)利用最新版本的BioMart建立了一个数据门户(33)管理全球产生和分布的大量癌症基因组数据。新版本的BioMart Central Portal(34)还利用了新的BioMart软件,将30多个独立维护的公共数据库集成到一个访问点中。
BioMart系统正在不断改进,因此正在开发几个新功能。为了改善BioMart服务器之间的协调,我们正在创建BioMart-Central Registry。这将是BioMart数据提供商可以注册其数据模型和数据源的永久资源。中央注册中心将允许任何人浏览可用的BioMart服务器。独立数据源之间的链接将存储在注册表中,允许服务器部署人员轻松找到潜在注释的新源。此外,作为一种集中的永久性资源,中央登记处可以可靠地用于协调大型数据门户的创建:可以通过登记处跟踪和同步独立管理的数据源中的更改。
为了进一步提高BioMart的灵活性,我们添加了从非RDBMS数据源(如平面数据文件或XML数据文件)自动构建BioMart数据库的支持。BioMart将允许管理员为源数据创建数据模型,然后BioMart数据加载模块将使用用于转换关系数据源的相同算法将数据转换为BioMartschema。
BioMart持续发展的主要途径之一是强大的插件系统。我们计划通过添加插件来增强BioMart系统,允许在BioMartGUI中直接显示各种形式的数据。当然,第三方也可以开发插件,进一步扩展系统的功能。
基金
开放获取费用的资金来源:安大略癌症研究所和安大略研究与创新部。
利益冲突。未声明。
工具书类
2Hudson TJ、Anderson W、Artez A等。癌症基因组项目国际网络。自然。2010;464:993–998. [PMC免费文章][公共医学][谷歌学者] 4Leinone R、Sugawara H、Shumway M。序列读取存档。核酸研究。2011;39:D19–D21。 [PMC免费文章][公共医学][谷歌学者] 5Hubbard TJ、Aken BL、Ayling S等人,Ensembl,2009年。核酸研究。2009;37:D690–D697。 [PMC免费文章][公共医学][谷歌学者] 6Fujita PA、Rhead B、Zweig AS等。UCSC基因组浏览器数据库:2011年更新。核酸研究。2011;39:D876–D882。 [PMC免费文章][公共医学][谷歌学者] 7Kasprzyk A、Keefe D、Smedley D等。EnsMart:快速灵活访问生物数据的通用系统。基因组研究。2004;14:160–169。 [PMC免费文章][公共医学][谷歌学者] 8Kimball R、Reeves L、Ross M等人。数据仓库生命周期工具包。纽约:约翰·威利;1998[谷歌学者] 14Kinsella R、Kahari A、Haider S等人。Ensemble BioMarts:跨分类空间的数据检索中心。数据库。2011;(本期)doi:10.1093/database/bar030。[PMC免费文章][公共医学][谷歌学者] 15Povey S、Lovering R、Bruford E等。HUGO基因命名委员会(HGNC)嗯,遗传学。2001;109:678–680。[公共医学][谷歌学者] 16国际HapMap联盟。(2003)国际HapMap项目。自然。2003;426:789–796.[公共医学][谷歌学者] 17Jones P、Binns D、McMenamin C等。InterPro BioMart:对InterPro资源的强大联合查询和web服务访问。数据库。2011本期,doi:10.1093/database/bar033。[PMC免费文章][公共医学][谷歌学者] 18Siepen JA、Selley JN、Hubbard SJ。PepSeeker:从蛋白质组数据中挖掘信息。方法分子生物学。2008;484:319–332.[公共医学][谷歌学者] 19Vizcaino JA、Cote R、Reisinger F等。蛋白质组学鉴定数据库:2010年更新。核酸研究。2010;38:D736–D742。 [PMC免费文章][公共医学][谷歌学者] 20UniProt联盟。(2010)《2010年全球蛋白质资源》(UniProt)。核酸研究。2010;38:D142–D148。 [PMC免费文章][公共医学][谷歌学者] 22Stevenson P、Richardson L、Venkataraman S等。EMAGE基因表达数据库的BioMart接口。数据库。2011(本期)[PMC免费文章][公共医学][谷歌学者] 23Diez-Roux G、Banfi S、Sultan M等。小鼠胚胎转录组的高分辨率解剖图谱。《公共科学图书馆·生物》。2011;9:e1000582。 [PMC免费文章][公共医学][谷歌学者] 24Lardenoil A、Gattiker A、Collin O等。GermOnline 4.0是生殖系发育、减数分裂和有丝分裂细胞周期的基因组学网关。数据库。2010;2010:baq030。doi:10.1093/database/baq030。[PMC免费文章][公共医学][谷歌学者] 25Morews F、Klopp C、Rauffet G等。SigReannot-mart:表达微阵列探针重新命名的查询环境。数据库。2011这个问题。[PMC免费文章][公共医学][谷歌学者] 26Shepherd R、Forbes SA、Beare D等。使用癌症生物城(COSMICMart)中的体细胞突变目录进行数据挖掘数据库。2011此问题doi:10.1093/database/bar018。[PMC免费文章][公共医学][谷歌学者] 27Cutts RJ、Gadaleta E、Lemoine NR等。使用BioMart作为管理和查询胰腺癌数据的框架。数据库。2011本期,doi:10.1093/database/bar024。[PMC免费文章][公共医学][谷歌学者] 28Perez-Llamas C、Gundem G、Lopez-Bigas N.《BioMart》中的综合癌症基因组学(IntOGen)。数据库。2011这个问题。[PMC免费文章][公共医学][谷歌学者] 29斯普纳·W、尤恩斯·克拉克·K、Ware D.GrameneMart:Gramene项目的BioMart数据门户。数据库。2011;(本期) [PMC免费文章][公共医学][谷歌学者] 30Shaw博士。在小鼠基因组信息学(MGI)资源中搜索从基因型到表型的小鼠生物学信息。货币。协议。生物信息学。2009 第1章,单位1.7。[公共医学][谷歌学者] 31Arnaiz O,Sperling L.草履虫DB,2011年:纤毛虫模型四脲草履螨功能基因组学和比较基因组学的新工具和新数据。核酸研究。2011;39:D632–D636。 [PMC免费文章][公共医学][谷歌学者] 32Harris TW、Antoshechkin I、Bieri T等。《蠕虫基础:线虫研究的综合资源》。核酸研究。2010;38:D463–D467。 [PMC免费文章][公共医学][谷歌学者] 33Zhang J、Baran J、Cros A等。国际癌症基因组联盟数据门户:癌症基因组数据的一站式服务。数据库。2011这个问题。[PMC免费文章][公共医学][谷歌学者] 34Guberman JM、Arnaiz O、Baran J等人,《生物商业中心门户:生物社区的开放数据库网络》。数据库。2011这个问题。[PMC免费文章][公共医学][谷歌学者]