Ключ-значение. Обзор лекции 1.Ключ-значение 2.Колоночные 3.Документо-ориентированные 4.Графовые 2.

Презентация:



Advertisements
Похожие презентации
Коллекции классов Лекция 12. С помощью коллекций вместо создания структур данных программист использует готовые структуры данных, не заботясь об их реализации.
Advertisements

Ассоциативные списки Поиск данных происходит не по индексу или положению объекта, а по его ассоциативной связи: public interface Map { // Доступ к объектам.
Всеволод Дёмкин Новые нереляционные системы хранения данных.
Множества. Множество- ограниченный, неупорядоченный набор различных элементов одного типа. Примеры множеств: Множество арабских цифр. Множество знаков.
АССОЦИАТИВНЫЕ КОЛЛЕКЦИИ Лекция 6 1. Отличие от последовательных 2 В последовательной коллекции каждый элемент ассоциируется с номером, начиная с 0. В.
Множественный тип данных А+В А*В. Множество - конечная совокупность элементов, принадлежащих некоторому базовому типу. Базовый тип –перечислимые типы.
«Программирование с использованием множеств» Delphi. Тема 8:
Составные типы данных Лекция 8-9. Ломаско Павел Сергеевич9 августа 2012 г.
Развитие платформы облачных вычислений Microsoft Windows Azure Лекция 6 Windows Azure Storage Сафонов Владимир Олегович Профессор кафедры информатики Заведующий.
Механизмы поиска в БД Структуры индексов. Основные виды индексов Простые индексы для упорядоченных файлов Вторичные индексы для неупорядоченных файлов.
Архитектура, возможности и методы использования платформы облачных вычислений Microsoft Windows Azure Лекция 6 Windows Azure Storage Сафонов Владимир Олегович.
Статичні структури даних.. 2 Статические данные переменная (массив) имеет имя, по которому к ней можно обращаться размер заранее известен (задается при.
Задачи поиска в структурах данных Поиск - нахождение какой-либо конкретной информации в большом объеме ранее собранных данных. Данные делятся на записи,
50/codd.pdf 50/codd.pdf
Одномерные массивы. Массив - это упорядоченная последовательность данных одного типа, объединенных под одним именем. Проще всего представить себе массив.
Винников Олег. NET Developer. Почему NoSQL Особенности NoSQL решений Модели данных NoSQL Масштабирование MongoDB.
Базы данных в электронных таблицах. Что называется базой данных? Какие примеры баз данных вы знаете? Какие существуют формы представления баз данных?
Технология хранения, поиска и сортировки информации в базах данных
Списки в языке Пролог. Определение Список упорядоченное множество объектов одинакового типа. Формально это определение соответствует определению массива.
МАССИВЫ Структурные типы данных В тех случаях, когда какой-либо объект описывается рядом однотипных значений (например, ежедневное количество осадков на.
Транксрипт:

Ключ-значение

Обзор лекции 1.Ключ-значение 2. Колоночные 3.Документо-ориентированные 4. Графовые 2

1. Базы данных типа «ключ- значение» ( ) 3

Свойства баз «ключ-значение» Простейшее NoSQL хранилище, быстрая запись, но доступ только к одной ячейке Хранит хэш-таблицу ключей, где каждый ключ связан с непрозрачным бинарным объектом Легко горизонтально масштабируется, не поддерживает другие типы данных Идеально для приложений с большими массивами простых данных Варианты использования: значения датчиков, изменение курсов акций, кэширование, результаты промежуточной обработки. Пример: Redis, Amazon DynamoDB 4

Redis – хранилище «ключ- значение» Ключи в Redis бинарно-безопасные (binary safe) строки. Слишком длинные ключи плохая идея, не только из-за занимаемой памяти, но так же и в связи с увеличением времени поиска определенного ключа в множестве в связи с дорогостоящим сравнением. Хорошая идея придерживаться схемы при построении ключей: «object-type:id:field». «Шпаргалка по Redis» 5

Redis. Информация API: Tons of languages, Written in: C, Concurrency: in memory and saves asynchronous disk after a defined time. Append only mode available. Different kinds of fsync policies. Replication: Master / Slave, Misc: also lists, sets, sorted sets, hashes, queues. Cheat-Sheet: cheatsheet-v1.pdfhttp://masonoise.files.wordpress.com/2010/03/redis- cheatsheet-v1. pdf Slides Admin UI 6

Типы данных Redis Строки (strings). Базовый тип данных Redis. Строки в Redis бинарно-безопасны, могут использоваться так же как числа, ограничены размером 512 Мб. Списки (lists). Классические списки строк, упорядоченные в порядке вставки, которая возможна как со стороны головы, так и со стороны хвоста списка. Максимальное количество элементов Множества (sets). Множества строк в математическом понимании: не упорядочены, поддерживают операции вставки, проверки вхождения элемента, пересечения и разницы множеств. Максимальное количество элементов Хеш-таблицы (hashes). Классические хеш-таблицы или ассоциативные массивы. Максимальное количество пар «ключ-значение» Упорядоченные множества (sorted sets). Упорядоченное множество отличается от обычного тем, что его элементы упорядочены по особому параметру «score». Структуры данных, используемые в Redis 7

Операции Redis Cоздание, выборка, модификация, удаление и базовая информация об объектах. set test:1:string "my binary safe string" get test:1:string getset test:1:string "other value set test:1:vlaue "487 rename test:1:vlaue test:1:value exists test:1:value del test:1:value keys test:1:* 8

Операции Redis 2 Время жизни redis :6379> ttl test:1:string > expire test:1:string 6000 Списки rpush test:1:messages "Hello, world!« lrange test:1:messages 0 2 llen test:1:messages lpop test:1:messages 9

Транзакции в Redis MULTI начать запись команд для транзакции. EXEC выполнить записанные команды. DISCARD удалить все записанные команды. WATCH команда, обеспечивающая поведение типа «check-and-set» (CAS) транзакция выполняется только в случае, если другие клиенты не изменили значение переменной. Иначе EXEC не выполнит записанные команды. 10

Pub/Sub, сообщения в Redis redis :6379> SUBSCRIBE messages redis :6379> PUBLISH messages "Hello world!" (integer) 1 redis :6379> SUBSCRIBE messages Reading messages... (press Ctrl-C to quit) 1) "subscribe" 2) "messages" 3) (integer) 1 1) "message" 2) "messages" 3) "Hello world!" 11

Репликация в Redis 12 Клиент Мастер Слейв Чтение Слейв Запись Чтение