带有node.js绑定的磁盘查找表

时间:2013-02-04 17:11:01

标签: node.js key-value lookup-tables

对于一个项目,我正在创建一个排队库,基本上将URL存储在一个Set中(它实际上是一个对象,我将键设置为true,但是可以将其视为一个数组),因此队列只接受每个url一次。这非常有效,但我遇到的问题是有很多URL,因此RAM的使用率非常高。

因此我想使用磁盘上的键值存储(实际上只需要密钥,不知道是否有不同的方法),具有以下要求:

  • 无需将整个数据集加载到RAM中
  • 快速查找
  • Node.js绑定

它不必太安全(偶尔丢失数据不是一个大问题,低RAM要求更重要),即使我在这种情况下使用Node.JS这个查找不一定需要运行异步。

实际上,一个侧面问题是,是否有一种比磁盘键值方法更好的方法。一个术语会很好。 Lookuptables总是让我找到数据集(IP,邮政编码等)

2 个答案:

答案 0 :(得分:0)

我使用带有单列的sql表(用于存储url)。比redis更好地控制内存使用(它几乎全部存储在内存中)。

  • 轻松检查是否已有相同的值
  • 易于插入
  • 易于删除一个元素

答案 1 :(得分:0)

如果真的“不必太安全”,另一种设计是将所有内容存储在内存中,但限制存储的URL数量,例如使用LRU缓存。

您可以在node.js中使用缓存(很容易找到via Google),也可以在同一台计算机上使用单独的memcached服务器。