Перейти к содержанию

Конструктор команд Redis

Превратите список ключей и значений в готовые команды для Redis.

Ключи и значения (один элемент на строку)
Выходные данные

Конструктор команд Redis

Вставьте список ключей и значений, один элемент на строку, и этот инструмент превратит их в команды Redis, готовые к использованию в redis-cli. Выберите структуру данных — строку, хеш, список, множество или отсортированное множество — и инструмент сгенерирует соответствующую команду записи для каждой строки: SET для строк, HSET для хешей, RPUSH для списков, SADD для множеств и ZADD для отсортированных множеств. Это идеально для заполнения кеша, импорта хеша из экспорта таблицы или создания тестовых данных без ручного ввода каждой команды.

Опции определяют формат вывода команд. Префикс ключа добавляется к каждому ключу, так что простой список ID становится "user:1", "user:2" и так далее. Время истечения в секундах добавляет одну команду EXPIRE для каждого уникального ключа. Пакетная обработка переключается между простыми последовательными командами, заголовком пайплайна для redis-cli --pipe и транзакцией MULTI/EXEC, которая выполняется атомарно. Экранирование обертывает каждое значение в кавычки с экранированием обратных слешей, так что пробелы и кавычки не разрушат команду.

Каждая строка должна содержать поля, которые требует её структура: "ключ значение" для строк, списков и множеств; "ключ поле значение" для хешей; "ключ оценка значение" для отсортированных множеств, где оценка должна быть числом. Строка с недостаточным количеством полей или нечисловой оценкой пропускается. Вывод отображается как обычные команды redis-cli или как байты RESP протокола и всегда заканчивается примером SCAN, построенным на основе вашего префикса ключа.

Всё работает локально в вашем браузере. Ключи и значения, которые вы вставляете, и команды, сгенерированные из них, никогда не загружаются никуда. Скопируйте результат, загрузите его в виде .txt файла или отправьте в другой инструмент.

FAQ

Какой формат должна иметь каждая строка списка ключ/значение?
Один элемент на строку, поля разделены пробелами: "ключ значение" для строк, списков и множеств; "ключ поле значение" для хешей; "ключ оценка значение" для отсортированных множеств. Всё после необходимых полей становится значением, так что значения могут содержать пробелы.
Почему SCAN вместо KEYS?
KEYS сканирует весь набор ключей в одном блокирующем вызове, что может остановить production сервер. SCAN проходит по набору ключей небольшими шагами на основе курсора, поэтому сгенерированный пример всегда использует SCAN с префиксом вашего ключа в качестве шаблона соответствия.
Чем отличается опция pipeline от MULTI транзакции?
Пайплайнирование просто объединяет команды в одну поездку туда-обратно для скорости — каждая по-прежнему выполняется независимо. MULTI/EXEC группирует их в одну атомарную транзакцию: либо применяются все команды в блоке, либо ни одна не применяется.
Что на самом деле защищает экранирование значений?
Если экранирование включено, каждое значение обертывается в двойные кавычки с экранированными внутренними кавычками и обратными слешами, так что значение, содержащее пробелы или пунктуацию, остается одним аргументом вместо того, чтобы разбить команду на части.
Загружаются ли мои данные где-нибудь?
Нет. Список команд генерируется полностью в вашем браузере — ничто из того, что вы вставляете, не отправляется на сервер или в какой-либо экземпляр Redis.