数百万行存储/查询的最佳数据库

时间:2012-02-27 21:33:32

标签: database nosql

我们的数据库已经增长了大约5年。主表有近100列和7亿行(并且正在增长)。

常见用例是计算符合给定条件的行数,即: select count(*)其中column1 ='TypeA',column2 ='BlockC'。

另一个用例是检索符合条件的行。

通过花一点时间开始查询,现在需要几分钟。 我想找一些DBMS,它允许我尽可能快地完成两个用例。

我一直在研究一些Column store数据库和Apache Cassandra,但仍然不知道什么是最佳选择。有任何想法吗?

1 个答案:

答案 0 :(得分:0)

我将假设这是一个没有当前数据的分析(历史)数据库。如果没有,你应该考虑分开你的数据库。

您将需要一些功能来帮助加快分析:

  • 物化视图。这基本上是预先计算值,然后存储结果以供以后分析。 MySQL和Postgres(即将推出Postgres 9.3)不支持这一点,但你可以模仿触发器。

  • 轻松进行OLAP分析。您可以使用Mondrian OLAP服务器(java),但Excel不会轻易与它交谈,但JasperSoft和Pentaho会这样做。

  • 您可能希望更改架构以便更轻松地进行OLAP分析,即星型架构。好书:

http://www.amazon.com/Data-Warehouse-Toolkit-Complete-Dimensional/dp/0471200247/ref=pd_sim_b_1

如果你想要开源,我会去Postgres(不会像mysql那样大问题),加上蒙德里安,加上Pentaho。

如果不是开源,那么最好的降价可能是带有Analysis Services的Microsoft SQL Server。