科学计算数据库

时间:2010-02-23 22:51:04

标签: sql database

我需要在C#项目中包含一个包含大量数据的数据库。 即使在商业用途中,该数据库也应该是免费的。

我应该使用什么数据库?

[编辑]

我想知道要避免哪些数据库。 当我说“很多”时,它是用于科学计算,因此它将是巨大的数据。

4 个答案:

答案 0 :(得分:2)

我已经将PostgreSQL数据库用于我自己的“半科学”概念验证项目。存储50GB +数据。我的经验是积极的。您应该注意分区方案和索引。它是免费的,并得到大型在线小组的支持。

答案 1 :(得分:2)

我认为这个问题仍然含糊不清。当您需要选择数据库系统时,除了输入数据大小和免费软件(预算)之外,您可能还需要考虑一些重要因素。

1)您提到的目的是科学计算,您是否需要支持一些复杂的临时分析/操作?例如,您是否需要支持时间旅行或多维直方图生成?如果是这样,你最好选择专为科学计算设计的数据库而不是更通用的数据库, SciDB / MonetDB / RasDaMan 可能是一个不错的选择。

2)您提到了数据大小,但数据类型是什么?它是关系数据(例如CSV),基于阵列的数据(HDF5 / NetCDF)还是空间数据?一种尺寸并不适合所有,并且有不同类型的数据库专门为不同类型的输入数据设计:关系/数组/空间...数据库。请注意,在使用任何数据库之前,必须在数据库中加载数据,如果输入数据类型与数据库类型不匹配,数据加载可能会非常痛苦。

3)在您的情况下,性能可能是一个非常关键的因素,如果分布式计算在您的计划中,您可能还需要考虑可扩展性。例如,由于科学数据通常是只读的或仅附加的,您是否真的需要在所有查询执行期间保证ACID属性?您可以考虑牺牲ACID以提高性能。如果是这样,SciDB可能比SQL Server好得多。

答案 2 :(得分:1)

好吧,你几乎可以使用任何东西,PostgreSQL,SQLite,甚至微软的SQL Server Compact或SQL Server。

它还取决于什么是“大量数据”/

答案 3 :(得分:-2)

http://www.fakenamegenerator.com/可能会帮助你。取决于您需要的数据类型。