Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що означає модель "key-value" у контексті Redis?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Модель "key-value" означає, що всі дані в Redis зберігаються у вигляді пар "ключ - значення": ключ - унікальне ім'я (рядок), за яким можна миттєво звернутися до даних, а значення - дані будь-якого підтримуваного типу (String, List, Set, Hash, ZSet, Stream тощо). **Ключове:** на відміну від простих key-value систем на кшталт Memcached, у Redis "value" може бути повноцінною структурою даних, а не лише рядком, що дає O(1) доступ до даних за ключем і гнучкість типів під одним інтерфейсом.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)Зображення**"Key-value" модель** у контексті Redis означає, що всі дані зберігаються у вигляді **пар "ключ - значення"**. Кожен запис у Redis складається з двох елементів: ```javascript ключ → значення ``` ### Суть моделі Redis не зберігає рядки в таблицях, як SQL-бази. Він являє собою **величезний асоціативний масив (словник)**, де: - **ключ (key)** - унікальне ім'я (рядок), за яким можна миттєво звернутися до даних; - **значення (value)** - дані будь-якого підтримуваного типу (String, List, Set, Hash, ZSet, Stream тощо). ### Приклад ```bash SET user:1 "Anna" GET user:1 ``` Тут: - ключ - `user:1`, - значення - `"Anna"`. Redis миттєво знаходить значення за ключем, як словник у пам'яті. ### Приклад з іншими типами ```bash HSET user:1 name "Anna" age "27" LPUSH messages "hi" "hello" "bye" ZADD scores 100 "Anna" 120 "Ivan" ``` Усі три записи - пари `key → value`, але **value** у кожного має свій тип даних: - `user:1` - хеш (Hash), - `messages` - список (List), - `scores` - відсортована множина (Sorted Set). ### Чому Redis key-value, а не просто key-string Хоча Redis базується на моделі key-value, "value" у ньому може бути **структурою даних**, а не лише рядком. Це відрізняє Redis від простих key-value систем на кшталт Memcached. ### Переваги моделі - **O(1)** доступ до даних за ключем (дуже швидко). - Простота архітектури - немає таблиць, індексів, схем. - Гнучкість: різні типи значень під одним інтерфейсом "ключ → значення". - Масштабованість: ключі легко розподіляються по кластеру. ### Застосування - Кешування (ключ - запит, значення - результат). - Сесії користувачів. - Лічильники й токени. - Черги, тимчасові сховища, рейтинги тощо. Таким чином, **key-value модель у Redis** - це основа, де все будується навколо унікальних ключів, до яких прив'язані значення будь-якого типу, оброблювані напряму в оперативній пам'яті.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.