This is a good example of Redis forcing you to denormalise your data - each item that is tagged gets a set of tags, while each tag gets a set of item IDs.
Simon, not sure what you meant by "denormalise" here but what you've described sounds fully normal to me.
It's up to you to manually maintain both of those sets, which means the information about what is tagged with what ends up stored twice and there's a risk that it could get out of sync.
Simon, not sure what you meant by "denormalise" here but what you've described sounds fully normal to me.