Част от това е отговорено тук, но това не е напълно дубликат, тъй като питате за разрешени знаци, както и за конвенции.
Що се отнася до валидните знаци в ключовете Redis , ръководството обяснява това напълно:
Ключовете Redis са двоично безопасни, това означава, че можете да използвате всяка двоична последователност като ключ, от низ като "foo" до съдържанието на JPEG файл. Празният низ също е валиден ключ.
Няколко други правила за ключовете:
Много дългите ключове не са добра идея, например ключ от 1024 байта е лоша идея не само по отношение на паметта, но и защото търсенето на ключа в набора от данни може да изисква няколко скъпи сравнения на ключове. Дори когато задачата е да се съпостави съществуването на голяма стойност, прибягването до хеширането й (например с SHA1) е по-добра идея, особено от гледна точка на паметта и честотната лента.
Много късите клавиши често не са добра идея. Няма смисъл да пишете "u1000flw" като ключ, ако вместо това можете да напишете "user:1000:followers". Последният е по-четлив и добавеното пространство е незначително в сравнение с пространството, използвано от самия ключов обект и стойностния обект. Докато късите клавиши очевидно ще консумират малко по-малко памет, вашата работа е да намерите правилния баланс.
Опитайте се да се придържате към схема. Например "object-type:id" е добра идея, както в "user:1000". Точките или тирета често се използват за полета с няколко думи, като "comment:1234:reply.to" или "comment:1234:reply-to".
Максималният разрешен размер на ключа е 512 MB.