高通量测序结果报告系统-专注于提高测序数据分析效率

高通量测序结果报告系统聚焦于项目的实施与交付,从项目合同签订后,明确项目范围,明确任务,明确关系人。该系统的目的是提高项目交付的效率,缩短项目交 付时间,增加用户满意度。规范化,可视化项目流程,标准化、自动化、固定化一系列任务,实现项目报告自动化生成,形成新型的与客户的关系。

提高项目实施效率

  • 项目进展的可视化,可跟踪,项目的可控性;
  • 流程化,标准化,自动化,相辅相成;
  • 将分析人员从琐碎的事情中解放出来,维护流程,优化流程;
  • 知识传承与共享,同类问题,分秒解决;
  • 改善人机交互环境,更多的事情交给计算机完成,提升资源利用率
  • 可度量性,容易发现流程的短板,暴露问题,解决问题
  • 人员利用率,人员重叠,任务明确,遇到问题有章可循
  • 管理,绩效度量

提高客户满意度

  • 项目状态在线查询,客户可以实时查看项目的进展,查看阶段性报告
  • 工单管理系统,客户问题直接和分析人员的交互,及时发现问题,及时解决问题,搭建沟通桥梁
  • 数据分析的标准化,严格的质控,实时的审核,保证数据的准确性
  • 数据报告的标准化,格式化,提升公司形象
  • 缩短项目的交付时间,时间就是金钱
  • 用户的参与与决策,分析的针对性、个性化,提升数据的价值,不再只是漂亮的图表

from:http://biolinevo.com/report

一个乱码引发的学案

php开发的系统中,在对用户填写的tag做切分时,一个单词【表格】出现了乱码,其他都正常。借着这段时间对于字符的深究,抽时间研究了这个问题,最后却牵扯到很多东西——PHP对于Unicode支持,及其相关字符处理的问题。

出现乱码,肯定是字符处理过程中出现了问题,跟踪后,发现问题出在trim这个步骤。

$tags_str=trim($tags_str,",,;; \n\t\r");

本意是去除标签字符串后面的标点符号及其换行、空白,但是遇到“表格”就出现问题了。用到的字符编码是UTF-8

E8A1A8 E6A0BC
, 2C ,全角 EFBC8C
; 3b ;全角 EFBC9B

又到PHP文档上查了下对于函数的介绍,算是明白了。PHP许多核心字符函数,都只是针对ASCII,单字节编码的字符(0x00~0x7f),如果使用这些函数去操作多字节字符,就会遇到问题,比如trim,按照单字节去操作,就会将0xBC裁掉,“表格”编码不全,自然也就乱码。同样strlen得到的长度也是字节的长度,对于UTF-8来说,就不是字符数。

如何来解决这个问题?

PHP有专门的处理多字节(Multibyte String)的模块-mbstring,但是该模块不是默认安装的,编译时增加–enable-mbstring,或者更改配置启用该模块,mbstring支持多种多字节编码,需要在配置中指明是那种编码。 Continue reading

漫谈web服务器

如果你是新手,要安装一个web应用或者创建一个网站,请接着读…

计算机中,有时候发现越是基础的东西发现越难讲清楚,网络为王的今天,生物信息也是身在其中,生物数据、工具、服务等都是以网络的形式存在的,而更为重要的是许多实验室、研究人员也开始筹建自己的网络服务。上网大家并不陌生,访问一个个网站,但是这些站点是如何提供服务的,网络技术飞速发展的今天,想必不是每个人都能说清楚。

要访问站点,离不开浏览器,浏览器现在也是五花八门,ie、chrome、firefox、safari、opera,国内更是360、遨游、世界之窗、QQ、淘宝,不过这些大都是基于别人的内核,就好比汽车发动机、制动系统都是进口的,只是外壳是自己的,但是访问的方法是相同的,就是通过http协议,也就是站点千差外别,但是前面都得加”http://”,而谁提供的http服务呢,就是这里我们要谈的web服务器,请区别于物理的服务器,这里说的web服务器指的是操作系统的一个服务,运行于后台,提供web服务。

web服务

目前的web服务器也有很多,apache、IIS、tomcat、lighttpd、nginx、liteSpeed等,基本原理就是浏览器输入网址,通过http协议,通过域名定位ip,通过ip地址找到到机器,通过端口找到服务(端口默认是80,没有看见端口号,就是默认的80),web服务器接受请求,将响应的结果以HTML格式返回到浏览器,浏览器解析HTML文件,就是用户看到的页面。 Continue reading

主流的生物信息数据库模型

什么是数据库,相关的概念

数据库充斥着生物信息的每个角落,要数清楚这个主题,首先要解释一下,在不同场合下“数据库”的不同含义,主要包含4个方面:

数据库管理系统

数据库管理系统(Database management systems , DBMSs)是管理数据的软件系统,比如Oracle、MySQL、PostgreSQL、Sybase、DB2、MS SQL等等,其是数据库的容器,是管理数据库综合软件系统。

数据库模式(Database Schema)

数据库模式指特定数据库的设计,也就是其内容的组织方式,就关系型数据库来说,就是其表、表中的列,以及表之间关系的设计。其可以在不同的数据库管理系统中实现,可以重复使用,构建不同的数据库应用。

基于数据库的网站(Database Web Site)

