Courses

Темы для курсовых и дипломных работ

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

Для того, чтобы начать работу, никакие предварительные знания или опыт, кроме обычных университетских курсов, не требуется, все необходимые знания и навыки можно приобрести в процессе работы над темой. Тем не менее, для успешной работы необходимо освоить значительное количество материала, который не обязательно включен в какие-либо университетские курсы и поэтому его необходимо изучить по книгам и статьям. Последовательность чтения может зависеть от темы, но из этого списка нужно прочитать все.

Начиная с середины 20 века рабочим языком международного исследовательского сообщества стал английский. Поэтому успешная исследовательская деятельность обязательно предполагает владение английским языком. Недостаточно уверенное владение языком не является препятствием для того, чтобы начать работу, но читать по-английски придется с самого начала.

Далее следует примерный список тематических направлений.

Методы оптимизации и выполнения декларативных запросов в неоднородных распределенных системах (declarative query optimization and procesing for heterogeneous distributed environmanes), расширенные модели запросов (extended qyery models), приближенное выполнение запросов (approximate query processing).

Что такое неоднородная информация? Нас интересуют разнообразные источники данных, как по содержанию и представлению (структурированные, слабоструктурированные, тексты, изображения и др.), так и по способу хранения (базы данных, специализированные хранилища, файлы, потоки данных и др.) Нас интересуют средства и методы выполнения запросов, которые могут быть точными (как в традиционных базах данных), нечеткими (как в информационном поиске) и различные комбинации этих и других видов запросов.

В рамках этого очень широкого направления можно выделить некоторые более конкретные, но тоже очень широкие области:

  • Средства описания запросов (высокоуровневые операции и языки запросов). (Query specification, query languages, query processing and optimization, approximate query evaluation, query processing tools and algorithms, distributed query processing in scalable environments)

    Это направление, хотя и упомянуто первым, предполагает относительно большой объем предварительных знаний, поэтому, скорее всего, начинающим следует сначала выбрать небольшую задачу в рамках этого широкого направления.

    Тема предполагает анализ и расширение языков запросов и определение высокоуровневых операций для разных моделей поиска и выборки данных; включает в себя анализ свойств операций, проверку их адекватности на модельных и реальных задачах.

  • Реализация и анализ методов выполнения высокоуровневых операций обработки запросов.

    Эта область дает очень большой простор по сложности задач от сравнительного анализа и оценки известных алгоритмов для традиционных операций на одном процессоре до приближенного выполнения сложных операций над неоднородными источниками данных в распределенной вычислительной среде с управляемой сложностью и построением моделей стоимости.

  • Структуры хранения и индексы.
    Indexes, access methods, storage structures.

    Эта, традиционная для нашей группы, тематика также имеет очень широкий диапазон по сложности задач.

    В последнее время наибольший интерес привлекают структуры и методы, учитывающие особенности оборудования (hardware-aware techniques), а также методы, пригодные для хранения и обработки очень быстро меняющихся данных (ighly dynamic data strucutres and indexes).

  • Методы поддержки согласованности в распределенных системах.

    Вопреки распространенному мнению, поддержка согласованности может быть реализована в масштабируемых распределенных системах, что может существенно повысить качество хранимых данных.

    Нас интересуют масштабируемые методы на основе многоверсионности, обеспечивающие очень высокую пропускную способность, а также методы поддержки согласованности для структур хранения и индексов, ориентированных на быстро изменяющиеся данные.

  • Модели стоимости и оптимизация запросов.

    Здесь не предполагается разработка полномасштабного оптимизатора запросов, такие системы уже есть, и сделать что-то сопоставимое по качеству в рамках одной работы вряд ли возможно. Однако использование таких инструментов предполагает описание свойств операций и моделей стоимости.

    Возможные уточнения темы могут включать построение и проверку адекватности моделей стоимости для различных высокоуровневых операций, исследование поведения этих операций (по стоимости) в зависиомсти от объемов данных и требований к точности ответа при приближенном выполнении, а также исследование статистических структур для моделей стоимости.

  • Распределенная обработка и хранение очень больших графов

    Большие графы встречаются во многих современных приложениях, наиболее модными из которых являются социальные сети и сети данных. Традиционные структуры хранения, реализуемые в системах управления базами данных, плохо работают с алгоритмами обработки больших графов. Нас интересуют методы распределенного хранения графов, согласованные с алгоритмами их обработки, в том числе быстро изменяющихся графов и приближенные пошаговые алгоримы, которые могут учитывать изменения в данных без полной обработки всего графа.

  • Методы разработки высокоэффективных приложений баз данных и реструктуризации приложений с целью повышения их эффективности.

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

  • Анализ распределенных архитектур для обработки запросов.

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

  • Настройка приложений, интенсивно использующих большие объемы данных

    Доминирующие методологии разработки информационных систем ориентированы на быстрое получение прогарммного кода и зачастую провоцирую создание систем, использующих возможности вычислительной среды крайне неэффективно. Зачастую эта неэффективность не может компенсироваться ростом производительности аппаратных средств. Настройка, то есть приведение системы в соответствие с требованиями по производительности при сохранении функциональности, выполняется на всех этапах жизненного цекла системы.

    Круг задач включает традиционную настройку запросов в базах данных, неэквивалентные преобразования запросов, анализ кода приложения, полуавтоматическую и автоматическую трансформацию кода приложения с целью повышения эффективности работы с данными.

  •  

    Даты

    23 июня
    8 июля