支持批量著录的档案管理软件:实操指南与配置详解

一、批量著录的核心价值与软件选择

批量著录功能通过自动化处理代替手工逐条录入,将档案著录效率提升5-10倍。选择软件时需重点考察以下技术指标:支持的文件格式(PDF、JPG、TIFF、Office文档等)、元数据字段自定义能力、批量导入模板的灵活性(Excel、XML)、去重与校验机制。

本文以开源的Archivematica和具备友好图形界面的AtoM(Access to Memory)为例进行讲解。两者均支持批量著录,适用于不同技术背景的团队。

二、环境准备与软件安装

1. 基础运行环境部署

在Ubuntu 20.04 LTS系统上执行以下命令安装依赖:

```bash sudo apt update sudo apt install -y python3-pip git curl wget unzip sudo apt install -y mysql-server libmysqlclient-dev ```

安装完成后,启动MySQL并设置root密码:

```bash sudo systemctl start mysql sudo mysql_secure_installation ```

根据提示设置密码策略并移除匿名用户。

2. Archivematica安装与配置

Archivematica采用微服务架构,推荐使用Docker Compose部署。创建项目目录并下载配置文件:

```bash mkdir archivematica-batch cd archivematica-batch curl -O https://raw.githubusercontent.com/artefactual/archivematica/stable/1.14.x/docker/archivematica/docker-compose.yml ```

编辑docker-compose.yml文件,在`storage-service`部分添加以下环境变量以启用批量API:

```yaml environment: - BATCH_API_ENABLED=true - BATCH_API_KEY=your_secure_api_key_here ```

启动所有服务:

```bash docker-compose up -d ```

等待5-10分钟,访问 http://localhost:8000 进入管理界面,使用默认凭据(admin/admin)登录。

3. AtoM安装与配置

AtoM基于PHP和Elasticsearch。使用以下脚本快速安装:

```bash wget https://raw.githubusercontent.com/artefactual/atom/stable/2.x/install/install.sh chmod +x install.sh sudo ./install.sh ```

安装过程中,按提示设置数据库密码和站点信息。安装完成后,执行以下命令初始化Elasticsearch索引:

```bash cd /usr/share/nginx/atom sudo php symfony tools:purge --demo=no sudo php symfony search:populate ```

访问 http://your-server-ip 进入AtoM界面。

三、批量著录全流程实操

1. 元数据模板设计与准备

创建标准的CSV模板,包含必填字段。以下是描述类档案的模板示例:

```csv identifier,title,creator,date,description,subject,language,rights DOC-2024-001,2023年度财务报告,财务部,2023-12-31,包含全年收支明细,财务、审计,中文,内部公开 DOC-2024-002,项目立项书,项目部,2024-01-15,XX项目正式立项文件,项目管理,中文,仅限管理层 ```

将模板保存为metadata_batch.csv,确保编码为UTF-8无BOM格式。

2. Archivematica批量导入

在Archivematica的“Transfer”页面,点击“Create transfer”。选择“Upload DIP”方式,上传ZIP格式的档案文件包(需提前将文档与CSV模板打包)。在元数据设置中,选择“Load metadata from CSV”,并指定CSV文件路径。

关键配置步骤:

  • 在“Processing configuration”中,启用“Assign UUIDs to directories”选项
  • 在“Normalization”阶段,设置“Document conversion format”为PDF/A
  • 在“Store AIP”阶段,选择本地存储路径(如`/var/archivematica/sharedDirectory/`)

启动处理后,可在“Preservation planning”中监控批量著录进度。

3. AtoM批量导入与校验

支持批量著录的档案管理软件:实操指南与配置详解

登录AtoM管理后台,进入“导入/导出”菜单。选择“CSV导入”,上传准备好的metadata_batch.csv文件。

