Skip to content

fq-compressorFASTQ 压缩系统白皮书

在一个双语站点里同时审阅 fq-compressor 的算法命题、归档契约、性能边界,以及参考研究。

摘要

这里谈压缩率,不是因为它够响亮,而是因为它和检索语义、证据出处、代码边界绑在一起。

fq-compressor 被呈现为一个耦合系统。read ordering、block 级变换、FQC 索引、benchmark 方法学与操作路径,被当作同一份公开契约来叙述。

这里能审计什么

  • ABC、SCM、可逆重排、共识加差分编码的算法框架
  • block 级压缩、归档落盘与 O(1) 随机访问的系统设计
  • 被 benchmark 产物和明确方法学边界约束住的性能叙事

主要仓库锚点

  • 系统设计把公开概念对应到 include/fqc/src/ 与格式职责
  • 性能证据把 benchmark 表述钉回仓库产物和证明边界
  • 参考研究把站点接到论文、对照仓库与归档研究笔记

性能账本

所有公开主张都要和方法、产物、检索成本绑在一起。

这个站点不会把 headline 数字和归档语义拆开看。每个指标都会连回某个子系统、方法学约束,或仓库中的可追溯产物。

查看方法学
01

3.97x

归档密度

压缩比被当作有边界的结果来呈现,而不是脱离数据集范围自由漂浮的口号。

  • ERR091571 smoke-scale 产物
  • 仓库内公开 benchmark 报告
追踪证据链
02

11.9 MB/s

压缩吞吐

压缩速度必须放回流水线、chunk 切分和背压设计中理解,而不是单独的计时数字。

  • 流水线拓扑
  • block 级并行调度
查看流水线
03

62.3 MB/s

回读速度

解压速度仍被放进主叙事,因为只有当检索代价可接受时,随机访问才真正有意义。

  • 解压路径
  • 原始顺序恢复边界
阅读算法综述
04

O(1)

随机访问

索引定位被视为一等契约。格式和 block map 是公开论证的一部分,不是实现尾注。

  • FQC block 索引
  • 无需全量展开的范围解码
研究格式

系统蓝图

整个归档是由一串显式契约拼起来的。

只要每个阶段的边界足够清晰,fq-compressor 就更容易被审计:输入、分析、block 级变换、归档落盘,以及选择性检索。

进入系统设计

01

输入

FASTQ 以及压缩 FASTQ 流,经由 parser 和流适配器进入系统。

io/fastq_parser + io/compressed_stream

02

分析

全局统计负责建立重排意图、chunk 切分与内存纪律。

algo/global_analyzer + common/memory_budget

03

压缩

block 级变换把序列、ID、质量值拆分给不同编码器处理。

algo/block_compressor + quality/id streams

04

落盘

FQC writer 负责写出 blocks、校验和、重排元数据以及后续检索要用的索引。

format/fqc_writer + format/index tables

05

检索

读取端可以在不重放整个归档的情况下完成校验、范围解码或原始顺序恢复。

format/fqc_reader + pipeline/decompressor

为什么 block 是核心边界

block 是同时承载压缩收益、校验作用域和直接定位能力的最小单元。

完整性写在哪里

校验和 verify 流程被放在归档边界,这让检索语义保持可检查。

接下来该看哪里

先读流水线理解并行与流控,再读格式与随机访问理解归档契约。

算法

ABC 与 SCM 被写成一条系统命题

白皮书路径解释 fq-compressor 为什么要把 read ordering、共识化序列表示和质量值建模拆成不同但协作的阶段。

证据

公开主张必须比愿景更窄

性能部分刻意保守。它展示仓库今天能证明什么,而不是项目未来也许能支持的一切大结论。

参考

论文和对照仓库被显式纳入叙事

参考研究把 SPRING [R1]、fqzcomp [R2]、HARC [C2]、NanoSpring [R3] 与本地证据锚点并排放在台面上。

阅读路线

先按问题选择路线,再保持在同一条轨道里。

  1. 01

    高级评审 / 面试官

    在一次阅读里评估项目命题

    先读算法白皮书,再回到性能证据核对每条公开主张。

    入口
    白皮书 -> 性能证据
    结果
    你可以判断公开叙事有没有超出仓库当前能证明的范围。
    进入这条轨道
  2. 02

    操作者

    从安装走到一次可验证运行

    如果当前目标是安装、运行、校验或 spot-check,直接停留在操作路径。

    入口
    操作路径 -> 系统设计
    结果
    你可以运行工具,同时理解格式与校验要求。
    进入这条轨道
  3. 03

    贡献者

    动手前先建立代码地图

    把系统设计与贡献流程并排阅读,先看边界,再改实现。

    入口
    系统设计 -> 操作路径
    结果
    你会知道解析、压缩、格式、命令编排分别归谁负责。
    进入这条轨道
  4. 04

    研究读者

    把设计选择放回外部语境

    参考研究部分负责论文、对照仓库,以及 closeout 阶段的演进说明。

    入口
    参考研究 -> 白皮书
    结果
    你可以说明 fq-compressor 保留、改写或拒绝了哪些上游思路。
    进入这条轨道

引文系统

公开叙事背后必须站着论文、仓库和本地证据锚点。

核心文献

  • [R1]
    SPRING 论文

    最接近 assembly-based compression 与可逆重排框架的论文来源。

  • [R2]
    fqzcomp 仓库

    质量值编码取舍的重要外部参照。

  • [R3]
    NanoSpring 论文

    帮助说明 fq-compressor 没有优先围绕长读长场景优化。

继续阅读

对照仓库

  • [C1]
    Spring

    read ordering 与 consensus-and-delta 推理最重要的上游参考。

  • [C2]
    HARC

    适合比较 FASTQ 专用压缩器的架构与范围。

  • [C3]
    fqzcomp

    质量值建模是否值得独立成流的重要对照物。

继续阅读

仓库证据

  • [E1]
    benchmark/results/

    已跟踪的机器可读与叙事型 benchmark 产物。

  • [E2]
    docs/archive/

    仅保留历史研究与治理材料,供参考使用。

  • [E3]
    vendor/spring-core/

    用于研究的提取参考代码和许可边界。

继续阅读