1 / 19

Key-Value системы и их применение к моделям с наследованием структуры данных

Московский физико-технический институт. Key-Value системы и их применение к моделям с наследованием структуры данных. Выпускная квалификационная работа студента гр.617 Шевцова А. В. Научный руководитель Евдокимов А.В., к.ф.-м.н ., доцент Научный консультант Нарыжный И.Г. Введение.

velika
Télécharger la présentation

Key-Value системы и их применение к моделям с наследованием структуры данных

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Московский физико-технический институт Key-Value системы и их применение к моделям с наследованием структуры данных Выпускная квалификационная работа студента гр.617 Шевцова А. В. Научный руководитель Евдокимов А.В., к.ф.-м.н., доцент Научный консультант Нарыжный И.Г.

  2. Введение • Предпосылки: • Любому Enterprise-приложению необходима БД, позволяющая оперировать с данными и хранить их • Кроме РБД, существует множество других БД различного рода • Новый вид БД – Key-Value системы • Необходимо выяснить, когда стоит использовать KV вместо РБД

  3. Введение • Цель: • исследовать возможности практического применения KV, их преимущества и недостатки • Задачи: • реализовать модель с наследованием структуры данных, используя KV • выяснить качественные и количественные характеристики полученной системы • сравнить систему с другими по установленным параметрам

  4. Распределенные хеш-таблицы • Используют хеш ключа для разделения ответственности между узлами • При перекрытии зон ответственности узлов система имеет возможность переживать отказы узлов без потери данных • Эффективные алгоритмы маршрутизации позволяют находить узлы, ответственные за определенный ключ за время O(log N), где N – число узлов в системе • Могут быстро находить данные на огромном количестве узлов по всей сети Интернет

  5. Распределенные хеш-таблицы • Преимущества: • Масштабируемость • Устойчивость к отказам • Самоорганизация • Удобны для работы с объектами с известными идентификаторами. • Недостатки: • Проблемы с поиском • Проблемы с безопасностью и целостностью данных

  6. Key-Value системы Project Voldemort • Основаны на DHT • Дополнительная функциональность • Key-Value система от LinkedIn – авторитетный разработчик • В основе лежит DHT • Богатый дополнительный функционал • Множество сторонних проектов, расширяющих функционал

  7. Модель SN

  8. SN over KV • <object_id>.data– основные параметры (идентификаторы родителя и шаблона, имя и адаптер) • <object_id>.value – единичное значение • <object_id>.value.{<n>} – множественное значение • <object_id>.children.{<n>} – список дочерних объектов • <object_id>.successors.{<n>} – список наследников

  9. Большие списки • Реализована фрагментации списков, поскольку в Project Voldemort нет ее встроенной поддержки • <list_id>.{<n>} – последовательность фрагментов списка • при достижении последним фрагментом определенного размера создается новый

  10. Методика тестирования • Большинство тестов проводится на специальных наборах данных для выделения необходимой характеристики системы • Один тест проводится на реальных данных • Исследуется производительность основных операций над объектами

  11. Методика тестирования • Каждая операция выполняется последовательно на 10 одинаковых объектах для получения среднего значения исследуемого времени • Время выполнения операции измеряется при нескольких значениях параметра, от которого это время может зависеть

  12. Результаты измерений Чтение объекта из базы Установка значения атрибута Работа с структурой файловой системы

  13. Создание дочернего объекта

  14. Добавление значения атрибута

  15. Поиск объекта по имени

  16. Сводные результаты

  17. Выводы • Применение KV нежелательно, если • требуется часто искать среди многихобъектов по параметрам • имеется много одноуровневых сущностей • Применение KV наиболее выгодно при работе с иерархическими структурами с низким коэффициентом ветвления

  18. Дальнейшая работа • Оптимизация работы с большими списками • Исследование возможностей ускоренного поиска по параметрам с помощью индексирования • Исследование вопроса безопасности в данной системе с разработкой методов обеспечения защищенности системы

  19. Спасибо за внимание

More Related