在映射界面,按以下规则匹配字段:

  • 将CSV的`identifier`列映射到“参考代码”
  • 将`title`列映射到“标题”
  • 将`creator`列映射到“创建者”
  • 关键步骤:在“高级选项”中,勾选“跳过重复项匹配”和“验证级别:严格”

导入完成后,系统会生成详细报告,列出所有成功、失败及重复的记录。失败记录可导出为CSV进行修正后重新导入。

四、高级批量处理技巧

1. 使用命令行API实现自动化

Archivematica提供完整的REST API。使用cURL批量创建著录任务:

```bash curl -X POST http://localhost:8000/api/v2beta/package/ \ -H "Authorization: ApiKey your_secure_api_key_here" \ -H "Content-Type: application/json" \ -d '{ "name": "财务档案批量导入", "type": "transfer", "path": "/var/archivematica/sharedDirectory/transfers/finance_batch.zip", "metadata_set_id": "default", "auto_approve": true }' ```

API返回的JSON中包含任务ID,可用于查询状态:

```bash curl -X GET http://localhost:8000/api/v2beta/package/{task_id}/ \ -H "Authorization: ApiKey your_secure_api_key_here" ```

2. 复杂元数据关系的批量处理

处理层级档案(如案卷-文件结构)时,使用XML格式的EAD模板。以下是一个两级结构的示例片段:

```xml RG-01 行政部档案 RG-01-001 2024会议纪要 ```

在AtoM中,选择“EAD导入”并上传此XML文件,系统会自动解析层级关系并创建对应的档案结构树。

3. 批量著录后的数据校验脚本

编写Python脚本验证导入数据的完整性:

```python import csv import requests def verify_archivematica_records(api_key, transfer_uuid): url = f"http://localhost:8000/api/v2beta/package/{transfer_uuid}/" headers = {"Authorization": f"ApiKey {api_key}"} response = requests.get(url, headers=headers) data = response.json() if data['status'] == 'COMPLETE': 验证元数据字段完整性 for item in data['metadata']: required_fields = ['title', 'creator', 'date'] missing = [field for field in required_fields if not item.get(field)] if missing: print(f"记录 {item.get('identifier')} 缺少字段: {missing}") else: print(f"处理状态异常: {data['status']}") 执行验证 verify_archivematica_records("your_api_key", "transfer-uuid-here") ```

五、常见问题与解决方案

1. 中文乱码处理

在AtoM的`app/config/config_prod.yml`配置文件中添加:

```yaml all: default_culture: zh_CN fulltext_indexer: charset: UTF-8 ```

重启Elasticsearch服务:sudo systemctl restart elasticsearch

2. 批量导入速度优化

修改MySQL配置(`/etc/mysql/my.cnf`):

```ini [mysqld] innodb_buffer_pool_size = 2G bulk_insert_buffer_size = 256M max_allowed_packet = 256M ```

重启MySQL:sudo systemctl restart mysql

3. 文件格式兼容性问题

创建预处理脚本,将非常用格式转换为标准PDF:

```bash !/bin/bash for file in .doc .docx; do libreoffice --headless --convert-to pdf "$file" done ```

安装依赖:sudo apt install libreoffice

六、维护与监控

设置每日批量任务日志监控:

```bash 查看Archivematica批量任务状态 docker logs archivematica-dashboard 2>&1 | grep -E "(ERROR|批量任务)" 监控AtoM导入队列 sudo tail -f /usr/share/nginx/atom/log/prod.log | grep "import" ```

建立定期数据备份机制:

```bash 备份数据库 mysqldump -u root -p atom_db > /backup/atom_$(date +%Y%m%d).sql 备份Elasticsearch索引 curl -X POST "localhost:9200/_snapshot/backup_repository/snapshot_$(date +%Y%m%d)?wait_for_completion=true" ```

AI咨询
热线电话

028-85154420

15388110056

全国售前咨询电话

扫码咨询
安答联动微信公众号二维码

微信扫码关注安答联动

申请试用
热线电话
申请试用

安答联动档案管理系统