javascript - 如何做 Redis 树并优化它 + Node.js

标签 javascript node.js optimization tree redis

我需要有多个 node.js worker 使用的缓存数据。下面是该数据的层次结构,它有 3 层深:

Redis data structure

每个类别都有相同的子类别,并且它们都是固定大小的。 每个“数据”包含 4 个字段,其中一个是唯一 ID。会有相当多的“数据”插入和删除。

在 Redis 中实现此类数据库的最佳方法是什么? cat+subcat 的哈希集,因为我有固定数量的哈希集,并且由于每个字段都有唯一 ID,所以也为 Data 哈希集?

谢谢!

最佳答案

您可以通过多种方式实现这一目标。 一种是存储名称连接的哈希集

"category:subcategory:data" -> key1: value1, key2: value2, ...

如果您知道自己在寻找什么,您可以通过它获取您的信息。 如果搜索是您的问题,那么您需要向 redis 服务器添加更多调用,这会对性能产生影响。但这完全取决于您希望如何搜索该数据。

作为元信息,您可以创建单独的哈希集以方便不丢失数据。

List of categories
Hashset of categories -> SubCategories
categories:subcategories -> 4data points
categories:subcategories:data -> keys and values.

关于javascript - 如何做 Redis 树并优化它 + Node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32123225/

相关文章:

javascript - 日期javascript

javascript - 从网页获取所有图像并以编程方式保存到磁盘(NodeJS 和 Javascript)

Hibernate巨查询优化

javascript - PHP 将二进制转换为文本并返回

javascript - 排行榜示例,与 'selected_name' 返回值混淆

node.js - 使用 Express 和 Sequelize 与 SQL Server 登录失败

node.js - Sequelize.sync({force : true}) keeps obsolete model schema

java - Java 中的快速按位操作

haskell - 为什么不将输入和输出上具有相同数据结构(相同暗淡)的组合自递归函数与其他递归内联在一起?

javascript - 相当于 jQuery 的 $.when() 的 Promise 的普通 ES6 等价物是什么?