架构设计 (Architecture)

Loambase Foundry 借鉴了业界领先的数据语义平台架构理念。本文档将向平台管理员和开发者介绍系统的整体逻辑层级、数据流向以及安全隔离设计。


1. 核心架构分层

整个平台从底层数据到上层应用,严格划分为以下四个层级:

  1. 数据集成层 (Data Integration Layer) 负责从各种内外部数据源(MySQL、PostgreSQL、API、Kafka 等)抽取数据进入平台。支持基于 CDC(变更数据捕获)的实时同步与定时批处理同步。
  2. 数据湖仓与计算层 (Lakehouse & Compute Layer) 这是平台强大的海量数据处理底座。
    • 统一存储 (Apache Iceberg):平台的数据集(Dataset)底层采用 Iceberg 开放表格式存储。这为海量数据提供了 ACID 事务保证、Schema 演进能力以及时间旅行(Time Travel)查询支持。
    • 计算引擎 (Flink & Spark):DAG 流水线(Pipeline)会根据计算特性自动路由。对于高吞吐的离线清洗聚合任务调度至 Apache Spark 执行;对于需要毫秒级延迟的实时数据流,则下推至 Apache Flink 处理。
  3. 本体建模层 (Ontology/Semantic Layer) 将底层 Iceberg 物理表映射为业务可理解的本体对象(Ontology Object),提供面向对象的图谱查询、关联导航和业务动作(Action)定义。
  4. 应用与分析层 (Application & Analytics Layer) 为终端用户提供基于本体的应用程序构建(App Builder),以及面向开发者的 SDK 接入层(React / Agent SDK)。

2. 数据与控制流向

在 Loambase Foundry 中,数据流(Data Flow)和控制流(Control Flow)是清晰分离的:

  • 自下而上的数据流 (Data Flow): 数据从底层的外部数据库进入平台,经过 Pipeline 清洗成为派生数据集,最终映射为本体对象展示在前端页面上。这是一条纯粹的“读取”链路,保证了底层数据的安全。
  • 自上而下的控制流 (Control Flow): 前端应用或大模型 Agent 无法直接对底层数据库执行 UPDATEDELETE 语句。所有的“写操作”必须通过在本体层定义好的 业务动作 (Action) 发起。Action 经过平台统一的权限校验和审计后,才会将修改落库。

3. 安全、隔离与可观测性

作为企业级平台,Loambase Foundry 在架构设计上内置了严格的安全与治理能力:

3.1 身份认证与多租户

  • OIDC 集成:平台支持接入标准的 OIDC(如 Keycloak、Auth0 等)身份提供商,实现企业级 SSO 单点登录。
  • 租户隔离:支持基于域名的多租户隔离,租户之间的数据、本体模型和应用资产完全物理或逻辑隔离。
  • 工作空间 (Workspace):在同一租户内,支持创建不同的工作空间,基于 RBAC 模型精细控制成员对特定数据集或应用的访问权限。

3.2 数据血缘 (Data Lineage)

  • 平台内置数据血缘追踪能力。任何一个本体对象的属性发生变化,或者一个应用页面的图表数据异常,都可以通过血缘图谱,追溯到它是由哪个 Pipeline 算子计算得出的,最终来源于哪个外部数据库的哪张表。

3.3 审计与日志

  • 所有的架构层级调用(包括外部系统的 API 触发、Agent SDK 的工具调用、App Builder 触发的 Action),均会统一经过 API 网关,并被记录在审计日志中,确保“谁在什么时间修改了什么数据”有迹可循。

4. 扩展与开放能力

平台并非封闭的黑盒,在关键层级均提供了开放能力:

  • 数据源扩展:支持通过实现标准连接器接口,快速接入自定义类型的外部数据源。
  • UI 组件扩展:在 App Builder 层,允许开发者注册并上传自定义的 React 渲染组件。
  • API 与 Webhook:当本体层发生数据变更或动作触发时,支持通过 Webhook 向外部业务系统发送事件通知。