Aleph 4.1.7 介绍与选型指南
OCCRP 开源调查数据检索平台 Aleph 4.1.7 的介绍与选型指南:定位/架构/功能特性全解,含与 Datashare、OpenCTI 的量化选型对比,全部信息于 2026-10-24 联网溯源官方源取证。
Aleph 4.1.7 介绍与选型指南
目标:面向记者、调查团队与 OSINT 分析人员,全面介绍开源调查数据检索平台 Aleph(alephdata/aleph)的定位、架构、功能与选型结论。本文所有版本号、星数、发布日期与兼容矩阵均于 2026-10-24 通过联网溯源官方源(GitHub Releases、官方文档站 docs.aleph.occrp.org、仓库源码)实查获得,来源在正文与参考链接逐项标注。
一、环境信息
本文为认知与选型篇,信息全部来自官方在线来源的实查取证,未做本地部署实测(部署实测见系列部署篇)。
- 溯源日期:2026-10-24
- 官方仓库:https://github.com/alephdata/aleph(OCCRP 数据团队维护)
- 官方文档站:https://docs.aleph.occrp.org/
- 最新稳定版:4.1.7(GitHub Releases「Latest」标识,发布于 2025-10-27T15:44:31Z,来源:releases.atom)
- 预发布版:4.1.8(2025-11-12 打正式 tag,但 Releases 页 Latest 仍指向 4.1.7,即官方将 4.1.8 标记为未转正的预发布,来源:releases.atom 与 releases 页面交叉核对)
- 项目元信息(来源:GitHub API
repos/alephdata/aleph,2026-10-24 实查):- Stars:2473;Forks:368;Open Issues:372
- 主语言:Python;创建于 2014-08-27;最近推送 2026-02-20(持续活跃)
- 许可证:MIT(setup.py
License :: OSI Approved :: MIT License) - 仓库 topics:
data-search、graph-database、investigative-journalism、journalism、osint、python
- 运行栈(来源:仓库 4.1.7 tag 的
docker-compose.yml与Dockerfile实查):- 应用后端:Python 3.10 + Flask 2.3.3 + Gunicorn(6 worker)
- 前端 UI:React + TypeScript(
aleph-ui-production构建产物,Nginx 承载) - 搜索引擎:Elasticsearch 7.16.1(官方定制镜像,含 ICU 插件)
- 关系数据库:PostgreSQL 10.x
- 缓存与队列:Redis、RabbitMQ 3.9(含 Management 插件)
- 文档摄取服务:ingest-file 4.1.2(独立 Python 服务,内含 Tesseract OCR、语言识别、NER)
💡 说明:Aleph 是「平台级」软件而非单体程序,运行时由 8 个服务协同(api、ui、worker、shell、ingest-file + ES/PG/Redis/RabbitMQ 三个基础件),这一点直接影响部署选型(内存规划、编排方式),详见 4.x 与第七章。
二、软件概述
2.1 定位与出身
Aleph 是有组织犯罪与腐败报道项目(Organized Crime and Corruption Reporting Project,OCCRP)开源的调查数据检索平台(Investigative Data Platform)。它把两类异构数据统一到一个可搜索的平台上:
- 原始文档:PDF、邮件(.eml)、Office 文档、图片、HTML 等任意文件,经解析、OCR 与 NLP 处理后可全文检索;
- 结构化数据:CSV/Excel 表格、公司注册数据、泄露数据集等,映射为实体(人、公司、地址、资产等)进入图谱索引。
OCCRP 将其用于自家调查报道的「资料库中枢」,并衍生出面向公众的数据门户(Dossier Center 等)。对内网自托管场景,Aleph 是「团队私有调查档案库 + 泄露数据检索 + 实体关系挖掘」三合一的开源方案。
2.2 版本节奏与生命周期
| 版本 | 发布日期(UTC) | 关键变更 | 来源 |
|---|---|---|---|
| 4.1.3 | 2025-07 | 默认 ingest-file 升至 4.1.2,修复 7zip 处理安全漏洞 | Releases 页 |
| 4.1.6 | 2025-08-07 | 引入「维护模式」(maintenance mode)权限修复 | Releases 页 |
| 4.1.7 | 2025-10-27 | 升级到 Python 3.10(PR #4328) | Releases 页 |
| 4.1.8 | 2025-11-12 | 正式 tag 但官方 Latest 仍为 4.1.7(视为预发布未转正) | releases.atom |
关键解读:4.1.x 系列约 2.5~3 个月发布一个稳定版,节奏稳定且持续活跃(2026-02 仍有提交);运维上可按「跟随最新稳定版、忽略 rc 与未转正 tag」的策略升级。4.1 系列还有两项影响 API 使用方的变更需注意(来源:4.1.0 Release Notes):
- API Key 改为用户主动生成,且新 Key 90 天自动过期(到期前 7 天邮件提醒);
- 新用户默认不再自动持有 API Key。
2.3 技术栈与部署形态
Aleph 官方发布形态是 Docker Compose 全栈编排(仓库根目录 docker-compose.yml + aleph.env.tmpl 环境变量模板),同时提供 Helm Chart 用于 Kubernetes 部署(来源:仓库 4.1.3 Release Notes 提及 Helm chart 版本同步更新)。应用代码以 Python 包发布(setup.py 定义 aleph 命令行入口),前端以独立构建镜像(aleph-ui-production)分发。因此自托管的现实路径是「Compose 编排 8 服务」,而非单进程安装——这既是选型优势(官方托管了全部依赖版本),也是资源门槛(见 4.2)。
三、核心架构
3.1 服务组成
来源:仓库 4.1.7 tag docker-compose.yml 与 Dockerfile 逐项核对。
| 服务 | 代码/镜像 | 职责 | 默认端口 |
|---|---|---|---|
| api | ghcr.io/alephdata/aleph:4.1.7 | Flask API(Gunicorn 6 worker),REST 接口 /api/2/* | 8000(内部) |
| ui | ghcr.io/alephdata/aleph-ui-production:4.1.7 | React 前端 + Nginx 反代 /api 到 api | 8080(对外映射) |
| worker | 同 api 镜像 | 消费 RabbitMQ 队列:索引、告警通知、xref、导出等异步任务 | — |
| shell | 同 api 镺像 | 管理端命令入口(aleph CLI 执行环境) | — |
| ingest-file | ghcr.io/alephdata/ingest-file:4.1.2 | 文档解析:格式转换、OCR(Tesseract)、语言识别、NER 实体抽取 | — |
| elasticsearch | 官方定制镜像(ES 7.16.1 + ICU) | 全文索引与实体索引(每 schema 一组索引) | 9200 |
| postgres | postgres:10.x | 业务库:用户、集合、权限、实体数据库(FtM Store) | 5432 |
| redis | redis:alpine | 缓存与异步统计 | 6379 |
| rabbitmq | rabbitmq:3.9-management-alpine | 任务队列总线(ingest/analyze/index/notify 等 op) | 5672 / 15672 |
3.2 数据流:从一份 PDF 到可检索实体
以一份扫描版 PDF 进入平台为例(来源:官方 ingest-file 文档与仓库代码 aleph/logic/queues.py、ingestors 包结构梳理):
- 上传/爬取:文档进入集合(Collection),二进制存入文件归档层(本地目录或 S3 兼容对象存储,
ARCHIVE_TYPE决定); - ingest:ingest-file 从 RabbitMQ 领取 ingest 任务,识别 MIME,走对应解析器(PDF → 逐页栅格化 → Tesseract OCR 出文本);
- analyze:语言识别(fastText)、NER 实体抽取(人名/组织/地址/邮箱/电话),产出 FollowTheMoney(FtM)schema 实体(Email、Pages、Page、Person、Table 等);
- index:worker 消费 index 任务,把实体写入 ES 的 per-schema 索引(如
aleph-entity-email-v1、aleph-entity-page-v1); - 检索/图谱:API 层按权限过滤后返回搜索结果;UI 提供实体图谱视图(关系可视化)与 xref 交叉比对。
💡 技术拓展:文档实体化的 schema 体系不止「扁平文件」一种建模。Aleph 采用 FollowTheMoney(FtM) 本体——一个面向调查新闻的实体模型规范(Person、Company、Email、Document、Pages、Table 等数十种 schema 及其继承关系)。同类选择对比:
建模方式 代表 特点 适用 领域本体(FtM) Aleph 实体类型语义强、支持关系与图谱 调查数据、实体挖掘 通用 JSON 文档 传统文档检索 schema 灵活但无实体语义 通用全文检索 自定义 SQL 模型 传统业务系统 强事务、弱语义抽取 结构化业务 Aleph 全链路(存储、索引、API、UI 图谱)都建立在 FtM 之上,这是它与普通「文档搜索引擎」的本质差异。
3.3 权限与多租户模型
- **Collection(集合)**是数据与权限的基本单位:数据集(dataset)或调查案卷(casefile)两种形态;
- Role:用户与组,支持将集合共享给组、设置公开(publish 后进入匿名可读的公开门户统计);
- 认证方式:密码登录(
ALEPH_PASSWORD_LOGIN)与 OAuth(ALEPH_OAUTH,对接 Google/Azure/Keycloak 等);4.1 起 API Key 90 天过期(见 2.2)。
四、功能特性
来源:官方文档站(docs.aleph.occrp.org)功能页与仓库 README,逐项核对于 2026-10-24。
4.1 文档全文检索(OCR + NLP)
- 支持任意二进制文档上传/爬取,ingest-file 内置 Tesseract OCR(
ALEPH_OCR_DEFAULTS可配默认语言包,如 eng); - 扫描版 PDF 逐页 OCR 后可全文检索,命中片段在 UI 高亮(
RESULT_HIGHLIGHT); - 自动语言检测(fastText),NER 抽取实体 mentions。
4.2 结构化数据导入与实体图谱
- Excel/CSV 可直接导入为 Table 实体,映射列 → FtM 属性(实体如 Person/Company);
- 支持通过 mappings 目录 +
aleph load-entities批量导入 FtM 实体流; - UI 提供实体详情页与关系图(图谱视图),支持图分析式浏览。
4.3 交叉比对(xref)
平台招牌能力:对任意集合执行 xref,引擎会在全库范围找出与该集合实体相似/匹配的其他实体(跨集合关联同一公司、同一人名、相似文本),结果可导出 xlsx,供调查人员建立「线索关联」。这是 Aleph 区别于一般搜索引擎的核心差异化功能(来源:官方文档 Cross-reference 章节)。
4.4 公开发布门户
集合可发布(publish)为匿名可读的公开检索门户(OCCRP 用它运营公开数据门户),支持站点页定制(ALEPH_PAGES_PATH)、分类目录(categories)与 sitemap 输出(/api/2/sitemap.xml,来源:仓库 base_api.py 实查)。
4.5 API 与自动化
- REST API
/api/2/*:搜索、集合管理、实体批量读写、xref、告警订阅等(OpenAPI 规范可从/api/openapi.json获取); - 告警(Alerts):保存的搜索可订阅,新匹配文档通过邮件通知(需配置 SMTP);
- 通知与导出均为异步队列任务,可水平扩展 worker(
WORKER_THREADS)。
4.6 国际化
UI 多语言(ALEPH_UI_LANGUAGES,默认含 ar/de/en/es/fr/ru 等,来源:settings.py UI_LANGUAGES),支持 RTL(阿拉伯语)。
五、快速开始(最小可用示例)
以下为主线摘要自官方安装文档(来源:docs.aleph.occrp.org/developers/installation/,查询日期 2026-10-24),完整逐步实测过程见本系列部署篇。
# 1. 取官方编排文件与环境变量模板
wget https://raw.githubusercontent.com/alephdata/aleph/4.1.7/docker-compose.yml
wget https://raw.githubusercontent.com/alephdata/aleph/4.1.7/aleph.env.tmpl
mv aleph.env.tmpl aleph.env && vi aleph.env # 至少设置 ALEPH_SECRET_KEY 与 ALEPH_UI_URL
# 2. Elasticsearch 内核参数(官方要求)
sudo sysctl -w vm.max_map_count=262144
# 3. 启动全栈(8 服务)
docker compose up -d
# 4. 初始化数据库与索引
docker compose run --rm shell aleph upgrade
# 5. 创建管理员并访问
docker compose run --rm shell aleph createuser -n root -a -p q1w2e3r4 root@aleph.local
curl -s http://localhost:8080/api/2/statistics
⚠️ 注意:官方安装文档明确建议宿主机 8GB 以上内存;Elasticsearch 需要上述
vm.max_map_count内核参数。逐步骤的实测回显、排障实录(端口冲突、初始化竞态)与 JVM 堆限制方法,见 《Aleph Docker Compose 部署指南》。
六、适用场景与限制
6.1 适用场景
- 调查团队私有资料库:把多来源文档(内部收集、公开抓取、泄露数据)统一入馆,全文检索 + 实体图谱;
- 泄露/海量文件检索:Daphne 式大文件集导入,快速定位涉及人/公司的文档;
- 数据交叉验证:用 xref 对比新数据集与既有库,发现跨集合关联;
- 公开数据门户:发布公共数据集给读者检索(OCCRP 的 Dossier Center 即该形态);
- OSINT 工作流中枢:与 OpenSanctions 等实体数据源结合(Aleph 官方内置 OpenSanctions 数据集导入支持,来源:官方文档 Bulk Data 导入页)。
6.2 限制与成本(选型前必须评估)
- 资源门槛:官方建议 8GB+ 内存;全套含 ES 与多个 JVM/Python 服务,小规格机器(≤4GB)不适合;
- 部署复杂度:8 服务编排 + RabbitMQ/ES/PG 三基础件,升级时需同步 ingest-file 版本(4.1.3 修复过 7zip 安全漏洞,说明摄取链是独立安全面);
- 非实时:文档进入后需经 ingest→analyze→index 队列处理才可检索(分钟级),不是即时可见的同步检索;
- PostgreSQL 10 依赖:官方编排仍基于 postgres:10(2024 年后 EOL 的主版本),自托管需评估数据库生命周期风险(来源:compose 实查);
- API Key 90 天过期(4.1 起):自动化脚本需轮换 Key 或改用会话;
- 中文 NER:语言包与 OCR 默认面向英文(eng),中文文档检索可用,但内置 NER/实体抽取对中文支持有限(Tesseract 需另装 chi_sim 语言包,
ALEPH_OCR_DEFAULTS=chi_sim+eng)。
七、同类选型对比(含量化维度)
7.1 候选清单与量化对照
数据查询口径:GitHub API repos/<owner>/<repo> 与 shields.io,查询日期 2026-10-24。
| 平台 | 最新版本 | 许可证 | GitHub Stars | 主语言 | 定位 | 核心依赖 |
|---|---|---|---|---|---|---|
| Aleph(OCCRP) | 4.1.7(2025-10-27) | MIT | 2473 | Python | 调查数据平台:文档+实体+xref+发布门户 | ES 7.16、PG、Redis、RabbitMQ(8 服务) |
| Datashare(ICIJ) | 活跃(2026-10 仍有推送) | AGPL-3.0 | 767 | Java | 自托管文档搜索引擎(NLP 标注) | ES + PostgreSQL,服务较轻 |
| OpenCTI(Filigran) | 活跃(10.1k stars) | 非 OSI 标准许可(自定义 Apache 附加条款) | 10195 | TypeScript | 威胁情报平台(CTI),非通用调查库 | ES + RabbitMQ + Redis + MinIO |
| Palantir Gotham | 商业闭源 | 商业许可 | — | — | 情报分析全栈 | 商业订阅、私有部署 |
7.2 关键差异与选型建议
- 功能维度:只有 Aleph 同时提供「文档全文 + 结构化实体 + xref 交叉比对 + 公开发布门户 + FtM 调查本体」五件套;Datashare 强在文档 NLP 检索但无发布门户与调查本体;OpenCTI 是威胁情报域的专用本体(STIX),不适合通用调查数据;
- 许可维度:Aleph 的 MIT 是最宽松的(Datashare 为 AGPL-3.0,二次分发需开源;OpenCTI 为自定义条款,商用需读细则);
- 成本维度:Aleph 部署最重(8 服务),Datashare 较轻;小型团队只做文档检索可优先 Datashare,需要实体图谱与门户则 Aleph;
- 社区维度:OpenCTI 星数最高但域不同;在「调查新闻/OSINT 数据检索」这个细分域内,Aleph(2473 stars、9 年持续维护、OCCRP 背书)是事实标准;
- 结论:记者/调查团队/OSINT 团队需要一个可自托管、可发布、带实体关系的调查数据平台 → 选 Aleph;只需文档全文检索且机器资源紧张 → Datashare;威胁情报场景 → OpenCTI;预算充足且要商业支持与一体化情报平台 → Palantir Gotham。
八、参考链接
- 官方仓库:https://github.com/alephdata/aleph
- 官方文档站:https://docs.aleph.occrp.org/
- 安装文档(本文快速开始来源):https://docs.aleph.occrp.org/developers/installation/
- Releases(版本与日期来源):https://github.com/alephdata/aleph/releases
- 4.1.7 Release:https://github.com/alephdata/aleph/releases/tag/4.1.7
- 官方编排文件(架构来源):https://github.com/alephdata/aleph/blob/4.1.7/docker-compose.yml
- 环境变量模板(配置体系来源):https://github.com/alephdata/aleph/blob/4.1.7/aleph.env.tmpl
- FollowTheMoney 本体:https://followthemoney.tech/
- OCCRP 官网:https://www.occrp.org/
- 系列文档:《Aleph Docker Compose 部署指南》、《Aleph 4.1.7 配置参数详解》、《Aleph 4.1.7 常用 CLI 命令与工具详解》