Details

Title: Разработка метода декларативного задания распределённых вычислений, основанного на аннотировании операций контрактами: выпускная квалификационная работа бакалавра: направление 01.03.02 «Прикладная математика и информатика» ; образовательная программа 01.03.02_04 «Биоинформатика»
Creators: Стоян Андрей Сергеевич
Scientific adviser: Козлов Константин Николаевич
Other creators: Арефьева Людмила Анатольевна; Константинов Андрей Владимирович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт прикладной математики и механики
Imprint: Санкт-Петербург, 2021
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: распределённые вычисления; Apache Beam; Haskell; distributed computations
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Level of education: Bachelor
Speciality code (FGOS): 01.03.02
Speciality group (FGOS): 010000 - Математика и механика
Links: Отзыв руководителя; Отчет о проверке на объем и корректность внешних заимствований
DOI: 10.18720/SPBPU/3/2021/vr/vr21-785
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key: ru\spstu\vkr\13770

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

Работа посвящена разработке метода задания распределённых вычислений, который позволяет производить логическую оптимизацию в запросах, использующих произвольные операции пользователя. Это достигается за счёт аннотирования операций некоторыми спецификациями, контрактами. С их помощью система может гарантировать, что преобразованный запрос эквивалентен исходному. Представлено определение контрактов с помощью классов типов языка Haskell, реализованы представители этих классов типов для простых контрактов. Предложен метод задания распределённых вычислений, основанный на контрактах - CGraph. Реализован алгоритм генерации вычислительных графов, соответствующих CGraph. Рассмотрен пример применения CGraph подхода к практической задаче обнаружения мошеннических ставок на онлайн аукционе. В ходе работы был реализован прототип на языке Haskell, который позволяет задавать вычисления в виде CGraph, генерировать соответствующие вычислительные графы и запускать их, эмулируя Apache Beam Core Transformations.

The work is devoted to developing a novel approach to defining distributed dataflows that is suitable for logical optimization in queries containing arbitrary user-defined operations. To achieve this declarative specifications called contracts are proposed. Using them the data processing system can ensure that the transformed query is equivalent to the original one. Presented contracts definition via Haskell type classes with implementation for simple contracts. A novel approach to defining distributed computation called CGraph is proposed. An algorithm of generation execution graphs corresponding to the given CGraph is implemented. An example of CGraph usage is considered in the practical case of online auction fraud detection. Prototype on Haskell is implemented that allows to specify computations via CGraph and run them on the emulation of the Apache Beam Core Transformations.

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. Обзор систем распределённой обработки данных и методов задания вычислений
    • 2. Разработка метода задания распределённых вычислений
    • 3. Разработка алгоритма генерации множества вычислительных графов соответствующих данному CGraph
    • 4. Применение метода
    • Заключение
    • Вывод
    • Список использованных источников
    • Приложение 1. Реализация алгоритма проверки контрактов
    • Приложение 2. Реализация алгоритма генерации множества эквивалентных графов
    • Приложение 3. Пример CGraph: подсчёт статистики по питомцам на конкурсе
    • Приложение 4. Пример CGraph: оценка времени ожидания пользователей
    • Приложение 5. Пример CGraph: обнаружение мошеннических ставок

Usage statistics

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