Galaxy Project | 生信人最值得学习的开源项目之一
我与 Galaxy Project 的渊源可以追溯到我刚毕业,还在华大实习的那一段时间,这个项目应该是我职业生涯中最重要的一段经历。虽然这么对年以来一直都关注着这个项目,但大多数都是浅尝辄止,对源码层面的理解也缺乏深度。但我依然想给大家介绍一下这个优秀的项目。
背景与简介
Galaxy Project 是由 NSF, NHGRI, The Huck Institutes of the Life Sciences, The Institute for CyberScience at Penn State, and Johns Hopkins University 提供支持,其团队是宾夕法尼亚州比较基因组学和生物信息学中心、约翰·霍普金斯大学生物系以及俄勒冈州健康与科学大学的计算生物学计划的一部分,而 Galaxy 正是由这个团队开发的,并得到了社区的贡献。
关于这个项目的一些背景介绍,可以参考 NIH Grant 2U41HG006620,我这里做了一个简单翻译。
总体而言,高通量数据产生技术,尤其是 "next generation" DNA测序技术,已为生物医学研究带来了数十年来最具颠覆性的变化。要理解由高通量技术产生的大型数据集,就需要复杂的统计和计算方法以及强大的计算能力。这导致了生物医学研究的严重危机,因为未经信息学训练的研究人员试图进行过于依赖于计算的分析。自 2005 年以来,Galaxy 项目一直致力于通过提供一个使非专家可以使用高级计算工具的框架来解决这个问题。Galaxy 试图通过提供基于 Web 的环境,使用户可以执行计算分析并自动跟踪所有详细信息,以供以后检查,发布或重复使用,从而使数据密集型研究更易于访问,透明和可重复。在拟议的项目中,我们将以几种特定方式改进 Galaxy。我们将大大提高 Galaxy 在处理大量数据集方面的可用性。现代实验通常涉及以复杂方式组织的数百个数据集。我们将使分析此类数据变得简单而直观。我们将改善软件工具的开发和分发,使开发人员更容易分发工具并让用户更容易地获取工具,同时又能保留来源。我们将大大改善对各种计算资源(如云计算和高性能群集)的访问,使生物医学研究人员能够使用传统上难以使用的资源。最后,我们将参与培训,外展和传播,包括开发可扩展的培训材料,其他人可用来进行生物医学数据分析培训。
Galaxy Project 的第一个初始版本发布于 15 年前,也就是2005年9月16日。Galaxy 有多种可用方式,尽管大多数 Galaxy 安装都是私有的,但许多团体都以多种不同形式支持 Galaxy 实例,包括可公开访问的服务器,可以轻松地在研究和商业云,容器和虚拟机上启动的 Galaxy 实例。下面是 Galaxy 官方对 2019 年前仅可公开访问的服务器进行了统计的一些信息。
Galaxy Platform
Galaxy Project 在官网 Galaxy Platform Directory: Servers, Clouds, and Deployable Resources 中对我们可以轻松使用或部署自己的 Galaxy Server 平台进行了一个资源汇总。这些资源涵盖了生命科学的各个领域。有关于基因组学(很多),宏基因组学,转录组学,蛋白质组学,药物发现以及甚至某些外部生物学(如自然语言处理(其中的一些))和社会科学的资源。
在 Galaxy 提供的众多服务中,UseGalaxy servers 是一个非常重要且常用的服务。
UseGalaxy 服务器实现了一套通用的工具和参考基因组核心,并且开放给任何人使用。它们还包含每个服务器本地的工具和基因组。每一个都有大量的计算资源作为后盾,它们是开始使用 Galaxy 以及共享和发布结果的绝佳场所。

Galaxy 的主站点位于 https://usegalaxy.org,自 2007 年以来,该网站已开放,任何人都可以免费分析其数据。该站点提供了大量的 CPU 和磁盘空间,从而可以分析大型数据集。该站点每月支持成千上万的用户和成千上万的工作。该 Galaxy 实例是在国家科学基金会(National Science Foundation)的支持下,利用了得克萨斯州高级计算中心(Texas Advanced Computing Center (TACC) )的 CyVerse 项目慷慨提供的基础架构。