常被我称为数据库信息系统,其后台以数据库作为支撑,所有信息都存储在数据库中,通过网页提供访问接口,实现对信息的查询管理,构成一个容易交互的信息系统。生物信息领域内常见的如s FlyBase (http://flybase.org) ,ParameciumDB (http://paramecium.cgm.cnrs-gif.fr)等。常说的生物信息数据库资源,也通常指的是该类别的数据库。 Continue reading

这个时代,生物信息,公司产业

这两天在读乔布斯传,更多的了解了苹果,一条通向未来的光明大道展现在我眼前,改变世界,引领潮流,平凡的我们也应该做更多的反思。以科研为使命的研究人员,或者以服务为目的生物信息产业工人,无论是科研还是服务,其本质都是创造更多的价值,获得更多的物质或者精神上的财富。而在这个历史的洪流中,如何定位自己,如何能抓住机遇,成就一番事业。 Continue reading

GBrowse的介绍与安装

什么是GBrowse?

  • The Generic Genome Browser (GBrowse) is a genome viewer.
  • GBrowse是个开源的基因组浏览器;
  • 是一个图形化展示基因组数据;
  • Ensemble、UCSC Genome Browser、mapviewer等同属一类,但其目的是开源工具本身,注重工具的易用性,可配置性,文档等,如果你也想展示自己的数据,GBrowse是最好的选择。包括数据的制备、多种数据库的支持、灵活而强大的配置语法、可以定制的插件库、完善的文档教程等等;
  • wiki: http://gmod.org/wiki/Gbrowse

GBrowse的安装

下面是基于技术构建对于GBrowse的描述

  • 是基于perl、bioperl的
  • 是基于B/S架构的web系统
  • linux、apache、mysql使其最理想的环境
  • 目前2.0版本还不太稳定

所以其安装,可以分为以下三个部分: Continue reading

数据库信息系统中文献整合的价值

下一步有时间,决定将文献模块做为插件形式整合到主题数据库系统中,文献的价值可能一直被低估了。

文献整合的价值

对于科学研究,一直以来其研究成果都是以文章的形式发布的。比如对于基因的研究,现代信息系统的飞速发展,将文章的成果要最后变成对于基因组进行注释的数据,保存到数据库中,给研究结果的查询、比较提供了极大的便利。但是可以想象得到,不是所有的文章都将结果提交的NCBI了,特别是有些结果可能不能直接的提交。如何以及用怎样一种形式来进行这些文章的整合,对于物种基因组为主题的数据库系统来说,估计也是其否能被领域认可的一个重要因素。充分研究文章结果的各种存在形式,以及一个非常方便的,一个团体参与共同进行注释的系统,也许也是一个关键所在。

文献模块的初步设计

主要功能: Continue reading

生物信息数据库系统开发流程感想

dbDEPC 2.0终于开发完成上线了,是由需求方的一个工作人员和一名程序员协作完成,前前后后历时两个多月,经过几次更改终于完成,后来就这个项目让程序做了个总结报告,我也是有感而发,想站在软件工程的角度进行一下总结,像生物信息数据库系统类似的专业性非常强的系统应该采用什么样的开发流程,应该采取什么样的方法最大限度的降低开发风险,保证开发进度。

专业软件开发,当然最好是既懂专业又懂开发的人员进行开发,但是这样的综合的人才还是可遇不可求的,许多的情况下都是像dbDEPC项目类似,一名专业人员负责系统应该开发成什么样子,而程序员负责实现,如果没有任何干预,就会像这个项目所经历的那样,付出非常大的交流与更改成本。程序员编程了专业人员的画笔,而专业人员却不知道如何使用画笔,只有画了擦,擦了画,那边程序员系统还在开发着,这边专业人员已经将数据库改的面目全非,并且还认为这些改动不会对系统造成太大的影响。还有许多功能的实现上,由于专业人员对于软件开发的不熟悉,实现一个功能往往要绕好多的弯子。而将整个开发过程与软件工程中的软件开发流程去对应,根本找不到软件工程方面的影子,或许这就是最大的问题。

遵循已有的软件工程方面的知识,可以减少项目风险,提高开发效率,降低开发成本,那么面对专业软件我们应该如何做呢?

  • 从用户手中夺走画笔,取得主动权;
  • 引导用户提供软件开发所需要的材料、知识,比如原形、需求分析;
  • 对于用户提供的材料,形成文档,并且请该行业的专家对于该系统进行评审,评审通过后再进行下一步的工作;
  • 明确流程与阶段,对于需求分析与软件设计阶段投入更多的时间与精力

数据库系统不外乎是这样的一个过程,数据存储组织、业务处理、数据展示,所以对于这三者最好都精通,组织不好,会造成业务处理流程复杂,数据展示没有设计好,同样会影响业务处理以及数据存储组织。成为行业专家,同样是程序员一个很好的出路。

明确主题与人员招聘

鉴于对未来规划的明确——做生物信息数据库系统的开发,博耘生物的主题也将进一步明确,基本以此为中心。

随着二代测序技术的发展,测序越来越便宜,越来越多的实验室将自己的样本送出去测序,实验室也开始积累出自己特有的数据,这些数据虽然进行了处理和初步的分析,但是要更为灵活的应用起来,比如找出某个基因,比如不同处理的统计分析,比如不同实验室的有限共享,比如数据的注释与展示,面临很多的困难。提供数据的存储与共享,与常用的分析工具进行绑定而建立的分析平台、展示平台的生物信息数据库系统是解决这一困境的唯一手段。测序多了,数据多了,对于信息系统的需求也多了。以后的主要重点就是专业做生物信息数据库系统的开发。

系统的开发的平台:

Mysql + {PHP | Perl(bioperl)} + linux

整合的工具包括:

  • GBrowse
  • blast
  • Blat
  • hmmer
  • ….

也可以根据用户需要定制。

。。。