デジタル保存の課題
デジタルデータは、紙やフィルムとは異なる固有の脆弱性を持っています。メディアの劣化、技術的陳腐化、組織的な持続可能性の欠如、人的ミスなど、多くの脅威にさらされています。デジタル保存(Digital Preservation)は、デジタルデータを長期にわたって利用可能な状態で維持するための体系的な取り組みです。
筆者はこれまで、Archivematicaを中心としたデジタル保存システムの導入と運用について多くの検証を行ってきました。本章では、その実践に基づいてデジタル保存の全体像を解説します。
OAIS参照モデル
OAIS(Open Archival Information System)は、デジタル保存のための概念的なフレームワークであり、ISO 14721として国際標準化されています。OAISは、デジタルアーカイブが長期保存を実現するために備えるべき機能と情報構造を定義した参照モデルです。
OAISでは、デジタルオブジェクトとそのメタデータを「情報パッケージ」として管理します。
- SIP(Submission Information Package): データ提供者からアーカイブに提出されるパッケージ
- AIP(Archival Information Package): アーカイブ内で長期保存されるパッケージ
- DIP(Dissemination Information Package): 利用者に提供されるパッケージ
Archivematicaの導入と運用
Archivematicaは、OAISモデルに基づいて設計されたオープンソースのデジタル保存システムです。SIPからAIP、DIPへのワークフローを自動化し、METS/PREMISベースの保存メタデータを生成します。
Dockerによる起動
筆者はArchivematicaをDockerで起動するで、Dockerを使った導入方法を解説しました。Docker Composeを使えば、Archivematicaの各コンポーネント(Dashboard、MCPServer、MCPClient、Storage Service)を一括で起動できます。
git clone https://github.com/artefactual/archivematica.git
cd archivematica
docker-compose up -d
AWS EC2への構築
クラウド環境への本番デプロイメントについても検証を行っています。Amazon EC2にArchivematicaを立てるでは、EC2インスタンスでの構築手順を詳しく解説しました。さらに、EC2に立てたArchivematicaをHTTPS対応するでは、SSL/TLSによる通信暗号化の設定方法を紹介しています。
ArchivematicaのAPI活用
Archivematicaは充実したAPIを提供しており、処理の自動化が可能です。筆者は以下の記事でAPI活用の実践を紹介しています。
- ArchivematicaのAPIを試す(Archivematica API編): Archivematica本体のAPIの基本操作
- ArchivematicaのAPIを試す(Storage Service API): Storage ServiceのAPIの基本操作
- ArchivematicaのAPIを用いて、TransferからAIPのダウンロードまでを行う。: APIを使った一連のワークフロー自動化
フォーマット正規化のカスタマイズ
Archivematicaでは、Preservation planningにおいてフォーマット正規化(Normalization)のルールを追加できます。ArchivematicaのPreservation planningにおいて、Normalizationのルールを追加するでは、独自のフォーマット変換ルールの追加方法を解説しました。
オブジェクトストレージの活用
デジタル保存において、ストレージの選択は重要な要素です。筆者はAmazon S3やmdx.jpのオブジェクトストレージとArchivematicaの連携について複数の検証を行っています。
Amazon S3との連携
ArchivematicaでAmazon S3を処理対象およびAIPの保存先に設定するでは、S3をArchivematicaの処理対象(Transfer Source)およびAIPの保存先として設定する方法を解説しました。
mdx.jpオブジェクトストレージとの連携
mdx.jpのオブジェクトストレージをArchivematicaに追加する方法については、Archivematicaにmdx.jpのオブジェクトストレージを追加するで紹介しています。また、mdxのオブジェクトストレージを使用する(Cyberduckの利用)では、Cyberduckを用いたオブジェクトストレージの管理方法を解説しました。
GakuNin RDMとの連携
研究データの保存においては、GakuNin RDMとの連携も重要です。GakuNin RDMとAmazon S3を接続し、Archivematicaでファイルを処理するでは、GakuNin RDMからArchivematicaへのデータ取り込みと処理のワークフローを紹介しました。
METS/PREMISによる保存メタデータ
Archivematicaは、AIPの生成時にMETS(Metadata Encoding and Transmission Standard)形式のメタデータファイルを自動生成します。このMETSファイルには、PREMISによる保存メタデータが組み込まれています。
筆者はArchivematicaのMETSファイルの内容を可視化するPythonライブラリで、METSファイルの内容をプログラム的に解析・可視化するライブラリを紹介しました。また、METSFlaskを試すでは、METSファイルをブラウザ上で閲覧するWebアプリケーションを検証しています。
AIPの内容を理解するために、Archivematica AIPのREADMEファイルの日本語訳例でREADMEファイルの日本語訳を提供しました。
AIPの監査
保存済みのAIPを監査するためのツールとして、AIPscanがあります。AIPscanを試すで、AIPscanを使ったAIPの一覧表示と分析について紹介しました。
BagItとRO-Crate
BagIt
BagItは、デジタルコンテンツの保存・転送のためのパッケージングフォーマットで、チェックサムによるデータ完全性の検証を標準的な方法で行えます。Archivematicaも内部でBagIt形式を使用しています。
RO-Crate
RO-Crate(Research Object Crate)は、研究データのパッケージングのための仕様で、BagItを拡張した形式です。筆者はro-crate-pyを試すで、PythonライブラリによるRO-Crateの作成と操作を検証しました。
DataverseとArchivematicaの連携
研究データの保存においては、Dataverseのような研究データリポジトリとArchivematicaを連携させることで、長期保存を実現できます。DataverseのデータをArchivematicaで処理するでは、Dataverseに登録されたデータをArchivematicaで処理する具体的な手順を解説しました。
日本語対応の課題
Archivematicaを日本語環境で使用する際には、いくつかの課題があります。
ファイル名の問題: Archivematicaでフォルダにメタデータを登録する際には、日本語のフォルダ名は避けるで指摘しているように、日本語のフォルダ名はメタデータ登録時に問題を引き起こす場合があります。また、Archivematicaの日本語ファイル名変換を修正するでは、日本語ファイル名の変換処理の修正方法を紹介しました。
ドキュメントの翻訳: Archivematicaのドキュメントは英語のみですが、筆者はsphinxを用いた作成されたドキュメントサイトに日本語訳を追加するで、日本語訳の追加方法を紹介しています。
まとめ
本章では、デジタル保存の課題、OAISモデル、Archivematicaの導入と運用、オブジェクトストレージの活用、保存メタデータについて、筆者の実践に基づいて解説しました。デジタル保存は「一度設定すれば終わり」ではなく、技術環境の変化に対応し続ける継続的な活動です。
次章では、保存されたデジタルデータをいかに発見可能にするか、検索と発見のための技術について学びます。
関連記事
- ArchivematicaをDockerで起動する
- Amazon EC2にArchivematicaを立てる
- EC2に立てたArchivematicaをHTTPS対応する
- ArchivematicaのAPIを試す(Archivematica API編)
- ArchivematicaのAPIを試す(Storage Service API)
- ArchivematicaのAPIを用いて、TransferからAIPのダウンロードまでを行う。
- ArchivematicaのPreservation planningにおいて、Normalizationのルールを追加する
- ArchivematicaでAmazon S3を処理対象およびAIPの保存先に設定する
- Archivematicaにmdx.jpのオブジェクトストレージを追加する
- mdxのオブジェクトストレージを使用する(Cyberduckの利用)
- GakuNin RDMとAmazon S3を接続し、Archivematicaでファイルを処理する
- ArchivematicaのMETSファイルの内容を可視化するPythonライブラリ
- METSFlaskを試す
- Archivematica AIPのREADMEファイルの日本語訳例
- AIPscanを試す
- Archivematicaでフォルダにメタデータを登録する際には、日本語のフォルダ名は避ける
- Archivematicaの日本語ファイル名変換を修正する
- DataverseのデータをArchivematicaで処理する
- Alfrescoのファイルに対して、Archivematicaを使ってAIPを作成する
- Archivematicaのサンプルデータ
- Archivematicaのtransferにおいて、processing_configを使う
- ro-crate-pyを試す
- sphinxを用いた作成されたドキュメントサイトに日本語訳を追加する