-1

我目前有很多想要分析和计算的财务数据。我已经构建了一个从平面文件中读取数据的数据系统,并进行了一些相当智能的缓存来保持我想要的性能。但是我开始为这个系统提供大量数据......

我目前正在考虑使用 POSTGres 并有一个类似这样的模式:

Table: Things
Fields: T_id, Row, Sub-Row, Column, Resolution, Readable-Name, Meta

Table: Data
Fields: d_id, T_id, timestamp, value

我想知道如果我的数据表有数十亿行,POSTGres 是否会在上述模式下表现出色。

我的另一个想法是使用面向列的数据库,但我似乎找不到任何好的开源数据库来开始使用。Cassandra 真的不适合这种情况,因为我会阅读比写作更多的东西。

4

2 回答 2

1

取决于您的期望 - PostgreSQL 可能可以在您的架构上处理此查询,但它可能是几分钟或几小时长的查询 - 取决于已处理的行 - 但列存储数据库可以快 10 倍 - 只是 PostgreSQL 是关系 OLTP 数据库,而您的架构没有很好地规范化,您可能更喜欢 OLAP。

有一些开源列存储数据库,如 MonetDB 或 LucidDB,但它们不是来自 PostgreSQL 的空间。只有商业数据库 Vertica。您可以查看 MySQL 引擎http://www.mysqlperformanceblog.com/2010/08/16/testing-mysql-column-stores/

于 2012-11-14T06:26:18.187 回答
0

答案取决于您的预算。

以下是我们在实践中使用的解决方案列表(从便宜到昂贵):

MongoDB PostgreSQL InfiniDB kdb+

于 2012-11-15T23:06:47.070 回答