пятница, 2 апреля 2010 г.

Ещё раз о системе нормализации реляционных баз данных SIARD

26 марта 2010 года, через неделю после публикации первого поста Криса Прома (на фото) о тестировании системы SIARD, на его блоге появилось продолжение, которое я и предлагаю вниманию читателей.

После публикации на прошлой неделе моей заметки о SIARD, со мной связался основной разработчик системы из Швейцарского федерального архива Хартвиг Томас (Hartwig Thomas), чтобы попробовать диагностировать те проблемы, с которыми я столкнулся в процессе преобразования два базам данных формата Access в формат .siard. Как я и подозревал, проблемы в работе программы были вызваны ошибками в структуре исходной базы данных формата Access (например, в базе данных «проблемных» книг, которую я пытался преобразовать, присутствовала строка с пометкой #Deleted, так что база была в определенном смысле повреждена, хотя всё ещё открывалась в Access.

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

В ходе нашей переписки, Хартвиг также отметил, что имеется возможность просматривать экспортированные метаданные из SIARD в более удобном для пользователя формате, используя ссылку на стилевой xsl-файл, лежащий в папке Doc. Ниже приведен скриншот выдачи, полученной для базы данных OIF по «проблемным» книгам:

Выдача в SIARD сведений о метаданных

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

Изучая стилевой файл, я заметил, что SIARD включает и XSD-схему, так что в проекте заложены хорошие возможности для разработки программы просмотра данных SIARD.

В то же время в SIARD нет удобного механизма для предоставления данных конечным пользователям. Есть функция «Загрузить базу данных» (Load Database), которой я смог легко воспользоваться для воссоздания базы данных «проблемных» книг и нескольких других баз данных в виде новых Access-файлов. Повторный ввод табличных данных после этого прошёл безупречно. К сожалению, в документации сказано, что функция в настоящее время не поддерживает загрузку также и запросов, хотя, как я понимаю, в будущей версии SIARD такая возможность будет поддерживаться. Ну а пока эта функция является неплохим способом для переноса данных из одной системы управления базами данных в другую.

Кроме того, Хартвиг снабдил меня кое-какой дополнительной информацией о том, как работает функция zip-сжатия:
«SIARD использует стандарт ZIP 64, который в настоящее время является единственным поддерживаемым PKZIP-ом, постольку тому необходимо работать с файлами размером свыше 4 Гб и с числом объектов более 65 тысяч. Стандарт ZIP 64 используется только как контейнер, и никакого сжатия на самом деле не выполняется (содержимое XML-файла достаточно легко увидеть с помощью редактора Hex). Мы убеждены, что вопросы сжатия должны решаться на более низком уровне – на уровне драйверов для носителей информации. Кроме того, отсутствие сжатия повышает доступность в последующее время, поскольку нет необходимости сохранять алгоритм сжатия.»
И в ответ на мой вопрос об инструменте для просмотра файлов, ином, чем PKZIP:
«При разработке SIARD я делаю ставку на то, что события будут развиваться таким образом, что все больше и больше альтернативных инструментов начнут поддерживать стандарт ZIP 6.x. Я сам начал SourceForge-проект, опубликовав свою ZIP64 JAVA библиотеку, но пока что я лишь скопировал исходные коды к ней и еще не "почистил" ее как следует и не подготовил хороший проект, который могли бы использовать другие разработчики [. . . ] В ближайшее время я планирую использовать этот репозиторий как минимум для разработки работающих с командной строки утилит сжатия/распаковки файлов, в соответствии со стандартом ZIP 64.»
Подобный инструмент будет необходим архивам для прямого доступа к большим текстовым полям или к «блобам», которые SIARD сохраняет в виде отдельных файлов в архивном информационном пакете.

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

Я, безусловно, намерен часто использовать это программное обеспечение - когда вернусь из творческого отпуска

Крис Пром (Chris Prom)

Источник: блог Practical e-Records
http://e-records.chrisprom.com/?p=1023

Комментариев нет:

Отправить комментарий