Redis – это хранилище данных в памяти. Это означает, что он хранит данные в системной памяти. Возможность хранить данные в ОЗУ очень важна для повышения производительности, поскольку не требует полного кругового обращения к диску для выборки данных.
Однако хранение данных в памяти имеет существенный недостаток. Когда размер данных растет экспоненциально, для обработки данных требуется больший объем ОЗУ. Добавление дополнительной оперативной памяти по мере роста объема данных может быть дорогостоящим и может привести к совместимости оборудования и сбоям.
Хотя хранилище и размер влияют на все системы баз данных, это больше заявлено в базах данных в памяти, таких как Redis или Memcached. Следует иметь в виду, что Redis не разрабатывается как центральная база данных для крупных приложений.
Чтобы отслеживать, что происходит в вашей базе данных Redis, нам нужен способ отслеживать использование памяти.
В следующих подразделах руководства мы изучим различные команды для изучения использования памяти в нашем кластере Redis.
Команда памяти Redis.
Redis предоставляет вам команду CLI для просмотра подробной информации об использовании памяти кластером.
Чтобы запустить команду, откройте терминал и введите:
redis-cli info memory
Приведенная выше команда должна дать пример вывода, как показано на снимке экрана ниже:
Давайте обсудим, что влечет за собой каждая запись из приведенной выше команды. Стоит отметить, что мы рассмотрим только самые важные из них. Дополнительную информацию см. В документации.
- Used_memory – эта запись показывает общий размер памяти, выделенной кластеру Redis. Проще говоря, он представляет собой максимальный размер, который может хранить кластер Redis. Значение выражается в байтах.
- Used_memory_human – эта запись показывает значение used_memory, выраженное в удобочитаемом формате.
- Used_memory_rss – показывает общее количество байтов, выраженное операционной системой.
- Used_memory_peak – показывает общее количество байтов, потребленных Redis.
- used_memory_peak_human – аналогично приведенной выше записи в удобочитаемом формате.
Выше приведены некоторые важные записи из команды INFO MEMORY. Вы можете узнать больше в официальной документации Redis: https://redis.io/commands/INFO
Информация о памяти ключа Redis
Вы можете использовать две основные команды, если хотите просмотреть ключи в хранилище данных Redis.
- Dbsize – команда Redis dbsize показывает общее количество допустимых ключей в конкретной базе данных.
- Info keyspace – эта команда показывает ключи в каждой базе данных, доступной в кластере Redis.
Примеры:
redis-cli -n 0 dbsize (integer) 59
Приведенная выше команда показывает количество действительных ключей в базе данных с индексом 0.
redis-cli info keyspace # Keyspace db0:keys=59,expires=0,avg_ttl=0
Приведенная выше команда предоставляет более подробную информацию о ключах.
Вы можете использовать команду MEMORY USAGE, чтобы увидеть количество байтов, использованных конкретным ключом и значением.
Синтаксис такой:
MEMORY USAGE <key>
Например, ниже показано количество байтов, необходимое для хранения ключа «AZ».
MEMORY USAGE AZ (integer) 57
Выходные данные показывают количество байтов, занятых указанным ключом и значением.
Имейте в виду, что приведенная выше команда показывает только информацию о целевом ключе. Следовательно, вам необходимо знать, какой ключ отслеживать.
Вывод
В этой статье мы обсудили мониторинг использования памяти в кластере Redis. Мы также рассмотрели, как просмотреть использование памяти для определенного ключа в Redis.