制作蛋白质相互作用数据库的实际障碍是什么?

Chi*_*rag 2 database-design

以下是一些蛋白质相互作用数据库:

http://string-db.org/

http://dip.doe-mbi.ucla.edu/dip/Main.cgi

作为新手,在使用大约 20,000 个蛋白质的数据集尝试任何此类项目之前,我必须了解数据库的哪些实际方面?作为管理员,我在设计和实施这样一个项目的过程中会遇到什么困难?

dez*_*zso 5

我早些时候开始写一个关于数据库设计和实现的某些方面的答案,我放弃了,因为我意识到这些不会(或不应该)是开发数据库(或更广泛地说,软件)的第一步满足您的需求。这样,这可能不是您正在等待的答案。

几年前,作为一个新手,我也很想制作一些大而有趣的东西。(老实说,我只有那个特定项目所需能力的一部分。我希望一旦我准备好数据库部分(我知道如何做),每个人都会非常相信它会很棒,他们会对我犯错和(非常)缓慢有必要的耐心。)当我开始做我的事情时,我意识到

  • 该项目比最初看起来要复杂得多(部分原因是缺乏规范)
  • 我没有我之前想象的那么好(尤其是速度)
  • 无论我到目前为止取得了什么成就,都没有人有耐心(可以理解,他们非常需要那个软件)。

现在,在这个出来之后,回到你的项目:)

要决定是否必须开发新东西,您必须考虑一些事情。

您的数据是否如此特殊以至于只有新软件才适合? 可能有(开源)软件,您可以在稍作修改后使用。通过这种方式,您可能可以获得更多帮助(最好来自编写该软件的人)并更快地完成。而且,最后,如果您添加的内容有效且有用,您就可以发布它。它肯定会为您赢得声誉。(更不用说你的引文索引会更好:)

你真的很需要它吗? 由于开发将花费大量时间(可能还需要金钱),因此您必须评估成本和收益。在成本方面,不会有单独的数据库:您必须能够使用您的数据库(为它提供数据并从中获得结果)。即使保持简单,它仍然可以使所需的努力加倍。总的来说,如果收益没有明显大于成本,我不会从它开始。

您是否具备实现目标所需的专业知识? 希望是的,但如果不是,那么您的系统将效率低下、有缺陷或完全无用。随着工作的进展,您当然会获得经验,但是调试和重写编写得不好的代码可能比再次编写代码要困难得多。

(我可能在这里太小心了,但我讨厌写了一半的软件。而且,如果你的主要目标是获得经验,并且你有必要的资源(包括走遍所有死胡同的奢侈),那么开始而且,如果你的答案是三个是,那么你仍然应该阅读一本关于数据库设计和开发的好书——它的领域比简短的答案所能涵盖的范围要广泛得多。)