Details

Title: Разработка механизма автоматического построения индекса для движка ElasticSearch для приложений, реализованных на базе Django: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения»
Creators: Сабо Мария Александровна
Scientific adviser: Мяснов Александр Владимирович
Other creators: Нестеров Сергей Александрович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint: Санкт-Петербург, 2020
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: elasticsearch; django; python; индексирование; индекс; документ; маппинг; indexing; index; document; mapping
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Level of education: Bachelor
Speciality code (FGOS): 09.03.01
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
Links: Отзыв руководителя; Рецензия; Отчет о проверке на объем и корректность внешних заимствований
DOI: 10.18720/SPBPU/3/2020/vr/vr20-1160
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key: ru\spstu\vkr\6618

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Annotation

Тема выпускной квалификационной работы: "Разработка механизма автоматического построения индекса для движка ElasticSearch для приложений, реализованных на базе Django". Данная работа посвящена разработке библиотеки, позволяющей автоматически строить индексы для Elasticsearch с учетом возможности выбора индексируемых полей. Разработчику предоставлена возможность легко менять состав индексов, а также настраивать отображение типов полей. В рамках работы в библиотеке были реализованы два различных подхода для решения данного вопроса. Отличие подходов состоит в способе описания моделей. Для тестирования корректности работы библиотек реализовано тестовое веб-приложение, которое позволяет удалять индексы, просматривать документы, переданные для индексирования, маппинг и лог-файл. Также в приложении показана возможность производить поиск по построенному индексу.

The subject of graduate qualification work is "Development of the mechanism for automatic indexing for the ElasticSearch engine for Django-based applicatons". The given work is devoted to the development of library which allows automatically create indices for Elasticsearch with opportunity to choose indexing fields. The ability to change the composition of indices and fields mapping will be provided to developers. During the work, two different ways were developed for it. The difference between these ways is in the model description. Test web-application is developed to verify proper operation. It allows you to delete indices, viewing mapping, documents, that were transferred to Elasticsearch, and log-file. Also the index search capability is shown in web-application.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read Print Download
Internet Authorized users SPbPU Read Print Download
-> Internet Anonymous

Table of Contents

  • ТЕРМИНЫ И СОКРАЩЕНИЯ
  • ВВЕДЕНИЕ
  • 1. Поисковая система Elasticsearch
  • 2. Анализ существующих решений
    • 2.1. Библиотека django-rest-elasticsearch
    • 2.2. Библиотека django-elasticsearch
    • 2.3. Резюме
  • 3. Постановка задачи
    • 3.1. Формулировка требований
    • 3.2. Анализ и вывод путей решения
  • 4. Разработка библиотеки
    • 4.1. Описание библиотеки
    • 4.2. Описание алгоритмов
      • 4.2.1. Механизм сериализации
      • 4.2.2. Подготовка данных для сериализации
      • 4.2.3. Организация индексирования документов всех моделей
  • 5. Тестирование
    • 5.1. База данных для ручного тестирования
    • 5.2. Создание тестов на основные функций библиотеки
    • 5.3. Создание тестового веб-приложения
    • 5.4. Просмотр ES с использованием HTTP-запросов
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
  • ПРИЛОЖЕНИЕ 1. Пример описания моделей
  • ПРИЛОЖЕНИЕ 2. Библиотека dj-es
  • ПРИЛОЖЕНИЕ 3. Пример юнит-теста
  • ПРИЛОЖЕНИЕ 4. Ссылка на репозиторий

Usage statistics

stat Access count: 10
Last 30 days: 0
Detailed usage statistics