Методы размещения данных в компьютерном кластере
Тема свободна. | |
Курс: без ограничений. Необходимо знание Java.
Тема из раздела big data. Практически важна. Код будет использован в реальной системе.
Постановка задачи. На компьютерном кластере на каждом узле (компьютере) размещены файлы. Копии одного файла могут встречаться на разных машинах несколько раз. Разработать программу, которая позволяет размещать файлы на узлах кластера, исходя из заданных параметров эффективности доступа к ним (балансировка нагрузки, уменьшение кол-ва передаваемых данных между узлами и т.п.). Перемещать файлы между узлами необходимо путем копирования файлом с одной машины на другую. Язык Java.
Основные сложности:
- размер файлов 0..16 Гбайт (копировать не быстро)
- использование технологии ZeroCopy
- узлы могут выходить из строя во время копирования, сетевое соединение может прерываться –> файл может быть поврежден либо недокопирован
- следовательно, нужны CRC, распределенный протокол подтверждения гарантии целостности и завершенности операции (commit), сборка “мусора” (недокопировавшихся частей)
- нужно обеспечить прерывание/паузу копирования в любой момент
- обеспечить ограничение пропускной способности (не более Х Мбайт/сек)
Очерки алгоритмов реализации разработаны, будут объяснены выбравшему тему студенту.
Archives
- November 2015 (3)
- October 2015 (9)
- September 2015 (2)
- August 2015 (4)
- April 2015 (1)
- March 2015 (4)
- February 2015 (11)
- May 2014 (4)
- February 2014 (1)