使用Node.js将简单的表从SQL转换为Redis

对于node.js / javascript和redis,我还是比较新的,所以如果这个问题很简单,请和我一起。

假设我有一个SQL表,它包含一个名为userid(唯一,主键,自动增量),用户名(varchar)和密码(Varchar)的字段。

现在假设我想在Redis中重新创build这个表。 根据我的理解,最好为这个表使用“散列”。 因此我的node.js代码有一个创build用户的函数:

function newUser(username,password) { //incr the userid client.incr("userid",redis.print); //Creating the user client.get('userid',function(err,userid){ client.hmset("users", "id",userid,"name",username,"password",password); }); } 

它是否正确?

另外,我如何访问存储在他的哈希中的信息? 我尝试以下,但只能返回1行:

 client.hgetall('users',function(err,user){ console.log('User Name: ' + user.name +" password = "+user.password); }) 

最后,我将如何join2个哈希(就像我需要join的2个表一样)?

谢谢

第一个Redis是非常灵活的,所以你可以把键名和数据结构用于用户,不要像mySQL那样以结构化的方式来处理这个思想。

一个整数来跟踪用户ID。

global:index:users

将用户密码存储为string

user:<id>:password

将用户信息存储在散列中

user:<id>

name=>username

email=>user email

some other key=>some other data

得到用户名密码,因为我们不想看整个user:<id>来获取谁的密码是。

user:<passwordHash>:id

user:<name>:id