首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DNA序列数据.长而宽的实验数据表的要求

DNA序列数据.长而宽的实验数据表的要求
EN

Database Administration用户
提问于 2020-05-10 03:12:47
回答 2查看 60关注 0票数 1

我需要建立一个数据库来保存从DNA测序实验中获得的数据。

( 1)一个样本中有500万列数据,总共有数百个样本

2)有几个数据点为空

3)每周计算每一栏的中位数、标准差等。

什么是对这些数据的最佳设计,并有助于缩短分析所花费的时间?

如有任何建议(S),将不胜感激。

数据类型: DNA测序数据。将整个染色体分解成1kb的窗口,计算测序的平均深度等。

专栏: bed1,bed2...bed10000..。

行: sample1,sample2..。

即使只关注基因,也会有几千列。

我不知道是否有任何工具或解决方案可供使用。

EN

回答 2

Database Administration用户

回答已采纳

发布于 2020-05-10 06:21:22

你建议的是一种标准的方法来存储DNA测序结果吗?除了技术上的困难--祝您好运,找到一个允许这么多列(SciDB?)的数据库--这将使查询变得很棘手。我会想办法让你的桌子又高又瘦,而不是又矮又胖。

我要做的事情如下:

代码语言:javascript
复制
CREATE TABLE sample
(
  bed INTEGER NOT NULL,
  sample_no INTEGER NOT NULL,
  ..
  .. other fields? 
  .. chromosomal location? sequence? phenotype? 
  .. dna_type (gene | promoter | mRNA | tRNA... &c.)?
  ..
  CONSTRAINT sample_pk PRIMARY KEY (bed, sample_no)
);

我相信这样的模式将方便查询,并且在技术上更可行--它将更好地符合关系模型,并最终将为您省去很多麻烦!我问上面的Is this a standard method of storing DNA sequencing results? -这个工作已经做过了,所以你为什么要重新发明车轮?

别误会我的意思--我都赞成对生物现象进行实验和尝试,这就是科学/分子生物学的意义所在,但其他人肯定以前就做过--你可能想看看他们的工作吗?作为记录,我拥有巴黎大学的细胞和分子遗传学硕士学位。嗯..。

票数 1
EN

Database Administration用户

发布于 2020-05-10 06:22:43

五百万列?不用了。将列作为关系数据库术语,它表示一个与所讨论的单个事物(行)不同的原子事实,而不是与任何其他事实重叠。我可以相信只有一件事的测量值是5米,但不是单独的,不同的事实。

如果您想在关系数据库(Postgres、SQL Server等)中这样做的话。最好是计算行上的聚合。然后这些表看起来就像

代码语言:javascript
复制
Sample (sample_id, source, ...)
Bed (sample_id, bed_number, ...)

这将给你几百米在床上。任何最近的硬件都可以处理这个问题。

有专门设计的软件产品来操作DNA类型值。我不够专业,不能给你建议。我将提到bioinformatics.stackexchange.com的存在。你更有可能在那里找到具体的知识。

一些NoSQL产品可能能够将所有500万值保存在一个单独的“行”中。然而,不太可能有内置函数来执行跨“列”的计算。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/266845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档