找到正确的数据结构

时间:2018-07-27 10:09:45

标签: database data-structures

我需要存储大约1000万个字符串,每个字符串大约500个字符。 我在AWS上,因此可以使用可用的结构。

我的用例如下:

  • 从多个客户端读取/写入元素
  • 存储唯一元素
  • 检查它是否包含特定元素

然后:


  • 获取随机元素
  • 删除特定元素 (这样,我将其从第一个结构中删除,并放入相同类型的第二个结构中)

OR

  • 维护“已处理”布尔属性
  • 获取满足此属性的随机元素

起初,我虽然使用队列或类似方法,但是随着新字符串的不断出现,但是队列不允许进行唯一性检查和随机访问。

我检查的大多数数据库都不满足“获取随机元素”功能,并且对于我的用例来说似乎有些过高,因为我只需要一两列。

我也一直在考虑通过节点部署服务并使用javascript数组进行管理。但是我不确定数组中有这么多元素的“检查它是否包含特定元素”功能。

1 个答案:

答案 0 :(得分:0)

我最终选择使用Redis Set数据结构。它不能保证2个不同的客户端不会同时读取同一属性。但是它允许在对我的值保留属性的同时随机查询。