Детальная информация

Название: Разработка и применение алгоритмов дедупликации для повышения качества мастер-данных в корпоративных информационных системах: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_01 «Технология разработки и сопровождения качественного программного продукта»
Авторы: Потапова Мария Алексеевна
Научный руководитель: Малеев Олег Геннадьевич
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения: Санкт-Петербург, 2024
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: дедупликация; методы нечеткого поиска; Левентшейна; Джаро-Винклера; Дамерау-Левенштейна; нормализация; deduplication; fuzzy search methods; Leventshein; Jaro-Winkler; Damerau-Levenstein; normalization
Тип документа: Выпускная квалификационная работа магистра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Магистратура
Код специальности ФГОС: 09.04.04
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2024/vr/vr24-2094
Права доступа: Доступ по паролю из сети Интернет (чтение)
Дополнительно: Новинка
Ключ записи: ru\spstu\vkr\29083

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

Данная работа посвящена анализу и применению алгоритмов дедуплика-ции данных на примере MDM-системы. Задачи, которые решались в ходе исследования: 1. Определить основные бизнес-поля; 2. Исследовать способы нормализации данных; 3. Исследовать алгоритмы для поиска дубликатов данных; 4. Выбрать наиболее подходящие алгоритмы поиска дубликатов; 5. Разработать сервис дедупликации; 6. Апробировать сервис дедупликации на тестовых данных. В качестве основных бизнес-полей выбраны основные данные, которыми оперируют в системах MDM. Например, ФИО, цифровое поле и другие. Для каждого из них разработаны правила нормализации. Для поиска дубликатов вы-бран класс методов нечеткого сравнения строк, отобраны 3 метода, а именно Левенштейна, Дамерау-Левенштейна и Джаро-Винклера. Выбранные методы разработаны и применены. В результате проведенной работы для каждого из бизнес-полей на основа-нии точности определения дубликатов и времени выполнения, выбран наиболее подходящий метод. Также реализован собственный сервис на Python с исполь-зованием Flask на основании взаимодействия REST API, который в дальнейшем может быть интегрирован как микросервис в MDM-системе.

This work is devoted to the analysis and application of data deduplication algo-rithms using the example of an MDM system. Tasks that were solved during the research: 1. Identify the main business fields; 2. Explore ways to normalize data; 3. Explore algorithms to find duplicate data; 4. Choose the most suitable algorithms for searching for duplicates; 5. Develop a deduplication service; 6. To test the deduplication service on test data. The basic data used in MDM systems are selected as the main business fields. For example, full name, digital field, and others. Normalization rules have been de-veloped for each of them. The class of fuzzy string comparison methods was selected, 3 methods were selected to search for duplicates, namely Levenstein, Damerau-Levenstein and Jaro-Winkler. These methods have been developed and applied. As a result of the research, the most appropriate method was selected for each of the business fields based on the accuracy of determining duplicates and the execu-tion time. It was implemented as Python service using Flask based on the interaction of the REST API, which can later be integrated as a microservice in an MDM system.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать
Интернет Авторизованные пользователи СПбПУ Прочитать
-> Интернет Анонимные пользователи

Оглавление

  • ВВЕДЕНИЕ
  • ГЛАВА 1. ДЕДУПЛИКАЦИЯ
    • 1.1. Система управления мастер данными (MDM-система)
    • 1.2. Процесс дедупликации в MDM-системах
    • 1.3. Методы нормализации данных
    • 1.4. Метрики для поиска дубликатов
      • 1.4.1. Расстояние Левенштейна
      • 1.4.2. Расстояние Дамерау-Левенштейна
      • 1.4.3. Расстояние Хэмминга
      • 1.4.4. Сходство Джаро-Винклера
      • 1.4.5. Косинусное расстояние
      • 1.4.6. Определение критериев для выбора метрики
    • 1.5. Выводы по Главе 1
  • ГЛАВА 2. НОРМАЛИЗАЦИЯ ДАННЫХ
    • 2.1. Используемые инструменты
      • 2.1.1. NLTK
      • 2.1.2. YandexGPT API
      • 2.1.3. Natasha
      • 2.1.4. Requests
    • 2.2. Определение и нормализация основных бизнес-полей в системе
      • 2.2.1. Нормализация цифровых полей
      • 2.2.2. Нормализация ФИО
      • 2.2.3. Нормализация адресов
      • 2.2.4. Нормализация названия компании
      • 2.2.5. Нормализация произвольного текста
    • 2.3. Выводы по Главе 2
  • ГЛАВА 3. РАЗРАБОТКА СЕРВИСА ДЕДУПЛИКАЦИИ
  • ДАННЫХ В MDM-СИСТЕМЕ
    • 3.1. Используемые инструменты
      • 3.1.1. REST API
      • 3.1.2. Flask
      • 3.1.3. Git
      • 3.1.4. Docker
      • 3.1.5. Grafana
      • 3.1.6. Prometheus
      • 3.1.7. GitHub Actions
      • 3.1.8. Unittest
      • 3.1.9. PyLint
    • 3.2. Применения метрик для поиска дубликатов записей
      • 3.2.1. Цифровые поля
      • 3.2.2. ФИО
      • 3.2.3. Адреса
      • 3.2.4. Произвольный текст
      • 3.2.5. Названия компаний
    • 3.3. Анализ результатов и выбор метрик
    • 3.4. Определение групп дубликатов записей
    • 3.5. Реализация сервиса дедупликации
    • 3.6. Тестирование сервиса
    • 3.7. Выводы по главе 3
  • ЗАКЛЮЧЕНИЕ
  • Список использованных источников
  • Приложение 1. Список использованных иллюстраций
  • Приложение 2. Список использованных таблиц

Статистика использования

stat Количество обращений: 0
За последние 30 дней: 0
Подробная статистика