Курсовая работа: Використання функціонального підходу при програмуванні розподілених задач для кластеру на прикладі технології DryadLINQ

- вершина може мати канал для більш ніж однієї вершини в наступному рівні.

- Різні види каналів можуть бути використані у різних частинах графу.

- Канали підключаються до вершин, так що граф є ациклічним.

- Канали працюють за принципом точка-точка. Вони пов'язують вихід з однієї вершини з входом іншої вершини.

Кількість вершин на кожному рівні та к-сть каналів що їх поєднує вибирається з міркувань оптимізації та швидкодії. В додаток, Dryadможе динамічно змінювати певні рівні графу для покращення продуктивності виконання роботи. Ефективність роботи DryadLINQ трохи нижче, ніж при застосуванні DryadAPI, проте різниця відносно невелика.

2. Реалізації розподіленої програми з використанням DryadLINQ

2.1 Структура та налаштування кластерної системи

На рис. 2. 1 представлена принципова схема, як Dryadвиконує роботу.

Рис. 2.1. Схема виконання роботи Dryad.

Користувач запускає програму що використовує DryadLINQ з клієнтської робочої станції. Після створення виконавчого графу, менеджер робіт Dryad створює роботу з запитів DryadLINQ та запускає роботу в кластері Windows HPC. Менеджер робіт Dryad - задача Windows HPC на головному вузлі, яка керує виконанням відповідної роботи на кластері. Зокрема, робота менеджера породжує вершини, що є завданнями, які належать до однієї роботи на Windows HPC.

Програмне забезпечення Dryad встановлене на всіх комп’ютерах кластера для того щоб виконувати певні деталі роботи Dryad. На головному вузлі встановлено головначастина программного забезпечення Dryad, що включає в себе наступне: менджер робіт, менеджер вузлів та ін. Від вузлів вимагається тільки обробляти дані що містяться на них. Тобто кожен вузол має копію частини програми що працює з колекцією даних.

Кластерна програма на основі Dryadзалежать від:

клієнтської робочої станції.

Обчислювальні вузли.

комп’ютерів чи бази даних, на яких розміщуються дані.

Все має бути правильно налаштовано для того щоб програма на Dryadнормально працювала.

При застосуванні DryadLINQ, програма повинна мати можливість переміщення даних між вузлами кластера які, в свою чергу, повинні мати відповідний доступ до один одного. Загалом DryadLINQ вимагає привілеї високого рівня. Якщо робота DryadLINQ що запущена на кластері повертає помилку з кодом один, то зазвичай це недостатність прав користувача або відсутність певного ресурсу з відповідним доступом. Тобто необхідним для виконання роботи Dryad на кластері є права користувача на можливість погодження і запуску роботи на кластері, а також права доступу до вхідних даних.

Стандартні папки вводу виводу

При встановленні програмного комплексу Dryadавтоматичностворюються і відкривається доступ до наступних папок на кожному вузлі, а також на головному вузлі кластера:

- DryadData - для розташування вхідних даних

- XC - для збереження проміжних даних що створюються роботою Dryad

- XC\output - використовується як папка за замовчуванням для вихідних даних (якщо ви не хочете використовувати цю папку для виведення даних, то її можна змінити у файлі конфігурації DryadLINQ)

2.2 Файли конфігурації

Кожен проект DryadLINQповинен включати в себе файл конфігурації DryadLinqConfig. xml. Файли конфігурації поділяються на:

- Глобальний DryadLinqConfig. xml - містить налаштування що не змінюються в залежності від проекту (наприклад ім’я головного вузла, стандартні папки вводу виводу). Він міститься в C: \Program Files\Microsoft Research DryadLINQ

- Локальний DryadLinqConfig. xml - налаштування для певної розподіленої програми. Цей файл знаходиться в папці проекту програми разом з виконавчими файлами.

Розглянемо вміст глобального файлу конфігурації. Для даного кластера він приймає наступний вигляд:

<DryadLinqConfig>

<ClusterName>hnode </ClusterName>

<Cluster name="hnode "

schedulertype="Hpc "

К-во Просмотров: 360
Бесплатно скачать Курсовая работа: Використання функціонального підходу при програмуванні розподілених задач для кластеру на прикладі технології DryadLINQ