Aleph 4.1.7 介绍与选型指南

OCCRP 开源调查数据检索平台 Aleph 4.1.7 的介绍与选型指南:定位/架构/功能特性全解,含与 Datashare、OpenCTI 的量化选型对比,全部信息于 2026-10-24 联网溯源官方源取证。

Aleph数据平台ElasticsearchPython2026/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)。它把两类异构数据统一到一个可搜索的平台上:

  1. 原始文档:PDF、邮件(.eml)、Office 文档、图片、HTML 等任意文件,经解析、OCR 与 NLP 处理后可全文检索;
  2. 结构化数据:CSV/Excel 表格、公司注册数据、泄露数据集等,映射为实体(人、公司、地址、资产等)进入图谱索引。

OCCRP 将其用于自家调查报道的「资料库中枢」,并衍生出面向公众的数据门户(Dossier Center 等)。对内网自托管场景,Aleph 是「团队私有调查档案库 + 泄露数据检索 + 实体关系挖掘」三合一的开源方案。

2.2 版本节奏与生命周期

版本发布日期(UTC)关键变更来源
4.1.32025-07默认 ingest-file 升至 4.1.2,修复 7zip 处理安全漏洞Releases 页
4.1.62025-08-07引入「维护模式」(maintenance mode)权限修复Releases 页
4.1.72025-10-27升级到 Python 3.10(PR #4328)Releases 页
4.1.82025-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 逐项核对。

服务代码/镜像职责默认端口
apighcr.io/alephdata/aleph:4.1.7Flask API(Gunicorn 6 worker),REST 接口 /api/2/*8000(内部)
uighcr.io/alephdata/aleph-ui-production:4.1.7React 前端 + Nginx 反代 /api 到 api8080(对外映射)
worker同 api 镜像消费 RabbitMQ 队列:索引、告警通知、xref、导出等异步任务—
shell同 api 镺像管理端命令入口(aleph CLI 执行环境)—
ingest-fileghcr.io/alephdata/ingest-file:4.1.2文档解析:格式转换、OCR(Tesseract)、语言识别、NER 实体抽取—
elasticsearch官方定制镜像(ES 7.16.1 + ICU)全文索引与实体索引(每 schema 一组索引)9200
postgrespostgres:10.x业务库:用户、集合、权限、实体数据库(FtM Store)5432
redisredis:alpine缓存与异步统计6379
rabbitmqrabbitmq:3.9-management-alpine任务队列总线(ingest/analyze/index/notify 等 op)5672 / 15672

3.2 数据流:从一份 PDF 到可检索实体

以一份扫描版 PDF 进入平台为例(来源:官方 ingest-file 文档与仓库代码 aleph/logic/queues.py、ingestors 包结构梳理):

  1. 上传/爬取:文档进入集合(Collection),二进制存入文件归档层(本地目录或 S3 兼容对象存储,ARCHIVE_TYPE 决定);
  2. ingest:ingest-file 从 RabbitMQ 领取 ingest 任务,识别 MIME,走对应解析器(PDF → 逐页栅格化 → Tesseract OCR 出文本);
  3. analyze:语言识别(fastText)、NER 实体抽取(人名/组织/地址/邮箱/电话),产出 FollowTheMoney(FtM)schema 实体(Email、Pages、Page、Person、Table 等);
  4. index:worker 消费 index 任务,把实体写入 ES 的 per-schema 索引(如 aleph-entity-email-v1、aleph-entity-page-v1);
  5. 检索/图谱: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 限制与成本(选型前必须评估)

  1. 资源门槛:官方建议 8GB+ 内存;全套含 ES 与多个 JVM/Python 服务,小规格机器(≤4GB)不适合;
  2. 部署复杂度:8 服务编排 + RabbitMQ/ES/PG 三基础件,升级时需同步 ingest-file 版本(4.1.3 修复过 7zip 安全漏洞,说明摄取链是独立安全面);
  3. 非实时:文档进入后需经 ingest→analyze→index 队列处理才可检索(分钟级),不是即时可见的同步检索;
  4. PostgreSQL 10 依赖:官方编排仍基于 postgres:10(2024 年后 EOL 的主版本),自托管需评估数据库生命周期风险(来源:compose 实查);
  5. API Key 90 天过期(4.1 起):自动化脚本需轮换 Key 或改用会话;
  6. 中文 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)MIT2473Python调查数据平台:文档+实体+xref+发布门户ES 7.16、PG、Redis、RabbitMQ(8 服务)
Datashare(ICIJ)活跃(2026-10 仍有推送)AGPL-3.0767Java自托管文档搜索引擎(NLP 标注)ES + PostgreSQL,服务较轻
OpenCTI(Filigran)活跃(10.1k stars)非 OSI 标准许可(自定义 Apache 附加条款)10195TypeScript威胁情报平台(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。

八、参考链接