锡膏印刷和产品老化都要进 SPC,但两者是两种负荷:印刷按片到达,压力在「一天多少行」;老化按秒持续写入,压力在「每秒多少点,断网后要补多少」。分开算完,两个答案指向同一个前提:明细不能全量进关系库。

全文三部分:先算容量与并发,再给解决方案,最后把方法抽成一套可复用的步骤。
第一部分 · 容量与并发评估
01为什么两个对象要分开算
印刷是件次数据。一片板进来,背后约 1,000 行焊盘记录;本片结束,下一片再出一批。老化是持续流。在测单元每 10 秒上传一轮,全天不停,断网恢复后还有补传尖峰。
一类算日行数,一类算每秒点数,混在一起就说不清。评估口径:印刷 22 条线、全天开机、20 秒一片;老化 7 条线 × 4 个柜 × 200 个单元,每 10 秒上传 5 个参数。后文数字都按这个口径推。
先印刷、后老化。全文两处都用这个顺序。
02印刷:算的是日行数
22 条线、20 秒一片、全天开机,一天约 9.5 万片。这是板子的片数,还不是数据行。
一片约 200 个焊盘,每个看面积、体积、高度和两个方向的偏移,一片约 1,000 行。乘下来一天 9,500 万行;全进同一张关系表,一个月就破 28 亿行。
控制图用不到这些明细,它读的是片级结论和分组特征。所以要收口:入库只留 1 行片级结果、约 40 行分组特征和不良点位;合格焊盘的 1,000 行实测写成一个文件,用板号索引;上下限挂在检测程序版本上,不随片复制。这样库里约 400 万行/天,是全量的 4%。
印刷的结论:入库约 400 万行/天,控制图只读其中约 40 行特征,整片明细留在文件里。
节拍改成 30 秒,或者每天只开 16 小时,数据量大约再降三分之一。步骤不用改,磁盘按实测下调。
03老化:算的是每秒点数
在测 7 × 4 × 200 = 5,600 个单元。每个单元一天上传 8,640 次,每次 5 个参数,全厂一天约 2.42 亿个点,摊到每秒是 2,800 点。
上线时可以按单柜核对:200 个单元 ÷ 10 秒 × 5 个参数 = 100 点/秒,28 个柜合计 2,800 点/秒。单柜速率对得上,再谈扩展。
老化的结论:稳态 2,800 点/秒,7×24 不停;断网补传按稳态 10 倍留余量,约 2.8 万点/秒,并且单独排队。
04三年留存:拆开存才装得下
印刷的约束在行数,老化的约束在持续写入和补传尖峰。两类负荷放在一起比三年留存:全量进关系库约 23 TB;按访问方式拆开,约 4 TB,只有前者的六分之一。
同一份数据,换个存法体积差六倍。这是后面所有设计的出发点。
容量和并发都算完了,答案都指向同一句话:明细不能全量进关系库。解决方案按同一顺序展开。
第二部分 · 解决方案
05一个底座:按读法分四种存放
点位明细、10 秒曲线、质量特征、看板上的当前值,读法互不相同,落在一张表里必然互相拖累。按读法分开:按时间翻的进时序表,按板号或序列号点开的进关系表,全量明细进文件只留索引,看板要的当前值放内存、不留历史。
下面两个实例的每一步,都落在这四种里:印刷的片级结果和不良点位进关系表,特征进时序表,1,000 行明细进文件;老化的曲线和出架特征进时序表,占用记录进关系表,当前值进内存。
06印刷:一次检测拆成五路
一次检测在接入侧就拆开,控制图只走特征这一路。
- **写片级结果。**关系表 1 行:板号、线体、时间、程序版本、总判定。
- **先汇总再入库。**约 200 个焊盘按孔径族、按板上前 / 后 / 左 / 右汇总成约 40 行特征,含体积、高度、偏移,进时序表。
- **明细分开。**不良焊盘逐点进关系表;合格焊盘的实测写成一个文件,约 1,000 行,用板号索引,文件头只记程序版本。
- **上下限跟版本走。**程序版本变化时写一次,每片用版本号关联。
控制图的子组就是一片板,主特性用锡膏体积,高度和偏移伴随。某个区域的体积持续偏高或偏低,用来区分刮刀、印刷速度和脱模。印刷压力、速度、钢网仍用设备上已有的过程记录,对齐到同一条线、同一段时间。
调机和查不良走数据库;只有要打开某一片的全部焊盘,才按板号读文件。
07老化:曲线记槽位,序列号记占用
曲线一天 2.42 亿个点,不能每一行都带序列号。序列号放在占用记录里------「谁在什么时间占了哪个槽」;曲线只记柜、槽、参数、时间和实测值。回放时先查占用,拿到柜、槽和时间窗,再去读曲线。
产品 A 在 14:00 放进 3 号柜 12 号槽,18:00 取出。入架先写一条占用,带上配方版本;14:00 到 18:00 的曲线只记「3 柜 · 12 槽」;18:00 出架时用这段曲线算出四个数,挂到 A 上。

