---
myst:
  html_meta:
    "moi:status": "draft"
---

# Catalog

平台上可复用的东西——卷、表、模型、算子——挂在同一棵对象树上，由一处统一登记。这个登记处叫 **Catalog**。它不是数据的清单：知识库与智能体靠它找到数据；要复用算子、把算子发布为 API，也在这里找。

## 对象层级

Catalog 按对象树组织资产：

**工作区 → 目录 → 数据库 → 卷 / 表**

- **目录**分两类：MOI 目录（数据存在平台内）与外部数据库目录（连接外部库，数据留在源端）。
- **数据库**是一组相关数据对象的容器；其下可挂卷和表。
- **表**存放结构化数据，**卷**管理文档、图片等非结构化文件；**模型**和**自定义算子**是 Catalog 中可管理的其他资产。
- 表与卷同处一个数据库，结构化与非结构化数据由此并置管理；模型与自定义算子也在 Catalog 中统一管理。

## 数据存在哪，Catalog 记的是什么

数据进入 MOI 后有两处物理落点：原始文件以字节形态存入对象存储；经工作流加工后，结构化产物写入数据库 MatrixOne。表里的数据在 MatrixOne，卷里的文件在对象存储——两类数据物理上分开存放。

Catalog 记录这些对象的元数据和关系，包括资产类型、来源、处理工作流和 AI 使用关系。知识库和智能体通过 Catalog 获取所引用数据资产的信息。

## 数据血缘

Catalog 自动记录数据的来龙去脉，无需人工登记。平台内每一次加工都已显式声明输入与输出——数据导入声明「外部源 → 表」，工作流算子声明「表 → 处理 → 表」，知识库声明封装了哪些表。把这些声明拼接起来，血缘图自动成形：任何一份加工产物，都能追溯回它的原始来源。

## 两类目录：自建与联邦

| | MOI 目录 | 外部数据库目录 |
|---|---|---|
| 数据存放 | 在 MOI（对象存储 + MatrixOne） | 留在源数据库，MOI 只登记元数据 |
| 可写性 | 可增删改 | 只读，结构由上游决定 |
| 查询 | 平台内执行 | SQL 下推到源库执行，数据不入 MOI |

外部数据库目录让企业已有的数据库（MySQL、PostgreSQL、Oracle 等）不必搬迁，即可纳入统一目录浏览与查询。

## 使用边界

Catalog 的登记以平台内的操作为准。绕过平台直接改动 MatrixOne 的数据库表后，需执行一次元数据同步，Catalog 才能与真实数据对齐。

## 延伸阅读

- [架构与核心概念](../index.md)
- [知识库](knowledge-bases.md)
- 算子与模型在树上的位置见[系统算子库](../../../reference/general/system-operators.md)与[系统模型库](../../../reference/general/system-models.md)
- 操作步骤见[资源中心 · Catalog](../../../guides/ai-studio/resource-center/catalog.md)
