Рабочая область — это каталог со связанным сроком действия, созданный от имени пользователя, чтобы предотвратить неконтролируемое заполнение дисков.
На кластере созданы две файловые системы, которые управляются hpc-workspace:
— «scratch»
— «datasets»
-
Рабочая область (‘workspace’) — директория на этой файловой системе, создаваемая по запросу пользователя, определяемая уникальным для данного пользователя именем и обладающая временем жизни, по истечению которого она автоматически удаляется. Удаление производится через запрошенное при создании количество дней, примерно в то же самое время, без округления до начала или конца дня. За семь дней до удаления непустой области её владельцу ежедневно высылаются почтовые уведомления, предупреждающие о скором удалении.
-
Восстановление данных из удалённых рабочих областей возможно только в течении 7 дней с момента удаления.
-
На данный момент максимальное возможное время жизни рабочей области — 30 дней. Возможность изменения времени жизни уже существующей области предусмотрена однократно. При необходимости можно создать новую рабочую область и перенести данные в неё. Однако файлы, предназначенные для долговременного хранения, необходимо всё-таки переносить на свои персональные компьютеры либо на раздел для долговременного хранения /sf/datastor/${user}.
-
В имени рабочей области можно использовать только латинские символы, цифры и знак подчеркивания.
-
Каждый пользователь может одновременно иметь любое количество рабочих областей с разными именами и временами хранения.
-
Для удобства использования можно после создания рабочей области сделать символьную ссылку на неё из домашней директории и, изменяя ссылку каждые два месяца, работать так, как-будто это обычная директория с фиксированным путём.
-
Идея заимствована с сайта High Performance Computing Center Stuttgart
Создание
-
Для создания рабочей области необходимо выполнить команду ws_allocate, передав ей два параметра — имя области и время жизни в днях. В случае успешного создания команда возвращает в стандартый вывод (stdout) полный путь до соответствующей директории. В случае какой-либо ошибки возвращается пустая строка.
-
В дальнейшем для получения пути до ранее созданной области по её имени используется команда ws_find, описанная ниже.
-
При попытке создать область с именем, уже используемым этим пользователем, будет возвращён путь до существующей области. Новое время жизни при этом будет проигнорировано.
-
Ниже приведены примеры создания рабочей области с именем ‘test2’ и временем жизни 10 дней:
Из командной строки
Создание рабочей области «test2» на файловой системе «scratch» сроком на 10 дней:
ws_allocate -F scratch -m your@email.com test2 10
В ответ будет выведено что-то вроде следующего:
Info: creating workspace. /scratch/youruser-test2 remaining extensions : 1 remaining time in days: 10
Из скрипта
Создание рабочей области из скрипта, с сохранением полученного пути в переменную:
#!/bin/bash ws=$(ws_allocate -F scratch -m your@email.com test2 10) if [ ! -d $ws ] ; then echo "No such workspace: $ws" exit 1 fi cd $ws ....
Поиск по имени
Команда ws_find возвращает путь до рабочей области с указанным именем. В случае отсутствия таковой, возвращает пустую строку:
ws_find <имя_области>
Из скрипта:
#!/bin/bash ws=$(ws_find test2) if [ ! -d $ws ] ; then echo "No such workspace: $ws" exit 1 fi cd $ws ....
Отображение областей
Получить список всех своих рабочих областей и времена их удаления можно с помощью следующей команды:
ws_list
id: mollusca workspace directory : /datasets/youruser-mollusca remaining time : 37 days 1 hours creation time : Tue Jul 5 21:25:37 2023 expiration date : Sat Sep 3 21:25:37 2023 filesystem name : datasets available extensions : 1 id: test2 workspace directory : /scratch/youruser-test2 remaining time : 9 days 23 hours creation time : Thu Jul 28 20:05:10 2023 expiration date : Sun Aug 7 20:05:10 2023 filesystem name : scratch available extensions : 1
Досрочное удаление
В случае, если данные из какой-то области Вам уже не нужны, желательно не дожидаться их автоматического удаления, а сделать это досрочно:
ws_release -F filesystem <имя_области>
При большом количестве файлов в рабочей области выполнение команды может занять существенное время.