- **入架写占用。**序列号、柜号、槽位、入架时间、配方版本;出架时间先空着。
- **在测只追加曲线。**每 10 秒、每个参数一行进时序表:柜号、槽位、参数、时间、实测值,外加一个质量标记------正常 / 无效 / 估算 / 补传。
- **最新值单独覆盖。**该槽当前值放内存,给看板和即时越限;历史曲线留在时序表。
- **出架算四个数。**补上出架时间,按柜、槽取出这段曲线,算出斜率、最小余量、越限次数、残差,挂到序列号上送给质量系统。
- **回放按占用查。**输入序列号得到柜、槽和时间窗,再用这三个条件读曲线。
- **补传另开队列。**柜侧或边缘先落本地,网络恢复后走独立队列,按 2.8 万点/秒准备,质量标记写「补传」;同一柜、同一槽、同一参数、同一时间已有点,就跳过。
| 数 | 取哪一段 | 用来判断什么 |
|---|---|---|
| 残差 | 升温段。实测减去该时刻配方应到的值 | 升温是否偏了,优先看传感器和接触 |
| 斜率 | 稳定段。配方进入保温之后,对时间计算 | 保温时是否还在漂 |
| 越限次数 | 整段占用窗口 | 越过上下限的次数 |
| 最小余量 | 整段占用窗口 | 离上下限最近的距离。接近 0 就标成关注 |
在线告警用第 3 步的当前值,过程回放用第 2 步的曲线,批次漂移用第 4 步挂在序列号上的四个数。三件事用的是同一次占用。边缘侧大约 1 秒攒一批再写入,这一层只负责收齐。
先拿 1 个柜把六步走通,核对 100 点/秒,再复制到 28 个柜。
08实施顺序与验收
- **先建表。**占用、曲线、出架特征三张;曲线按时间分区、按参数压缩;印刷侧同时建好片级结果、特征表和点位文件索引。
- **先接 1 个老化柜。**200 个单元、每 10 秒 5 个参数,应对上 100 点/秒;抽一个序列号,能回放曲线并取出架四个数。
- **再接满 28 个柜。**2,800 点/秒持续写入时,当前状态仍在 3 秒内打开;印刷同步接,片级结果和特征表可用之前,每片 1,000 行只留在文件里。
- 最后做断网演练。 断开 24 小时,4 小时内追平,重复点被跳过,补传点能按质量标记查出来。

验收就三条:写得动、查得回、补得上。
参数若从 5 个增到 10 个以上,写入和磁盘近似按比例增加,曲线仍按参数压缩,步骤不变。影像类检测不在这组口径里,可以沿用「一个板号一个文件」,容量另计。
第三部分 · 方法论
09这类数据接入 SPC 的通用五步
印刷和老化只是两个实例。检测明细、测试曲线、设备过程量,只要进入控制图或质量判定,都按同样五步处理:先判断负荷形态,再决定存在哪里、特征何时算、主键写在哪一行、补传如何重入。
- **先分清负荷形态。**件次型算日行数,并估算单表一个月会到多少行;持续流算稳态点数每秒,断线补传按稳态的约 10 倍另计。两类指标分开报告。
- **按访问路径存放。**沿时间翻阅的进时序库,按单号点查的进关系表,全量明细进文件并只留索引,看板当前值放内存且不保留历史。
- **特征在接入时算完。**控制图的输入是子组特征;上下限挂在程序或配方版本上,随版本变更写一次,不复制到每一行。质量系统只订阅特征和判定。
- **高频行不携带业务主键。**序列号、工单号写在占用或单据上,曲线按设备位置和时间追加;回放时先用单据得到时间窗口,再读曲线。
- **实时与补传分路,补传可重入。**设备或边缘先落本地,恢复后走独立队列;同一位置、同一参数、同一时刻已有数据则跳过,并留下可追溯的补传标记。
两条实例落在同一张表上
| 步骤 | 锡膏印刷 | 老化过程 |
|---|---|---|
| 负荷 | 每天约 9,500 万行明细 | 稳态 2,800 点/秒,补传约 10 倍 |
| 存放 | 特征进时序表,明细进文件 | 曲线进时序表,占用进关系表 |
| 特征 | 每片约 40 行,子组为一片板 | 出架计算斜率、余量、越限、残差 |
| 主键 | 板号在片级结果和文件索引 | 序列号在占用记录,曲线按柜和槽 |
| 补传 | 同一片已入库则跳过 | 独立队列,同一时刻已有点则跳过 |
下一个数据源进来,先填这张表,再定表结构和接入方式。
容量决定留什么,并发决定怎么写,访问路径决定存在哪里。控制图消费特征,原始数据在接入侧完成收口。