home

Опыт миграции ресурсов из DSpace в ELiS

gorkilib-elis-vs-dspace.jpg

В ноябре 2019 года в Пермской краевой библиотеке им. Горького произведена миграция с DSpace на ELiS Пермской электронной библиотеки (ПЭБ) с переносом контента из DSpace.

Так было: http://arch.permculture.ru.

Так стало: https://e.gorkilib.ru.

Вопросам миграции посвящена данная статья.

Мотивация[править]

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

Возникла необходимость миграции на более совершенную электронную библиотеку и такой программой была выбрана ELiS.

В процессе миграции выявлены недостатки использования DSpace, что будет освещено в статье.

Процесс миграции[править]

В DSpace размещено 11011 документов, из которых 10793 – PDF и 218 – изображения, разбитые по иерархии коллекций.

Почти все документы находятся в открытом доступе.

Миграция метаданных[править]

Перед миграцией надо оценить её возможность на предмет совместимости форматов метаданных.

DSpace ELiS
Метаданные представлены в виде строковых значений в Дублиновском ядре, причём в некоторых полях хранятся значения, имеющие локальный смысл с точки зрения библиотеки: кто является держателем оригинала, с которого оцифрована книга и шифр хранения в поле серии. В отсутствии автодополнения при вводе метаданных в текстовое поле, иногда происходит ввод разных строк для одних и тех же организаций, что в дальнейшем делает невозможным полностью автоматическую конвертацию метаданных из Дублиновского ядра в связанные данные. Метаданные представлены как в виде литеральных значений в полях ресурсов (как в DSpace), так и в виде связанных сущностей (когда для каждой организации, персоны, места, события и других метаданных генерируются отдельные сущности и сущности связываются с ресурсами при помощи полей). При этом сущности оказываются относительно независимыми от ресурсов и структурированными. Связи (отношения) между сущностями хранятся в полях (например факт, что человек связан с книгой отношением авторства производится следующим образом: у сущности книги есть поле «автор» и в это поле проставляется ссылка (а не текстовая строка) на структурированную сущность типа «персона».


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

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

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

Одной из причин ошибок в описании в DSpace является отсутствие автодополнения полей метаданных (в ELiS автодополнение присутствует), что существенно ухудшает качество описания.

В случае, если в DSpace находятся поля, которых нет в ELiS, их можно создать и данные всё равно перенести. Ключевой момент, что все возможные поля в DSpace и что в них может лежать надо знать заранее, чтобы составить правила переноса в ELiS.

Подводя итоги:

  • автоматическая конвертация возможна, но отсутствие автодополнения в DSpace ухудшает качество метаданных, что потребует в дальнейшем от библиотеки ручных правок сущностей и связей в ELiS;
  • владельцы DSpace должны хорошо помнить структуру своих метаданных, уделяя особое внимание созданию собственных полей или хранении важной информации в полях Dublin Core не по прямому назначению.

Пользовательские копии[править]

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

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

Механизм миграции[править]

В DSpace есть встроенный механизм экспорта коллекций и OAI-PMH-провайдер.

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

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

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

Возможность такого обхода появляется из того, что DSpace может выводить все файлы списком с пейджером: http://arch.permculture.ru/browse?rpp=20&sort_by=1&type=title&offset=60&etal=-1&order=ASC и можно просто двигаться по страницам пейджера и собрать ссылки на все документы. Метаданные в Дублиновском ядре на каждый документ можно получить распарсив соответствующую страницу (пример: http://arch.permculture.ru/handle/permculture/1115?show=full).

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

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

В результате был написан скрипт миграции на PHP, который в три прохода за 3 суток импортировал все 11 тыс. документов.

Проблемы[править]

Способ парсинга и скачивания через веб-интерфейс не пригоден, когда много документов в DSpace в ограниченном доступе, т.к. DSpace не даст скачать файлы через веб-интерфейс.

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

Связывание ресурсов в ELiS и DSpace[править]

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

Для этого в ELiS оставлены как гиперссылки на DSpace, так и в поле идентификатора проставлен URI документа в DSpace и его URL. В ELiS по идентификатору можно перейти на сам документ, т.о. зная URI документа в DSpace можно автоматически открыть его в ELiS.

Пример для документа: http://arch.permculture.ru/handle/permculture/3601

URI в DSpace: «/handle/permculture/3601»

В ELiS документ будет найден по ссылке: https://e.gorkilib.ru/ident//handle/permculture/3601

Если возникает необходимость перенаправить из DSpace в ELiS, для этого можно в JSP –страницу DSpace вставить JavaScript код:
location.href = "https://e.gorkilib.ru/ident/" + location.href;

Преимущества от миграции[править]

  • перевод метаданных на сущности и связанные данные;
  • улучшенный интерфейс;
  • улучшенный плеер PDF с полнотекстовым поиском и переходом из поиска на конкретные страницы;
  • мобильный интерфейс, мобильные приложения;
  • DRM-защита, возможность предоставить доступ только на чтение в стенах библиотеки;
  • работа с EPUB и с видео;
  • возможность предоставления библиохостинга для других библиотек и организаций;
  • генерация подсайтов.

Выводы[править]

Миграция прошла успешно в автоматическом режиме. Возникшие проблемы с метаданными связаны прежде всего с недостатками самого DSpace. В связи с этими недостатками я не рекомендую использовать DSpace в случае большого числа хранящихся документов и хранении метаданных только в DSpace т.к. при переходе на связанные данные это приведёт к необходимости ручном работы устранения дублей. И эта проблема будет актуальна не только для ELiS, а и для других систем, работающих на связанных данных.