存储数组的NoSQL解决方案?

时间:2011-04-07 00:49:17

标签: python linux nosql

我需要一个可扩展的NoSql解决方案来将数据存储为数组,用于许多字段&时间戳,其中键是fieldtimestamp的组合。

数据将存储在以下方案中:

KEY - > “FIELD_NAME.YYYYMMDD.HHMMSS”

VALUE - > [v1,v2,v3,v4,v5,v6](v1..v6只是floats

例如,假设:

FIELD_NAME =“TOMATO”

TIME_STAMP =“20060316.184356”

VALUES = [72.34,-22.83,-0.938,0.265,-2047.23]

我需要能够检索 VALUE (整个数组)给定FIELD_NAME&的组合。 TIME_STAMP

查询 VALUES [“ TOMATO.20060316.184356 ”]将返回矢量[72.34,-22.83,-0.938,0.265,-2047.23]。数组的读取应该尽可能快。

然而,我还需要一种方法来存储(就地)数组中的标量值。假设我想将时间戳TOMATO上的2006/03/16.18:43:56的第一个元素指定为500.867。在这种情况下,我需要有一个快速机制来执行此操作 - 例如:

VALUES [“ TOMATO.20060316.184356 ”] [0] = 500.867(这会在磁盘上更新)

任何想法哪个NoSql解决方案最适合这个(如果它有python接口那么大加?)我正在寻找一个快速而强大的解决方案。我的数据需求将增长到大约20 [TB]。

2 个答案:

答案 0 :(得分:3)

听起来像MongoDB会很合适。 PyMongo是api。

答案 1 :(得分:0)

您的数据结构严谨且定期;你在NoSQL和更传统的数据库中看到了什么好处?

我认为MySQL Cluster听起来是为你的问题量身定做的。

修改

@ user540009:我同意MySQL的单机或镜像实例大幅减速超过半太字节,没有人想要处理手动分片; MySQL Cluster旨在解决这个问题,我已经阅读了(尽管不是个人玩过的)高达110TB的实现。