我正在寻找支持以下功能的数据库:
1) 数据库中的记录就像 Python 字典或 Perl 哈希。例如,“购买”记录可能如下所示:
<purchase 5436> = { product: "BMX Bike", price: 99.50, city: "Springfield" }
2) 记录存储在可变长度的数组中。数据库包含很多这样的数组。例如,购买表可能如下所示:
purchase array 1: [ <purchase 5436>, <purchase 54>, <purchase 112> ]
purchase array 2: [ <purchase 76>, <purchase 5984>, <purchase 1102>, <purchase 12> ]
...
purchase array 658: [ <purchase 10142>, <purchase 35>, <purchase 6458>, <purchase 23> ]
3)我希望能够对这个数据库进行两种查询:
3a) 计算匹配各种标准的记录数。例如,有多少购买价值超过 50?我知道很多支持这一点的数据库。
3b) 计算记录按一定顺序出现的次数。例如,有多少个阵列购买了超过 50 个,然后在“Springfield”中进行了购买?我不知道您将使用哪种数据库来执行此操作。
编辑:对 Steve Haigh 的回应:我应该提到速度很重要,而且这个数据库需要支持千兆字节的数据。例如,可能有 1,000,000,000 个购买数组,我想计算其中有多少是在“Springfield”中购买,然后在“Hometown”中购买(注意顺序很重要)。也许我错了,但我认为关系数据库对于这个目的来说太慢了。