【发布时间】:2016-03-20 02:06:20
【问题描述】:
我们有一个非常简单的用例,但我们很难选择最适合我们需求的数据库解决方案。
要求:
一个 OLAP 数据库,它允许我们通过不同的属性(数千个)查询数百万条记录,并且可以保存一个主键。上传数据时也必须部分快速。
用例:
我们有一个用户数据库,每个用户都属于不同的属性。最多有 10k 个属性,但大多数用户每个属性少于 30 个。
示例表:
用户/属性
user1/1,5,10
user2/7,5,9,24,42,1090
user3/9
user4/98,1049,2000
。 .
理想的场景是有一个列式存储数据库,其中每个属性都是一列,并且数据库允许超过 10k 个属性。
Monetdb 正好适合我们,但有两个非常关键的缺点:
- 批量负载非常低,在我们的测试中,它为我们提供了每条上传记录 5 毫秒的时间。上传 100 万条记录需要一个多小时,非常慢。
- 重复主键上的批量加载失败(我们希望更新该“重复键上”的属性值,但无法使用此数据库)。
我们也在考虑德鲁伊,但它更多的是“事件”驱动。添加每个属性时,您需要一个时间戳。没有被排除在外,但它并不完全符合我们的需要。
如果需要,我可以提供更多解释,任何指导将不胜感激!
谢谢
【问题讨论】: