0

我正在创建一个数据库来存储三样东西。比方说实验、测量、元数据。元数据由一组可变数量和类型的属性组成,因此 NoSQL 的选择很有吸引力。

我需要对数据库进行两个简单的查询:

1) 给我所有具有给定 Measure 值的实验的元数据。2)给我一个实验的所有措施的元数据。

我的主要要求是:

1) 大量数据。每个实验都可以带有数百万个可能的度量(当然还有元数据),我预计会有成千上万个实验。2)并发。我希望有快速的并发读/写,因为在任何给定的时间点我可能会运行 10-20 个实验,并且他们希望同时编写数百万个度量。

我试过 MongoDB,但由于写锁,它很慢。我想要更快的东西。此外,它不能很好地处理我的一个查询,因为我在这里基本上需要两个索引。我正在考虑作为替代泰坦,只是因为将实验视为节点并将它们与边缘连接起来似乎很自然。如果我能找到一种快速完成这两个查询的方法,Hypertable 似乎是另一种可能性。

那里有太多的 noSQL 数据库,我可能缺少适合我需要的数据库。建议?

4

1 回答 1

1

您是否研究过可以满足您需求的 NewSQL 数据库?我建议您仔细查看 Starcounter,它是真正的 ACID,写入时没有锁定,并且支持对基本属性和组合索引进行索引。

我认为面向对象和以内存为中心的事务数据库将适合您的需求。然后,您可以拥有派生相同类的不同实验和测量,您可以选择查询每种类型以及分别查询继承的类型。

如果您没有超过 TB 的数据,则您不需要迄今为止研究过的大数据数据库。他们真的很擅长他们的工作,但我认为您应该研究其他 NoSQL 数据库。当使用面向对象的内存数据库(当然,所有写入都在持久存储介质上进行保护)时,与关系数据库相比,您可以获得大约 4 倍的压缩率,因此 TB 的数据通常就足够了。

今天在数据库丛林中很难找到自己的出路,所以我理解找到适合您要求的东西的难度。在你的情况下 - 我的 5 美分交易 NoSQL 数据库是真正的 ACID 并具有 SQL 查询支持!

于 2013-04-02T06:42:50.467 回答