图中“当前”表示已有建库脚本、Alembic 迁移或 Neo4j 读写代码;“目标”仅用于后续迁移设计,尚未部署到生产。
erDiagram
users {
varchar id PK
varchar username UK
varchar password "旧认证,仅本地验收"
boolean is_admin
}
data_orders {
serial id PK
varchar order_no UK
varchar status
integer result_product_id "逻辑引用"
integer result_dataflow_id "Neo4j 节点 ID"
integer data_source "Neo4j 节点 ID"
jsonb graph_analysis
}
data_products {
serial id PK
varchar product_name
integer source_dataflow_id "Neo4j 节点 ID"
varchar target_schema
varchar target_table
varchar status
}
metadata_review_records {
bigserial id PK
bigint business_domain_id "Neo4j 节点 ID"
varchar record_type
varchar status
jsonb new_meta
jsonb old_meta
jsonb resolution_payload
}
metadata_version_history {
bigserial id PK
bigint meta_id "Neo4j 节点 ID"
jsonb before_snapshot
jsonb after_snapshot
varchar created_by
}
task_list {
serial task_id PK
varchar task_name
varchar status
varchar create_by
}
datasource_credentials {
uuid id PK
uuid data_source_uid
integer credential_version
bytea encrypted_payload
bytea nonce
varchar key_version
varchar status
}
datasource_credential_audit_events {
bigserial id PK
uuid data_source_uid
integer credential_version
varchar event_type
varchar actor_uid
text safe_detail
}
data_orders }o--o| data_products : "result_product_id(当前无 FK)"
datasource_credentials ||--o{ datasource_credential_audit_events : "data_source_uid / credential_version"
当前脚本没有为跨表逻辑引用建立外键;跨 Neo4j 引用使用内部节点 ID,存在节点重建后失效风险。下一阶段必须引入稳定业务 UUID,内部节点 ID 仅用于查询加速,不作为长期契约。
flowchart LR
BD["BusinessDomain"] -->|"COME_FROM"| DS["DataSource"]
BD -->|"INCLUDES"| META["DataMeta"]
BD -->|"LABEL"| LABEL["DataLabel"]
META -->|"LABEL"| LABEL
META -->|"ALIAS"| PRIMARY["DataMeta 主对象"]
BD -->|"INPUT"| DF["DataFlow"]
DF -->|"OUTPUT"| TARGET["BusinessDomain"]
唯一方向约定:
BusinessDomain-[:COME_FROM]->DataSourceBusinessDomain-[:INCLUDES]->DataMetaBusinessDomain-[:INPUT]->DataFlowDataFlow-[:OUTPUT]->BusinessDomain-[:LABEL]->DataLabelalias DataMeta-[:ALIAS]->primary DataMeta遗留查询和注释中若出现反方向假设,应在下一阶段以自动化图模型契约测试消除。
Neo4j DataSource 节点保存 uid、类型、主机、端口、数据库、schema、
TLS 白名单选项、连接池覆盖项、credential_ref 和 credential_version。
节点不允许保存 username、password、conn_str、connection_string
或 connection_url。credential_ref 指向平台 PostgreSQL 中相同
data_source_uid 的当前不可变凭据版本:
flowchart LR
DS["Neo4j DataSource\nuid + credential_version"] -->|"逻辑引用"| CRED["PostgreSQL datasource_credentials\nAES-256-GCM 密文"]
CRED --> AUDIT["datasource_credential_audit_events\n不含密钥的审计明细"]
DS --> POOL["Worker 本地池键\nuid + version + fingerprint"]
数据库约束保证同一数据源每个 credential_version 唯一,且同一数据源最多
一个 active 版本。密文使用数据源 UID 和版本号作为认证附加数据,不能复制到
另一个数据源或版本后解密。删除生产凭据表不属于本轮范围。
下表均已由 migrations/ 中的 Alembic 版本链创建,不再只是设计目标。
| 表 | 核心字段 | 约束/用途 |
|---|---|---|
users |
id UUID, username, password_hash, status |
替换旧明文/可逆密码字段 |
roles |
id, code |
固定 admin/editor/viewer,即管理员、编辑者、查看者 |
user_roles |
user_id, role_id |
用户与角色映射 |
governance_responsibility_scopes |
resource_type, resource_uid, revision, updated_by |
组织、业务域、设备及资产、术语、标准、质量、产品、Agent 的责任矩阵版本 |
governance_responsibility_assignments |
scope_id, user_id, responsibility_role, raci_role |
各类 Owner、Steward、架构师、设备资产管理员与 RACI 责任绑定 |
governance_responsibility_audit_events |
resource_type, resource_uid, actor_uid, before_state, after_state |
责任矩阵变更前后快照与操作审计 |
governance_responsibility_hierarchy |
resource_type, resource_uid, parent_type, parent_uid, revision |
组织、业务域和对象层级的责任继承关系与乐观并发版本 |
governance_responsibility_delegations |
source_user_uid, delegate_user_uid, scope_type, responsibility_role, delegation_type, ends_at, current_version |
临时委派、到期收回、主动收回与离岗转交当前态 |
governance_responsibility_policies |
policy_type, scope_type, scope_uid, current_version, active_version_uid |
中央责任策略和跨域联合评审策略当前态 |
governance_responsibility_policy_versions |
policy_uid, version, definition, status, published_by |
不可变责任策略版本和发布证据 |
dataflow_workflow_versions |
id, dataflow_uid, environment, version_no, n8n_workflow_id, status |
一个 DataFlow 对多个 n8n Workflow 版本 |
governance_documents |
object_type, object_uid, object_version, content_hash |
治理对象文本快照 |
governance_chunks |
document_id, chunk_no, content, embedding vector |
Qwen Embedding 结果 |
governance_sync_jobs |
mode, cursor, status, error |
增量同步和每日全量一致性巡检 |
knowledge_query_audits |
query_hash, user_id, roles, business_domain_uids, mode, retriever_counts, cited_points, degraded_components, correlation_id, latency_ms |
最小化知识查询审计;不保存原始问题、回答或证据内容 |
knowledge_evaluation_sets/cases/runs/results |
case_type, allowed_business_domains, expected_sources, expected_answer_points, must_refuse, metrics, citations |
版本化检索、问答、授权与拒答验收证据 |
workbench_layouts |
user_id, layout_version, widgets jsonb |
按用户保存有限标准组件布局 |
outbox_events |
event_id, aggregate_type, aggregate_id, payload, published_at |
跨存储最终一致性 |
datasource_credentials |
data_source_uid, credential_version, encrypted_payload, nonce, key_version, status |
外部数据源不可变加密凭据 |
datasource_credential_audit_events |
data_source_uid, credential_version, event_type, actor_uid, safe_detail |
不含秘密的凭据及连接池审计 |
ingestion_sources |
uid, source_type, config, permission_scope |
数据库、文件、DDL 采集来源 |
source_artifacts |
source_uid, content_hash, storage_ref, parser_version |
MinIO 原件/工件索引与哈希去重 |
ingestion_jobs |
idempotency_key, status, attempt_count, failure_stage, statistics, last_error |
可重复执行、可诊断、可重试的采集状态机 |
catalog_snapshots |
job_uid, source_uid, attempt, content_hash, snapshot |
每次数据库目录采集的不可变结构快照 |
evidence_fragments |
artifact_uid, locator, excerpt, confidence |
页、表、行列、坐标级证据 |
extraction_candidates |
normalized_data, evidence_uids, confidence, status |
解析候选项 |
data_elements |
code, current_version, status, business_domain_uids |
稳定数据元素身份与生命周期 |
data_element_versions |
data_element_uid, version, snapshot, evidence_uids |
不可变数据元素版本 |
candidate_decisions |
candidate_uid, action, data_element_uid, actor_uid |
reuse/create/map/ignore 决策审计 |
device_assets |
uid, asset_type, name, current_version, content_hash, location, organization, responsible_person, attributes |
设备、部件、测点、告警和维护记录的稳定平台档案 |
device_asset_source_mappings |
asset_uid, source_uid, source_entity, asset_type, source_code, source_updated_at |
源系统身份映射;同一来源身份唯一,不在 WP-04 自动跨源合并 |
device_asset_versions |
asset_uid, version, content_hash, snapshot, source_mapping_uid, actor_uid |
设备资产不可变版本和变更来源追溯 |
device_semantic_codes |
ontology_uid, code_type, canonical_code, canonical_name, status, current_version, source_mappings, evidence_uids, suggestion_source, confidence |
故障、原因、措施规范代码;按本体、类型、代码保持唯一身份 |
device_semantic_code_versions |
code_uid, version, snapshot, created_by |
设备语义代码不可变版本;修订只追加、不覆盖历史 |
device_semantic_code_reviews |
code_uid, version, decision, reason, actor_uid |
设备资产负责人对代码版本的批准或退回审计 |
device_entity_match_candidates |
left_asset_uid, right_asset_uid, canonical_asset_uid, status, suggestion_source, confidence, explanation, evidence_uids, current_version |
跨来源实体匹配候选;开放候选对唯一,规则与 AI 候选共用受治理生命周期 |
device_entity_match_reviews |
candidate_uid, version, decision, reason, actor_uid |
人工批准、拒绝或严格门禁自动批准的不可变审核证据 |
device_entity_merge_events |
candidate_uid, canonical_asset_uid, member_asset_uid, review_uid, snapshot |
非破坏性主资产关联及合并前证据快照,不改写设备资产和来源映射 |
device_entity_merge_rollbacks |
merge_uid, candidate_uid, reason, snapshot, actor_uid |
每次合并最多一个追加式回滚事件;原合并事件保留 |
device_quality_profiles |
uid, name, created_by |
设备台账与故障质量策略的稳定身份 |
device_quality_profile_versions |
profile_uid, version, status, rules, content_hash, published_by |
七类封闭规则的不可变版本;只允许一个生效发布版本 |
device_quality_runs |
policy_version_uid, policy_hash, source_uid, total_assets, total_violations, score |
绑定精确策略版本和检查范围的不可变质量执行 |
device_quality_rule_results |
run_uid, rule_code, evaluated_count, violation_count, pass_rate, weighted_score |
每条启用规则的精确计数和得分贡献 |
device_quality_violation_samples |
run_uid, rule_code, asset_uid, field_name, source_mapping_uid, evidence, expires_at |
每条规则最多 100 条脱敏违规样本,保留 30 天 |
device_quality_asset_scores |
run_uid, asset_uid, evaluated_rule_count, violation_count, score |
按适用规则计算的资产级质量评分 |
device_quality_issues |
source_violation_uid, asset_uid, recurrence_key, status, assignee_uid, due_at, current_version |
从违规证据形成的整改问题、状态、责任和复发身份 |
device_quality_issue_remediations |
issue_uid, round_number, summary, evidence_refs, review_status, reviewed_by |
追加式整改轮次和独立复核结果 |
device_quality_issue_timeline |
issue_uid, action, from_status, to_status, actor_uid, payload |
质量问题不可变处理时间线 |
device_operational_events |
source_uid, source_entity, source_code, event_type, asset_uid, component_uid, occurred_at, evidence_refs, content_hash |
告警、故障、维修和停机事件的不可变来源证据 |
device_evidence_relations |
from_kind, from_uid, relation_type, to_kind, to_uid, evidence_refs, source |
设备资产、运行事件和质量问题之间的有向证据关系 |
ontologies |
code, owner_uid, draft_revision, active_version_uid |
本体稳定身份和生效版本 |
ontology_versions |
ontology_uid, version, parent_version_uid, graph_document, content_hash |
不可变本体版本 |
ontology_domain_links |
ontology_uid, domain_uid, role |
多业务域 owner/contributor/consumer 关系 |
ontology_change_sets |
base_version_uid, changes, decisions, status |
动态建议及人工决策 |
ontology_publish_runs |
version_uid, idempotency_key, validation_result, status |
幂等发布运行 |
governance_domain_templates |
template_code, lifecycle_status, current_version, content_hash, definition |
领域模板稳定身份和当前规范化定义 |
governance_domain_template_versions |
template_uid, version, content_hash, definition, actor_uid |
追加式领域模板历史版本 |
governance_object_types |
template_uid, type_code, source_identity_fields, stable_uid_prefix, current_version |
可被业务域初始化的通用治理对象类型 |
governance_domain_template_imports |
template_uid, operation, version, target_version, before_state, after_state, diff |
模板导入和回滚审计 |
环境级唯一生效约束:UNIQUE (dataflow_uid, environment) WHERE status = 'active',保证同一环境只允许一个当前生效版本。
| 治理对象 | 来源 | 文档标识 | 触发方式 |
|---|---|---|---|
| 业务域定义 | Neo4j BusinessDomain |
business_domain:{uid} |
变更后增量同步 |
| 数据流程定义 | Neo4j DataFlow + 版本映射 |
dataflow:{uid}:{version} |
变更/激活后增量同步 |
| 元数据定义 | Neo4j DataMeta |
metadata:{uid} |
审核落库后增量同步 |
| 数据标准/标签 | Neo4j | standard/label:{uid} |
变更后增量同步 |
| 全量校验 | Neo4j + PostgreSQL | 内容哈希 | 每日全量一致性巡检 |
| 设备资产与运行事件 | PostgreSQL device_assets、授权后的来源映射和运行事件 |
device:{uid}:v{version} |
查询时按数据源业务域直接检索,不复制事件原始证据 |
向量由 Qwen 的 embedding 模型生成;DeepSeek 只负责生成式问答。召回结果必须携带对象类型、业务域、版本、更新时间和访问范围,回答必须返回来源对象。
设备检索以 PostgreSQL canonical 数据为源真相:ingestion_sources.permission_scope.business_domains
为空时仅管理员可见;普通用户查询必须先在 SQL 的 authorized_sources 范围内完成来源
映射、事件聚合和文本匹配,候选进入 RRF 后再次按访问上下文授权。设备证据只包含平台
UID、名称、授权源 ID、位置、组织、责任人和授权事件类型/标题/源 ID,不包含数据源配置、
设备扩展属性、事件 evidence_refs 或凭据。LightRAG 仍是影子投影,不能绕过 canonical
授权、直接回答或阻断 canonical 发布。
问答只允许模型选择已召回证据的引用索引;引用无效、证据不足或模型不可用时回答为空,
页面仍可展示当前用户有权访问的检索证据。每次已执行检索和问答必须成功写入
knowledge_query_audits,但只保存规范化问题的 SHA-256、身份/角色/授权域、检索模式、
检索器计数、引用知识点身份、降级组件、关联 ID 和耗时。
WP11 不新增指标快照表,也不允许人工填报聚合结果。五项指标均在请求时从 PostgreSQL canonical 数据计算,并返回固定定义、分子、分母、比率和可用状态:
| 指标 | 分子 | 分母 |
|---|---|---|
| 台账完整率 | 名称、位置、组织、责任人非空,且至少存在一个授权有效来源映射的在用设备 | 当前用户可见在用设备 |
| 责任覆盖率 | 责任人非空的在用设备 | 当前用户可见在用设备 |
| 实体映射率 | 参与有效且未回滚实体合并的在用设备 | 当前用户可见在用设备 |
| 问题闭环率 | 状态为 closed 的可见质量问题 |
当前用户可见质量问题 |
| 问题复发率 | occurrence_number > 1 的可见质量问题 |
当前用户可见质量问题 |
分母为零时返回 rate = null 和 status = no_data,不能用 0% 替代暂无数据。比率最多保留
六位小数。指标明细只返回设备 UID/名称/类型/位置/组织/责任人、授权来源编码、缺失字段、
有效合并 UID,以及质量问题编号、设备、规则、字段、优先级、状态、发生次数、责任人 UID、
期限、关闭时间和实时逾期标记;不返回 device_assets.attributes、质量问题 message/
evidence、数据源 config/permission_scope 或凭据。
授权沿用知识检索的服务端身份和业务域授权上下文。普通用户只可见映射到
authorized_sources 的在用设备;实体合并只有 canonical/member 两端均可见且没有回滚记录
时才能计入;质量问题优先按其明确 source_uid 或 source_mapping_uid 授权。管理员可统计
全部在用设备和问题。聚合与明细均在 SQL 查询阶段先授权,不依赖前端过滤。
该投影只完成设备域固定运营视图,不代表综合业务域评分、员工绩效、排名趋势、成熟度驾驶舱、 通用 BI、NL2SQL 或分析开发平台已经建设。
WP12 不复制一套通用审计日志,也不把自由文本和业务证据汇总到新的高敏感表。审计中心以 现有 PostgreSQL 记录为源真相,只归一化以下六类第一阶段关键操作:
| 类别代码 | 权威记录 | 安全投影 |
|---|---|---|
authentication |
auth_audit_events |
登录动作、成功/失败、用户身份和时间;不返回 IP、User-Agent 或详细错误 |
ingestion |
ingestion_jobs |
采集类型、状态、操作者、数据源 UID、尝试次数和失败阶段;不返回参数、错误正文或源配置 |
entity_resolution |
device_entity_match_reviews、device_entity_merge_rollbacks |
审批/拒绝/回滚、候选或合并 UID 和版本;不返回原因或快照 |
publication |
ontology_publish_runs、device_semantic_code_reviews、device_quality_profile_versions |
本体、代码和质量策略发布/驳回状态与版本;不返回图文档、规则正文或审批原因 |
remediation |
device_quality_issue_timeline |
状态动作、前后状态、问题 UID 和操作者;不返回备注、整改材料或证据正文 |
knowledge_query |
knowledge_query_audits |
模式、引用/降级计数、关联 ID 和耗时;不返回问题原文、回答正文或访问网络标识 |
管理员可按时间窗、类别、操作和状态查看最多每页 100 条安全记录。页面中的“暂无记录”只表示
当前时间窗没有事件,不等于 0% 或审计能力缺失。查看与封存分别受
governance-audit:read、governance-audit:seal 权限控制,均只授予管理员。
governance_audit_seals 是追加式封存记录,保存时间窗、六类类别集合、事件数、根摘要、
HMAC-SHA256 签名、密钥版本、封存人和创建时间。封存过程先对每条规范化安全事件生成
SHA-256,再按稳定顺序生成根摘要,最后对封存元数据签名;复核时重新读取同一时间窗并计算。
单次封存上限为 50,000 条,超过时失败关闭。结果分为 intact、tampered 和
invalid_signature。封存结束时间不得晚于服务器当前时间,避免尚未闭合的时间窗因后续
正常事件被误判为篡改;前端日期按用户本地日历转换,并将当天结束时间收敛到当前时刻。
签名封存用于检测篡改,不等于阻止数据库管理员修改。生产环境必须配置至少 32 字节的独立
AUDIT_EVIDENCE_SECRET 并记录 AUDIT_EVIDENCE_KEY_VERSION;本地工程环境允许使用由
应用密钥派生的回退密钥,但安全检查明确标记为警告,不能据此通过企业安全验收。生产环境
缺少独立密钥时,封存与复核接口失败关闭。采集源明文秘密检查递归扫描嵌套 JSON 配置键,
不只检查顶层字段。五年保留目前是设计目标;定时归档、外部时间戳/不可变存储、法务保全
以及备份恢复证明仍需企业制度和 WP13 交付流程补齐。
领域模板只定义业务域的对象类型、字段、来源身份、责任角色、规则、指标和初始化数据,
不创建第二套领域资产服务。每个对象类型通过 template_code + type_code + canonical
source_identity 计算 UUIDv5 稳定身份;来源身份字段必须在模板中显式声明且值非空。
模板定义使用 canonical JSON 和 SHA-256 内容哈希,版本只追加,不覆盖历史。
dry-run 只执行规范化、秘密字段检查和差异计算,不写数据库。正式导入在同一事务内更新
模板当前版本、追加不可变版本、物化对象类型并写入导入审计;任一步骤失败由 API 回滚整个
事务。回滚读取目标历史版本,但以新版本重新导入,保留原版本和回滚审计。被新模板移除的
对象类型只标记为 retired,不删除类型或业务数据。
P2-WP00 默认的“备品备件/物料主数据”模板包含物料、物料分类、仓库与库位、库存余额、 供应商物料映射、设备备件适配关系六类对象,以及三类责任角色、八条质量规则、三项运营 指标和来源/术语/流程初始化契约。企业真实连接、样本和人员仍需在 P2-WP12 前绑定,模板 不保存密码、令牌、连接串或真实网络地址。
主动元数据保留现有目录采集结果,并将跨批次当前态、不可变版本和变化证据持久化到
PostgreSQL。数据库目录采集产生新快照后,在同一事务中投影到匹配数据源的启用计划;
受控文件和 API 来源使用相同计划与批次契约,由其采集器提交规范化快照。每个计划使用
plan_uid + batch_key 保证幂等,游标只在成功批次后推进。
| 数据对象 | 作用 | 关键约束 |
|---|---|---|
active_metadata_plans |
数据库、文件、API 的发现计划 | 来源、调度、发现模式、范围、游标和责任人显式记录 |
active_metadata_runs |
每次发现批次 | 计划内批次键唯一,保存游标前后值、内容哈希、统计和失败原因 |
active_metadata_assets |
来源资产当前态 | 来源与资产键唯一;缺失资产标记为 deletion_candidate,不物理删除 |
active_metadata_asset_versions |
资产不可变版本 | 内容变化才追加版本,并关联发现批次和操作者 |
active_metadata_changes |
资产与字段增量证据 | 记录新增、字段变化、字段删除候选和资产删除候选 |
active_metadata_lineage |
表级/字段级血缘 | 解析成功保存字段边;失败保存语句哈希和失败原因 |
active_metadata_health_signals |
资产健康时间序列 | 仅接受质量、新鲜度、任务失败和使用热度四类信号 |
active_metadata_corrections |
用户纠错当前态 | 指定责任人处置并采用乐观版本控制 |
active_metadata_correction_audits |
纠错不可变审计 | 提交和处置逐版本追加,不覆盖历史 |
主动发现不会直接覆盖 Neo4j 中已发布的治理元数据。发现变化先以候选和证据形式留在 PostgreSQL;用户纠错也只形成待责任人处置的版本化记录。后续发布仍需走既有评审和发布 门禁。SQL 字段血缘当前采用保守解析:无法可靠解析时失败关闭并保留原因,不猜测字段关系。
P2-WP03 复用现有不可变 DataStandardVersion、数据元素和本体服务,不复制数据标准服务,
新增业务术语、通用代码集和指标定义三类通用语义对象。三类对象统一采用
draft → in_review → approved → published 生命周期;创建者不得审批自己的版本,发布和
回滚只允许管理员。修订和回滚均追加新版本,旧发布版本标记为 superseded,审计不覆盖。
| 数据对象 | 作用 | 关键约束 |
|---|---|---|
semantic_assets |
术语、代码集和指标当前态 | 类型与编码唯一,显式责任人和业务域,乐观版本控制 |
semantic_asset_versions |
不可变语义版本 | canonical JSON 哈希;回滚保存目标版本号 |
semantic_asset_reviews |
独立审批记录 | 创建者与审批者分离,审批理由必填 |
semantic_asset_links |
资产、数据元素、标准版本和代码值引用 | 只允许引用活动资产、已发布数据元素/标准/代码值 |
data_element_field_mappings |
物理字段到逻辑数据元素映射 | 物理字段必须来自活动主动元数据,数据元素必须已发布 |
semantic_publication_audits |
发布链审计 | 创建、修订、提交、审批、发布、回滚和映射均追加记录 |
业务术语保存定义、别名、责任人和关联对象;代码集校验代码唯一、父代码完整性和跨对象引用; 指标只保存定义、公式、单位、维度、责任人和关联资产,拒绝 SQL、脚本、查询或运行时字段, 不提供 BI 计算引擎。语义对象提供安全 JSON 和受控 RDF/XML 导出;本体继续使用既有 JSON/OWL 交换接口,不把普通语义 JSON 冒充 OWL。
语义对象、数据标准和本体发布分别写入 semantic_asset.version_published、
data_standard.version_published 和 ontology.version_published outbox 事件。默认消费者
只领取这三类已注册事件,避免误消费其他业务事件;只有在知识库启用、Qwen 凭据齐备且活动
embedding profile 与模型、维度一致时才同步 PostgreSQL canonical 治理知识。配置未就绪时
事件保留为 pending,不跳过授权、不降级为未受治理向量,也不让 LightRAG 旁路成为源真相。
通用质量模板使用语义字段角色和执行绑定复用质量策略,不把设备或备品备件物理字段写入 平台模板。模板和版本使用 canonical JSON 哈希;只有已发布版本可执行。每次执行固定关联 主动元数据资产、来源、模板版本和批次键,同一资产内批次键唯一。
| 数据对象 | 作用 | 关键约束 |
|---|---|---|
quality_templates |
通用质量模板当前态 | 编码唯一,显式责任人、当前版本和活动发布版本 |
quality_template_versions |
不可变模板版本 | 定义哈希去重,同一模板只允许一个已发布版本 |
quality_profile_runs |
确定性画像执行批次 | 关联资产、来源、模板版本、业务域、上批次和字段绑定;拒绝 AI 判定 |
quality_profile_metrics |
字段画像 | 保存完整率、唯一性、空值、类型、分布、模式和不可逆样例摘要 |
quality_findings |
异常与退化发现 | 保存稳定复发键、发生次数、实际/阈值以及血缘、变更、运行和责任证据 |
quality_sla_events |
新鲜度和质量得分 SLA | 保存达标、违约、恢复、责任人和升级级别 |
执行输入限制为最多 5,000 行、每行最多 200 个标量字段、总计 200,000 个单元格和 800 万字符,并拒绝高风险正则。分布和样例不保存原始值,只保存不可逆 SHA-256 摘要。 服务端从主动元数据读取资产、血缘、变更和采集运行证据,客户端不能提交根因证据覆盖 canonical 数据。画像与异常只用于数据运营与治理,不提供任意 SQL、在线分析、BI 计算或 自动修复。
统一事故层不复制质量、采集或设备证据。active_metadata_runs 和
quality_sla_events 仍是运行状态与质量 SLA 的权威记录;事故服务以稳定源事件键在同一
事务中登记消费、聚合告警并追加事故证据。并发采集通过源事件唯一键和未关闭事故/告警的
部分唯一索引去重。
| 数据对象 | 作用 | 关键约束 |
|---|---|---|
data_slo_policies |
新鲜度、完整性、质量和交付目标 | 范围内 SLI 唯一;保存目标、比较符、统计窗口和责任人 |
data_observability_source_events |
权威源事件消费账本 | 源事件键唯一;信号、状态和处理时间与事故写入同一事务 |
data_observability_alerts |
聚合告警当前态 | 未恢复告警按相关键唯一;保存重复次数、抑制、升级和送达回执 |
data_incidents |
数据事故当前态 | 未关闭事故按相关键唯一;显式责任人、严重度和恢复观察状态 |
data_incident_impacts |
技术异常影响映射 | 只接受资产、数据产品、业务域、用户群和服务五类已绑定对象 |
data_incident_timeline |
不可变处置时间线 | 告警建立/聚合、抑制、回执、升级、恢复和关闭均追加证据 |
data_incident_postmortems |
事故复盘和关闭证据 | 每个事故最多一份;根因、用户影响、纠正措施和关闭证据均必填 |
恢复事件只将事故推进到恢复观察,不自动关闭。只有全部关联告警已经恢复,且事故具有责任、 影响、复盘和关闭证据时才允许关闭。根因由运营人员基于保存证据确认,平台不以 AI 推测替代。 服务视图读取 outbox 积压/失败,任务与数据视图读取事故告警;容量只展示数据库当前用量, 企业容量上限未配置时返回未知,不填造健康结论。
quality_issue/DEVICE_QUALITY_ISSUES 唯一负责的设备资产管理员独立复核。逾期由期限和未关闭状态实时计算,复发由规则、资产和字段的确定性身份统计,不等同于自动根因结论。indicates、triggered 和 evidences 上游关系返回候选及证据路径;没有持久化路径时必须返回“证据不足,无法确认根因”,结果不触发自动修复或维修计划。governance_audit_seals 只追加封存摘要和签名,不接收原始问题、凭据、来源配置、自由文本备注或证据正文。DEVICE_SEMANTIC 本体发布必须同时通过通用图校验、设备语义覆盖度校验和设备资产负责人校验;代码审批复用同一责任矩阵门禁。