C3 · 出版卷 13

Data Pipeline and Audit

Sample IDs、chain of custody、batches、units、lineage

学习目标

读者应能定义稳定 sample/result identity;核对 collection、custody、preparation 与 analytical batch;在规范 result model 中保留 unit、method、limit 与 qualifier;版本化 transformation 与 validation decision;把 map/target statement 追溯到 immutable input;自动检验 completeness 与 uniqueness;形成无需任何机构背景也能由审阅者复现的 release package。

Data pipeline 是 measurement system 的一部分。优秀的 field/laboratory programme 仍会被 duplicate identifier、unit conversion、row shift、lost qualifier、coordinate error 或 undocumented exclusion 破坏。Audit 从 identity design 开始,到 decision output 结束。

Identity、Hierarchy 与 Custody

使用稳定且项目中立的 sample identifier,不在其中编码容易改变的 interpretation;display label 分开。表示 field sample、fraction、split、reject、pulp、solution、dilution 与 reanalysis 的 parent–child relation。每个 physical object 都有自身 identity 并连接 parent;一个 identifier 不能复用给不同 material。

Custody record 连接 handover event、container/shipment identity、count、适用的 seal/condition、responsible role、timestamp 与 exception。Custody 不证明样品正确,却能约束 mix-up/loss。每次 transfer 都核对 expected 与 received identity;授权 correction 作为含 reason 与 approval role 的新记录。

Location、medium、horizon、depth、mass、field observation 与 collection time 属于 field-sample entity;preparation/analytical batch 是 process relation,不能在 reanalysis 后随意覆盖。Model 应支持一个 sample 有多个 method 与 result version。

Result Model、Unit 与 Qualifier

Result 采用 long typed structure 或同等约束模型:sample identity、analyte、value、unit、qualifier、lower/upper bound、method、preparation、dilution、batch、report version 与 validation status。对 intended result key 强制 uniqueness,同时允许不同 version/method。通过约束后再生成 wide table。

可审计管线核对 sample identity、custody、batch、qualified result、transformation 与 released decision
可审计管线核对 sample identity、custody、batch、qualified result、transformation 与 released decision

使用 controlled unit 与 dimension-aware conversion。Mass basis 的 parts per million 数值等于 mg/kg,但 water 的 mg/L 若无 density/basis 不能互换;dry 与 wet mass 不同;percentage 转 mass fraction 必须显式。Original unit 保留,normalised value 是 derived field。

Qualifier 是 typed data。Import 时丢失 less-than sign,会把 interval 变成 exact limit value。Not analysed、insufficient material 与 interference 映射到不同 status code;unknown code 应停止 load 供 review,不能静默变 zero/null。

Validation、Transformation 与 Provenance

Validation 检查 schema、identity、referential integrity、range、unit、qualifier、batch、coordinate、control role 与 reconciliation。结构正确的 value 仍可能因 blank failure 或 medium mismatch 而 scientifically unusable。Machine validation 与 fitness decision 都要保存 reason/scope。

每个 transformation 是 versioned activity,含 input version、rule、parameter、output field、execution environment、responsible role 与 timestamp,例如 unit/coordinate conversion、censoring scenario、log-ratio、batch exclusion、domain assignment、interpolation 与 target ranking。Hash 可确认 file identity,却不解释 scientific meaning。

Lineage 应回答:哪些 field sample 贡献 map cell?哪个 laboratory report/method 提供 result?哪些 control 决定 validation?哪些 qualified value 被转换?什么 rule/parameter 形成 figure?哪个 target decision 使用它?Screenshot 无法回答,应保留 data 与 executable 或精确指定的 transformation。

Release、Reproducibility 与 Governance

冻结 release manifest:dataset identifier/version;file/table;schema;row count;hash;coordinate reference;unit;method inventory;censoring profile;QA/QC summary;exclusion;transformation;known limitation;access class;supersession relation。Release note 区分 correction 与 reinterpretation。

自动测试 uniqueness、required field、parent existence、expected sample count、valid unit-method combination、qualifier-bound consistency、coordinate bound、control frequency 与 orphan result。Human review 仍负责 geological comparability、unusual pattern 与 fitness for purpose;automation 只能捕捉已声明规则。

Access/privacy control 可限制敏感 location 或作业记录。教学 release 可 generalise coordinate 或用 synthetic data,但必须说明;redaction 是有 lineage 的 derived release,不能暗示 generalised coordinate 是 original measurement。教学与复现不需要任何公司或个人身份。

合成计算案例

某合成 field programme 有 120 个 routine sample 与 12 个 QA/QC sample,共应收到 132 个 physical submission。Receipt table 只有 131 个 unique identity,缺一个 routine sample;result file 有 133 个 distinct label,其中含一个 suffix 变体的 duplicate 与一个 unknown label。Pipeline 必须停止,单看 row count 会漏掉两类错误。

授权核对后,missing sample 保持 not received;suffix variant 通过 correction record 映射到 physical identity;unknown label 确认为不在 field table 的 laboratory control。Released model 有 132 个 expected field identity、131 个 received、一个 missing status 和一个独立 typed laboratory control,没有虚构值填空。

一个 analyte 有 130 条 routine/field-control result,其中 8 条 left-censored、2 条 right-censored。只含 130 个 plain number 的 wide export 必然损失信息;合规 export 需含 value、qualifier、bound,或另带 display field。Log-ratio view 要引用 censoring rule 与 dataset version。

管线审计流程

  1. 定义 immutable identity 与 parent–child material relation。
  2. 核对 expected、collected、dispatched、received、prepared 与 reported object。
  3. 验证 custody、batch、method、unit、limit 与 qualifier。
  4. 把 original report 不变地装入 versioned raw layer。
  5. 以 declared/tested transformation normalise,不覆盖 input。
  6. 把 QA/QC finding 应用为 scoped fitness status 与 reason。
  7. 检验 uniqueness、completeness、referential integrity 与 coordinate plausibility。
  8. 追踪 analytical view、map 与 target 的 input/code version。
  9. 发布 manifest、schema、quality summary、limitation 与 supersession。
  10. 在 clean environment 复现并比较 count/hash。

练习与复核

  1. 为一个 sample 的两种 method、一次 dilution 与一次 reanalysis 设计 key。
  2. 为 qualifier、lower/upper bound 与 numeric value 写 validation rule。
  3. 核对 expected 50、received 49、report row 51 且有两个 duplicate identity 的 shipment。
  4. 把一个 map class 反向追到 interpolation、transformation、validation、assay 与 field sample。
  5. 起草区分 original coordinate 与 generalised teaching release 的 manifest。

复核问题:每个 physical object 是否唯一?Expected 与 received 是否核对?Original unit/qualifier 是否保留?Derived result 能否复现?Gap 与 scientific limitation 是否可见?

来源与延伸阅读