我应该使用什么类型的数据库?

时间:2012-03-02 15:30:13

标签: mysql database performance redis object-oriented-database

我打算开发一个Web应用程序,我需要决定我的数据库系统的“类型”。我打算用Django / Python开发Web应用程序。

我的应用程序只包含一个表'n'越来越多(数百万的订单)记录和'k'列(1-100)。不幸的是,我无法控制'k'的数量。 'k'的大小可能会随着时间的推移而增加/减少(尽管在1-100之间)。我不想在表现上做出牺牲。

我应该使用哪种类型的数据库?我最初的反应如下:

  • MySQL:我想避免使用此选项
  • Redis:不错的选择,但(键,值)商店不符合我的账单
  • XML数据库:看起来很适合任务,但是它能提供所需的性能吗?
  • 面向对象的关系数据库:我不确定这个

修改 具体要求:

对k列执行查找并检索“n”个记录的子集。我计划提供类似于Twitter或Facebook的REST api。

例如,http://api.twitter.com/1/users/show.json?screen_name=Ashton。如果这是我计划实现的,那么screen_name将是其中一列。同样,可能还有其他基于其他列的参数,如user_id,朋友数等。

1 个答案:

答案 0 :(得分:2)

听起来你可能会因为太多的先入之见而进入这个决定。你为什么要避免使用MySQL?是因为你在避免严格的架构吗?

由于数据量的原因,Redis听起来并不合适,但我不认为它与键/值存储有任何关系。

您的数据需要听起来像MongoBD的漂亮textboook案例。你看过了吗?