帮助与支持
前期的 Galaxy Project 主要通过邮件聚合的方式进行沟通交流,现在除了推特、Github,Galaxy Project 还搭建专属的帮助论坛 Galaxy Help Forum,同时把基于免费开源即时通讯聊天软件 gitter 进行了整合(Galaxy Help Forum 的帖子会同步到 gitter galaxyproject/Lobby),这一切对于 Galaxy 开发、管理,以及问题反馈等非常有帮助。
Query all Galaxy resources with the search function in the top masthead(https://galaxyproject.org/)
Galaxy Help
Chat
Mailing Lists
Video Help
Galaxy Biostars: retired Q&A archive
学习与贡献
Galaxy Project 是一个跨越全方位的生物医学开源项目,除了 galaxy 本身,还有 training-material,tools-iuc,planemo 等一些优秀的开源项目,这些项目都是基于 Github 平台进行开源的,所有人都可以参与并提交 PR。
除此以外想要说的是,对于 galaxy 平台项目,它覆盖了从前端到后台,从服务器到集群容器各个方面的知识,平台项目以每年 2 个版本的速度进行更新迭代,每次更新都会或多或少对时下最热最流行的工具进行尝试,如 vue、TypeScript、docker、k8s 等都已经在 galaxy 中进行了集成。
丰富的文档,优秀的社区,与时俱进的技术,使得这一开源项目越来越受欢迎。Bio & IT 本身就是一个跨学科的复杂领域,而 Galaxy Project 作为这一领域中的集大成者,从学习本身而言,它是值得去学习的。

Galaxy Release_20.09 发布,新增多个数据上传组件

Galaxy Release 20.05 发布,新增多项可视化体验






本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
Galaxy Project | 生信人最值得学习的开源项目之一的更多相关文章
- go语言值得学习的开源项目推荐
谷歌官方维护了一个基于go语言的开源项目列表: https://github.com/golang/go/wiki/Projects 其中有非常多的优秀项目值得学习,有几百行代码适合新手阅读的项目,也 ...
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 我们都知道在使用WebApi的时候Controller会自动将Action的返回值自动进行各种序列化处理(序列化为 ...
- 精选 TOP45 值得学习的Python项目
精选 TOP45 值得学习的Python项目 [导读]热门资源博客 Mybridge AI 比较了 18000 个关于 Python 的项目,并从中精选出 45 个最具竞争力的项目.我们进行了翻译,在 ...
- Python学习教程(十)精选 TOP45 值得学习的Python项目
精选 TOP45 值得学习的Python项目 [导读]热门资源博客 Mybridge AI 比较了 18000 个关于 Python 的项目,并从中精选出 45 个最具竞争力的项目.我们进行了翻译,在 ...
- 学习Coding-iOS开源项目日志(一)
前言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目.本篇开始会陆续更新本人对github上开源的一个很不错的项目的一点点学习积累.也就是,探究着别人写的源码,我学到了 ...
- 学习Coding-iOS开源项目日志(二)
继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...
- 学习Coding-iOS开源项目日志(五)
继续,接着前面第四篇<学习Coding-iOS开源项目日志(四)>讲解Coding-iOS开源项目. 前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目 ...
- 学习Coding-iOS开源项目日志(三)
继续前两篇,接着本第三篇<学习Coding-iOS开源项目日志(三)>讲解Coding-iOS开源项目. 前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的 ...
- Hello!GitHub 好用好玩值得收藏的开源项目集合~
这是我许久以来从各处发现的极佳开源项目,希望分享给大家~ 如果帮到你了,给我个赞好嘛 编程语言类 ️learn-go-with-tests(通过单元测试学Go) GitHub地址:https://gi ...
- 适合 C++ 新手学习的开源项目——在 GitHub 学编程
作者:HelloGitHub-小鱼干 俗话说:万事开头难,学习编程也是一样.在 HelloGitHub 的群里,经常遇到有小伙伴询问编程语言如何入门方面的问题,如: 我要学习某一门编程语言,有什么开源 ...
随机推荐
- Nacos 服务发现
更多内容,前往 IT-BLOG 一.Nacos 简介 Nacos 是阿里的一个开源产品,它是针对微服务架构中的服务发现.配置管理.服务治理的综合型解决方案.Nacos 使服务更容易注册,并通过 DNS ...
- Schillace 定律 背后的 Sam Schillace
微软semantic-kernel(SK)团队发布了一篇博客文章:Early Lessons From GPT-4: The Schillace Laws[1] ,微软的CVP , Deputy CT ...
- 三分钟速览GPT系列原理
其中,Transformer和BERT来自Google,GPT系列[GPT.GPT-1.GPT-2.GPT-3.ChatGPT.GPT-4]来自OpenAI. GPT Paper名为Improving ...
- 一文详解扩散模型:DDPM
作者:京东零售 刘岩 扩散模型讲解 前沿 人工智能生成内容(AI Generated Content,AIGC)近年来成为了非常前沿的一个研究方向,生成模型目前有四个流派,分别是生成对抗网络(Gene ...
- 端口转发、Http Tunnel、内网穿透
原文链接:https://www.yuque.com/tec-nine/architecture/mgxc71 SSH 命令帮助 命令行选项有: -a 禁止转发认证代理的连接. -A 允许转发认证代理 ...
- 学习docker看此文足以
什么是 Docker Docker 最初是 dotCloud 公司创始人 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 ,主要项目代码在 上进行 ...
- Java GenericObjectPool 对象池化技术--SpringBoot sftp 连接池工具类
Java BasePooledObjectFactory 对象池化技术 通常一个对象创建.销毁非常耗时的时候,我们不会频繁的创建和销毁它,而是考虑复用.复用对象的一种做法就是对象池,将创建好的对象放入 ...
- python入门教程之十七进程、线程和协程
进程 要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识. Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊.普通的函数调用,调用一次 ...
- pysimplegui之光标 - 元素和窗口的设置
光标 - 元素和窗口的设置 通过将光标设置为元素或整个窗口,可以将普通箭头光标更改为其他内容.当您将鼠标移到元素或窗口上时,结果将是光标发生变化. 最好的例子之一是 URL.当鼠标移到链接上时,用户习 ...
- 添加索引后SQL消耗量在执行计划中的变化
不同索引的执行效率也是不一样的,下面比较三条SQL语句在正常查询与建立普通索引与位图索引后的CPU消耗量的变化,目的为了是加强对索引的理解与运用 实验步骤:1.创建有特点的大数据表.为了保证索引产生前 ...