Купить Корзина
  • Домены и сайты
  • Облако и IT-инфраструктура
  • Вход

Получить консультацию

Ответим на вопросы, расскажем о конфигурациях, поможем с переносом, подберем оборудование, подготовим коммерческое предложение

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Персональный менеджер ответит на ваши вопросы и проведет через все этапы заключения договора: — подберет оборудование — сформирует коммерческое предложение — поможет с миграцией сервера к нам

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Или просто оставьте номер телефона, и мы перезвоним вам

  • Телефон в Москве

    +7 495 580-11-11
  • Бесплатный звонок по России

    8 800 555-34-78
  • Или обратитесь в наши офисы

    Региональные номера
    1. База знаний
    2. Рег.облако
    3. Облачные серверы
    4. Установка программного обеспечения
    5. Что такое Redis

    Что такое Redis

    В этой статье мы расскажем, что такое Redis, какие данные она может обрабатывать, а также покажем базовый набор команд для работы.

    Что такое Redis

    Redis (англ. remote dictionary server) — это нереляционная система управления базами данных. Для хранения данных она использует формат «ключ‑значение». Система написана на языке С и имеет открытый исходный код. Первая версия программы появилась 10 мая 2009 года благодаря разработчику Сальваторе Санфилиппо.

    что такое редис

    Linux Redis

    Redis считается одной из самых производительных СУБД — время отклика сервера составляет доли миллисекунд. Поэтому система востребована в сферах, где нужно работать с большими массивами данных: разработка игр, аналитика, работа с геоданными, поддержка онлайн-чатов, службы такси, потоковая передача мультимедиа и других.

    Хранилище используется не только как база данных, но и как средство кэширования и брокер сообщений. Сервер хранит данные не строго в схемах (таблицах, строках и столбцах), а в самих структурах данных. Это позволяет гибко настраивать систему. Кроме того, можно использовать облачный вариант хранилища.

    Преимущества

    В отличие от стандартных хранилищ данных, решение remote server имеет следующие преимущества:

    • 1.
      Высокая производительность. Редис поддерживает хранение данных на сервере исключительно в кэше, поэтому их не приходится перемещать на диск. Это повышает пропускную способность и сокращает задержку ядра — система способна выполнить миллион операций в секунду.
    • 2.
      Масштабируемость. В Redis возможна настройка кластерной архитектуры. Благодаря этому можно создавать проекты, которые будут работать надежно и стабильно. Также можно выбрать размер кластера или нарастить его: доступны варианты горизонтального и вертикального масштабирования.
    • 3.
      Асинхронная репликация. Она позволяет копировать информацию на несколько связанных серверов. Таким образом можно распределить запросы между несколькими серверами, и это положительно повлияет на скорость чтения и восстановления данных при сбое.
    • 4.
      Поддержка различных структур данных. Обычно хранилища работают с ограниченным набором данных. В отличие от них Redis обрабатывает разнообразные типы данных: строки, списки, потоки, JSON, битовые массивы, гиперлоги и другие.
    • 5.
      Функциональность. С помощью Redis можно создать сложный код с меньшим количеством простых строк (для хранения, использования и организации доступа к данным). Например, вы хотите настроить перемещение данных в хранилище одной строкой кода. Обычно, чтобы реализовать эту задачу, потребуется написать код со сложной структурой. В Redis для этого достаточно использовать хэш данных. Языки, которые поддерживает Redis, — Java, PHP, C++, JavaScript, Node.js, Python, Ruby, Go и другие.

    Несмотря на большое количество преимуществ, СУБД Redis не универсальна и подходит для ограниченного списка задач и проектов.

    Для чего применяется Redis

    Рассмотрим, зачем нужен Redis:

    • Кэширование данных основного хранилища. Redis cache помогает снизить нагрузку на основное хранилище и само приложение без дорогостоящего наращивания мощностей на серверах.
    • Создание чатов и очередей. Высокая производительность позволяет настраивать «быстрые» ленты новостей в блогах и социальных сетях, обновление лент с комментариями и чатов в режиме реального времени.
    • Брокер сообщений. Позволяет разгрузить веб-сервисы в распределённой системе: при отправке сообщений не требуется дополнительное время на ресурсоёмкие операции (например, маршрутизацию или поиск приёмников).
    • СУБД для крупных приложений. Remote server позволяет равномерно распределить сетевой трафик.
    • Хранение сессий. Благодаря высокой доступности, отказоустойчивости и масштабируемости в Редис удобно хранить данные сессий. Например, содержание корзин пользователей в интернет-магазине или части HTML-кода страниц.
    • Машинное обучение. Redis хранит информацию в скоростном хранилище. Это хранилище данных работает по принципу ОЗУ в компьютере. Оно позволяет быстро обрабатывать большие объемы данных и автоматизировать принятие решений.
    • Хранение промежуточных данных, например из форм голосования или таблиц со сбором результатов.
    • Хранение «быстрых» данных, которыми оперируют при аналитике, анализе данных, на торговых сервисах. Это подходит для решений с потоковой передачей, по типу Amazon Kinesis и Apache Kafka.
    • Таблицы лидеров в играх. Структура данных Redis Sorted Set позволяет создавать ранжированные списки в режиме реального времени. Чтобы внести одно изменение, достаточно обновить результат конкретного пользователя, а не всей таблицы.

    Для запуска Redis используется команда:

    redis-server

    Структура хранения данных Redis

    Рассмотрим основные типы данных, которые поддерживает Редис-хранилище.

    Строки

    Как и многие другие системы управления, Редис может работать со строками. Это базовый тип данных. Максимальная длина строки в Redis — 512 МБ.

    Строки чаще всего используются:

    • для хранения сессий,
    • для настройки очередей (например, управления заданиями или обмена сообщениями),
    • сбора информации об использовании товаров и услуг в реальном времени.

    Для вызова строки используется команда:

    GET line_name

    Вместо line_name укажите вашу строку.

    Для удаления строки используется команда:

    DEL line_name

    Вместо line_name укажите вашу строку.

    Списки

    Списки — это отсортированные строки. При редактировании элементы можно добавлять как в начало, так и в конец списка, тем самым формируя задания очереди. Хранилище читает списки слева направо. Список может содержать более четырех миллиардов элементов.

    С помощью команд lpush и rpush можно добавлять новые значения в начало или конец списка.

    Чтобы записать значение в начало списка, выполните команду:

    lpush key_name "value"

    Где:

    • key_name — название списка,
    • value — значение, которое нужно добавить в список.

    Чтобы добавить значение в начало списка, выполните команду:

    rpush key_name "value"

    Где:

    • key_name — название списка,
    • value — значение, которое нужно добавить в список.

    Списки можно использовать для формирования потоков сообщений на стене или главной странице в социальных сетях, в таблицах лидеров или дашбордах с результатами голосований, а также новостных лент.

    Множества

    Множества позволяют выполнять сложные операции: например, пересечения и объединения. Несмотря на их неупорядоченность, такие операции проводятся быстро. Добавление или удаление элементов занимает равное количество времени. Функция SADD следит за тем, чтобы в коде не встречалось повторений. С её помощью удобно проверять значения на уникальность.

    Множества могут быть полезны:

    • для отслеживания уникальных IP-адресов пользователей, которые посещали сайт,
    • для установки фильтров на стоп-слова в комментариях с помощью команды SET,
    • для анализа поисковых запросов на конкретную категорию товаров и др.

    Хэши

    Хэш Redis — это таблица соответствия полей со значениями по модели «ключ-значение». Одна пара «ключ-значение» называется хэш-значением. Хэши используются для представления объектов.

    Предположим, вы авторизовались в электронном журнале — в нём хранятся данные о школьной успеваемости. На экране отображается список учеников и их оценки за контрольную работу. Если представить этот список в формате полей и значений, поле — это фамилия ученика, а значение — оценка. В качестве хэш-значения здесь выступает информация об одном ученике, а в качестве хэша — список учеников с их оценками.

    В Redis хэш-таблицы могут хранить 2³²-1 пар вида «ключ-значение». Это более 4 миллиардов хэш-значений.

    Все возможности, а также работа с командами подробно описаны в официальной документации.

    Помогла ли вам статья?

    Спасибо за оценку. Рады помочь 😊

     👍
    Специальные предложения
    • Бесплатный хостинг для сайта
    • Дешевый хостинг
    • Бесплатный VPS-сервер
    • Дешёвые VPS
    Рассылка Рег.ру

    Лайфхаки, скидки и новости об IT

    Даю согласие на получение рекламных и информационных материалов

    Домены и сайты
    • Домены
    • Хостинг
    • Создание сайтов
    • SSL-сертификаты
    • VPS и VDS серверы
    • Whois
    • Магазин доменов
    Облако
    и IT-инфраструктура
    • Облачные серверы
    • Частное облако
    • Облачное хранилище
    • Kubernetes в облаке (K8S)
    • Облачные базы данных
    • Выделенные серверы
    Полезное
    • Стоимость услуг
    • Cпособы оплаты
    • База знаний
    • Документы
    • ЭДО
    • Партнерам
    • Сообщить о нарушении
    • РБК: новости России и мира сегодня
    • Новости компаний РФ
    • РБК Инвестиции: курсы валют
    Компания
    • О компании
    • Контакты
    • Офисы
    • Новости
    • Акции и скидки
    • Блог
    • Отзывы клиентов
    8 800 555-34-78 Бесплатный звонок по России
    +7 495 580-11-11 Телефон в Москве
    • vk
    • telegram
    • ok
    • moikrug
    • youtube
    • twitter
    • Облачная платформа Рег.ру включена в реестр российского ПО Запись №23682 от 29.08.2024
    • © ООО «РЕГ.РУ»
    • Политика конфиденциальности
      Политика обработки персональных данных
      Правила применения рекомендательных технологий
      Правила пользования
      и другие правила и политики
    • Нашли опечатку?
      Выделите и нажмите Ctrl+Enter
    • Мы используем cookie и рекомендательные технологии для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера