我需要在C#项目中包含一个包含大量数据的数据库。 即使在商业用途中,该数据库也应该是免费的。
我应该使用什么数据库?
[编辑]
我想知道要避免哪些数据库。 当我说“很多”时,它是用于科学计算,因此它将是巨大的数据。
答案 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/可能会帮助你。取决于您需要的数据类型。