信息速览
1998 年 9 月 19 日夜里,一台装在 2.5 米望远镜上的成像相机拍下第一批科学级图像;2009 年 11 月 18 日夜里它拍完最后一批,前后留下约 35,000 平方度的图像,去重后覆盖 14,055 平方度天区。此后这台相机再没有新的科学产出。但 SDSS 这个名字没有停下:2026 年 7 月 30 日发布的第二十次数据发布(DR20)里,按 allspec 汇总文件 v1.0.2 统计,全部产品合计提供 27,671,504 条光谱与积分视场数据单元,其中第五代 SDSS-V 自身贡献了 18,468,795 条。名字里那个 “Sky Survey” 是成像时代的遗产,今天的 SDSS 主要是一台光谱机器。
这就是使用 SDSS 数据要过的第一道认知关:你要的那个 SDSS,是哪一代的 SDSS、哪台望远镜、哪套流水线。它不是一份静态数据集,而是五代巡天、三套谱仪、二十次发布叠加出来的累积体。叠加带来的第一个麻烦是身份:SDSS-I 到 SDSS-IV 的唯一目标靠 sdss_primary 与 boss_primary 在 specObj 文件里确认,SDSS-V 改用了 sdss_id,写在 DR20 新增的 allspec 汇总表里。官方注意事项页面写得很直白——本版 allspec 中共有 10,046,926 个历史目标缺 SDSS ID,占总数的 36%;另有 1,106 个 MaNGA 目标有数据产品却没有对应的 SDSS ID。同一颗星在两代数据里可能是两条互不相认的记录,这决定了你能不能把跨越二十六年的观测拼成一条时间序列。把这三点记牢,才算真正会用 SDSS DR20 全天光谱这份发布。
第二个稀缺性来自南天。SDSS 长期只有北半球一台观测者在跑:新墨西哥州的 Apache Point Observatory(APO)。从 DR20 起,智利 Las Campanas Observatory(LCO)杜邦 2.5 米望远镜上的光学多目标光谱首次进入发布,这条线把 SDSS 真正推成一个全天设施。对使用者来说这不是 “多了些南天数据”,而是口径变了:过去所有 “SDSS 全天” 的说法,严格讲只覆盖半个天球。一屏速览见下表。
| 维度 | 内容 |
|---|---|
| 全名 | Sloan Digital Sky Survey Data Release 20(SDSS DR20) |
| 发布方 | SDSS 合作组,由天体物理研究联盟(Astrophysical Research Consortium,ARC)代管 |
| 当前阶段 | SDSS-V,2020 年 10 月开始取数,预计运行至 2027 年 |
| 当前版本 | DR20,2026 年 7 月 30 日发布(同源新闻稿称其为 SDSS-V 第三次数据发布) |
| 上一版本 | DR19;SDSS-IV 的终版为 DR17(2021 年 12 月) |
| 观测设施 | APO 2.5 米 Sloan 基金会望远镜(北)、LCO 2.5 米 du Pont 望远镜(南)、LVM-I(LCO) |
| 主要仪器 | BOSS 光学光谱仪两台、APOGEE 近红外光谱仪两台、LVM-I 积分视场装置一套 |
| 目标规模 | 官方口径:光谱覆盖超过 400 万颗恒星、300 万个星系、200 万个类星体 |
| 光谱总数 | 27,671,504(allspec v1.0.2):光学 23,046,726、红外 4,613,505、积分视场立方体与拼块 11,442 |
| 成像范围 | 拍摄约 35,000 平方度,唯一天区 14,055 平方度;DR20 未新增成像数据 |
| 光学波段与分辨率 | 3650–9500 埃(SDSS-V 良好吞吐区间),R 约 1560–2650 |
| 近红外波段与分辨率 | 1.51–1.70 微米(H 带),R 约 22,500 |
| 积分视场波段与分辨率 | 360–980 纳米三通道,R 约 4,000 |
| 文件格式 | 主要为 FITS,另有 FTCL/Yanny 参数文件;allspec 提供 parquet 版数据模型 |
| 本次增量体量 | 258,854 个目录、131,594,049 个文件、102.75 TB |
| 历代合计增量体量 | 5,554,702 个目录、395,204,551 个文件、755.90 TB |
| 许可 | 公开发布的数据按官方政策属公有领域;网站图像按 CC-BY 授权,须保留署名 |
| 引用要求 | 官方要求在致谢中列出 Alfred P. Sloan 基金会、Heising-Simons 基金会、NSF 与参加机构 |
§1 它要解决的具体麻烦
1.1 巡天的三件事:宽、深、多历元
天文巡天一直要在这三件事之间取舍。宽决定了能不能谈结构,宇宙大尺度结构要有几千平方度以上的连续覆盖才测得出来;深决定了能看到多暗的天体,代价是同样的观测时间只能覆盖更小天区;多历元决定了能不能看到变化,活动星系核宽发射线区的反响映射、双星的轨道周期、恒星的径向速度起伏,都要同一目标被重复观测几十次才有信号。
五代 SDSS 各有偏重。SDSS-I/II 主打宽场成像;SDSS-III 的 BOSS 主打深场宇宙学测量;SDSS-IV 的 MaNGA 第一次把 “一个星系内部不同位置各自的谱” 变成常规产品;SDSS-V 把多历元摆到第一优先。这不是宣传口径的变化,而是硬件改造的结果:旧的铝合金打孔板模式下换一次目标要花约 20 分钟,机器人焦面系统把这个时间压到约 3 分钟,这才让 “同一个目标每晚看一眼” 变成可行的排期,也让短时标的机会目标(Target of Opportunity)有插进序列的可能。DR20 中出现的第一条 SDSS 机会目标光谱,就是这个能力第一次落到公开数据里。
SDSS-V 对自己的官方定义有两句:第一个提供全天多历元光学与红外光谱的设施;对银河系与本星系群星系提供连续积分视场覆盖。拆开看正是上述三件事的组合——前一句是宽加多历元,后一句是宽加深(空间分辨意义上的深)。
1.2 四条常见的错误期待
第一条,期待它是 “最新的天文图像库”。成像相机 2009 年就停了,官方明确说 DR20 不含任何新增或更新的 SDSS 成像数据,看图像要去 DR17 时代的 SkyServer 成像页与 SAS 遗留目录。想做星系形态分类或光学图像预训练的人在这里会白跑一趟。
第二条,期待 DR20 的 APOGEE 数据是新数据。DR20 首页与银河系绘图者页都写明:本发布没有新增 APOGEE 光谱,也没有对旧谱的新分析,只是把 DR19 的产物复制过来,便于在同一个发布点上凑齐最近期的公开数据。做红外恒星参数的人,内容等同 DR19。
第三条,期待积分视场部分已经是成熟的样本。DR20 的 169 幅拼块覆盖 6 个目标(银河系内的 Rosette 星云、Trifid 星云、猎户座的 Flame 与 Horsehead 星云,Helix 行星状星云,以及本星系群的 M33 与 NGC 4945),官方把它称作 “预览”,并说明更多的拼块会在后续发布中出现。把它当总体样本用,结论会不稳。
第四条,期待它的每个计数都是干净的。allspec 数据页官方声明:光谱计数包含定标与试观测光谱,没有按质量与其他数据质量警告标志过滤;同一条谱会被重复计数——一次观测的光谱既计入单次文件,也计入它所参与的合并谱。把 27,671,504 直接当 “独立天体数” 会立刻错。
1.3 它能给到的与给不到的
| 你的需求 | 它给的 | 够不够 |
|---|---|---|
| 全天多历元光学光谱 | 黑洞绘图者对活动星系核与 X 射线源的多历元观测 | 够,这是公开数据里的稀有组合 |
| 银河系恒星的化学丰度与径向速度 | APOGEE 的 H 带高分辨谱加 Astra 多管道参数,共 18 份增值星表 | 够,注意 Astra 0.8.1 只处理 BOSS 输入 |
| 近邻星系的积分视场发射线图 | 169 幅本地-volume 拼块,35 角秒空间像素,猎户座处空间分辨率约 0.07 pc | 够做天体级案例研究,不够做统计样本 |
| 深场光学图像与形态样本 | DR17 及以前的遗留产品 | 不再更新,查阅够、追新不够 |
| 千平方度级的星表检索 | CAS 与 SkyServer 的 SQL、CasJobs 批量查询 | 够,免注册可用 |
| 跨代际的目标对证 | allspec 的 sdss_id 与 multiplex 表 |
部分够:10,046,926 个历史目标缺 ID |
| 到极限星等的深场名录 | — | 不够,SDSS 的定位是宽而浅,不是窄而深 |
| 与近期状态严格同期的光谱加图像 | 光谱到 2025 年 2 月 2 日,图像到 2009 年 | 不够,两者不同期 |
1.4 你的处境与它能帮到的事
| 你的处境 | 它能帮你什么 | 下一步该做什么 |
|---|---|---|
| 做光谱分类模型,缺一个量级够大的公开语料 | 光学加红外合计两千七百万条量级的公开光谱,带官方红移与分类 | 先用 spAll 汇总文件做样本清单,再回 SAS 拉对应的 spec 文件 |
| 被跨代 ID 卡住 | allspec 把 DR8 到 DR20 的各流水线汇总并成一张表 | 先读 allspec 的实体关系图与外键清单,不要按目录树猜关系 |
| 要开一门数据密集的天文实习课 | CasJobs 的 SQL 接口与官方 Python 笔记本可在浏览器里跑 | 从官方教学笔记本起步,避开百 TB 量级的下载 |
| 要做一个可复现的管线 | 发布内每一层的版本都被写死(Run2d v6_2_1、allspec 1.0.2) | 在方法节写清 v6_2_1 与 1.0.2,老版本走对应历史目录 |
| 要查国内机构是否可以引用这一联合 | 参加机构名单含中国科学院国家天文台与云南大学 | 致谢按官方给出的全文照录 |
| 研究模型的分布外泛化 | 北天与南天、APO 与 LCO、参考谱仪与前摄谱仪构成天然偏移轴 | 把 mjd 与望远镜列作为分组键,而不是随机切分 |
1.5 一句话判断
它不是 “一个数据集”,而是一套在同一名下持续二十六年、每过一段时间就以新发布号呈现的档案体系:用它先确定自己要哪一代的产物,再去取那一层目录,而不是笼统地 “下载 SDSS”。
1.6 不适合谁:四条边界
不适合想要 “一站式整包” 的人。 SAS 是按产物名组织的层次目录,不是压缩包。原始观测数据、定标数据、处理产物分开放,各自的体量差异巨大:单是机器相机(GCAM)数据就占了累计 36.5 TB(北 12.50 TB、南 24.00 TB)。官方推荐的路径是把代码搬到数据旁边的 SciServer Compute,或用 SDSS Access 按产物拉取。
不适合追求极高精度天体测量的项目。 SDSS 的强项是光谱与宽场成像,毫角秒级的相对位置与自行不是它的主场;需要精确自行或位置参考架的任务应当去找专门的巡天产品,把 SDSS 用在它擅长的红移与化学丰度上。
不适合要求 “图像与光谱同期” 的项目。 成像止于 2009 年,光谱延续到 2025 年 2 月 2 日。任何想在同一发布里取同期图像与光谱的设计,都要先接受这个十六年的时间差。
不适合期待隐私或个体授权文档的工程场景。 SDSS 的观测对象是天体,不含个人信息,也不提供与此相关的合规文书;它的数据政策只处理 “数据属公有领域、图像需署名” 这两件事。
§2 数据构成与规格
2.1 一个发布包由七类目录组成
DR20 的科学档案服务器(Science Archive Server,SAS)根目录 https://dr20.sdss.org/sas/dr20/ 下只有七个子目录:data/、env/、mos/、prior-surveys/、spectro/、vac/、vap/`。这个分工本身就是理解整个包的线索。
| 目录 | 放的东西 | DR20 是否新增 |
|---|---|---|
spectro/boss/ |
SDSS-V 的光学处理产物,流水线版本 v6_2_1 | 是,南北两台都新增 |
spectro/apogee/ |
APOGEE 近红外产物,版本 1.3 | 否,复制自 DR19 |
spectro/astra/ |
Astra 分析管道汇总,DR20 版 0.8.1 与复制版 0.6.0 | 部分是 |
spectro/lvm/ |
积分视场的 DRP 与 DAP 产物 | 是,169 幅拼块 |
spectro/allspec/ |
跨流水线汇总表,版本 1.0.2 | 是 |
prior-surveys/sdss4-dr17-eboss/ 等九个目录 |
SDSS-I 到 SDSS-IV 的历史产物 | 否 |
mos/target/ |
多目标光谱的选源表 | 部分更新 |
vac/bhm/、vac/mwm/、vac/mos/ |
增值星表共 18 份 | 是 |
vap/ |
增值产品 1 份 | 是 |
data/boss、data/fcam、data/gcam |
原始观测数据,按南北分目录 | 是 |
历史目录的存在方式值得留意。prior-surveys/ 下的九个目录在 SAS 上的时间戳分布在 2015 到 2022 年之间,它们不是被重新处理过,而是被链接进新发布,使 DR20 成为 “累积发布”。官方对 “累积” 与 “增量” 给过明确定义:直接替换上一发布内容的产物算增量;包含指向上一发布链接的产物算累积。理解这一点才知道为什么全拷贝 SAS 会出两类错——只拷增量可能断链,沿链接全拷可能重复下载同一文件。
2.2 产品与关键字段的完整字典
严格说 SDSS 没有一张统一的表,它按流水线分散在 FITS 文件里。下表把最常用的汇总文件、它们承载的关键字段与用途列出;每个文件的每一列都有官方数据模型(datamodel)定义。
| 产品 | 位置 | 关键列 | 含义 | 使用注意 |
|---|---|---|---|---|
allspec |
spectro/allspec/1.0.2/ |
sdss_id、各流水线自有 ID |
DR8 到 DR20 全部光谱的索引 | 计数含重复,未按质量过滤 |
multiplex |
同上 | field、mjd、run2d |
每次观测的时间与流水线版次 | 用外键与 allspec 连接 |
spAll-v6_2_1 |
spectro/boss/redux/v6_2_1/summary/ |
catalogid、z、class、zwarning |
SDSS-V 光学谱的红移与分类 | 有每日、历元、全历元三版 |
specObj-dr17 |
prior-surveys/…/ |
specobjid、sdss_primary、boss_primary |
SDSS-I 到 IV 的光学总表 | 6.7 GB,自 DR17 未变 |
allStar-1.3-apo25m |
spectro/apogee/redux/1.3/summary/ |
apstar_id、参数、丰度 |
红外合并后的恒星级参数 | 368 MB |
allVisit-1.3-apo25m |
同目录 | visit_id、单次观测参数 |
每次观测的红外参数 | 909 MB |
apStar、apVisit |
…/stars/、…/visit/ |
— | 红外恒星级与单次观测光谱 | 两种粒度用途不同 |
mwmStar、mwmVisit |
spectro/astra/0.8.1/spectra/ |
按仪器分扩展 | Astra 重打包后的恒星光谱 | 0.8.1 只含 BOSS v6_2_1 输入 |
fieldlist-v6_2_1 |
spectro/boss/redux/v6_2_1/ |
field、mjd、run2d |
SDSS-V 观测场清单 | 目前只在 SAS,不在数据库表 |
photoPosPlate-dr17 |
prior-surveys/…/ |
位置匹配列 | 光谱目标与测光天体的位置匹配 | 16 GB,自 DR17 未变 |
| 选源表 carton | mos/target/ |
carton、sdss_id |
多目标光谱的选源分组 | 体系庞大,先读 semaphore 标志定义 |
贯穿这套体系的是两条 ID 线索。specobjid 是 SDSS-I 到 IV 光学数据的主键;sdss_id 是 SDSS-V 的统一主键,也是 allspec 用来把不同流水线串起来的键。红外侧有 apstar_id 与 visit_id,积分视场侧用 mangaid。跨版本做连接时,官方给出的外键清单是唯一可靠依据:
| 外键表 | 连接列 |
|---|---|
DR20 BHM spAll |
specobjid |
DR17 SDSS/eBOSS SpecObjAll |
specobjid |
DR19 MWM apogee_drp_allstar |
sdss_id |
DR19 MWM apogee_drp_allvisit |
file |
DR17 apogeeStar |
apstar_id |
DR17 apogeeVisit |
visit_id |
DR17 mangaDRPall |
mangaid |
DR20 BHM fieldlist |
field、mjd、run2d |
DR17 SDSS/eBOSS PlateX |
plate、mjd、run2d |
DR17 apogeePlate |
plate、mjd、apred_vers |
DR17 MaNGA platelist |
plate、mjd、drpver |
这张表有一个被低估的实用价值:它告诉你哪些东西在数据库里查不到。allspec 与 multiplex 表可以直接在 SkyServer 的 SQL 接口里选,但 DR20 BHM 的 fieldlist 与 DR17 MaNGA 的 platelist 目前只有 SAS 上的 FITS 文件。想用一句 SQL 查 “哪个目标在哪个夜里被哪个视场观测过” 的人会在这里撞墙,必须先自己把 SAS 的文件读进来。
2.3 一条光谱文件的完整解剖
DR18 是文件命名规则的分水岭。SDSS-I 到 IV 时代的组织单元是打孔铝板(plate),文件名结构是:
3586/spec-3586-55181-0016.fits
四个数字分别是板号 3586、修正儒略日 55181(观测夜)、光纤号 0016。这套编号的前提是 “一晚一块板、一根光纤对应一个对象”,而机器人焦面系统打破了这个前提,于是 DR18 起改成:
15166/spec-15166-59251-04492065339.fits
第一位是视场号(field),第二位是修正儒略日,第三位则是 catalogid——一个十位数左右的目标号,不再受 “单夜最多一千根光纤” 的限制。这意味着同一个 catalogid 在同一个夜里可以出现在多个视场,也可以在同一视场里累积多次观测。用文件名做去重键的做法在 DR18 之后失效,必须回到 sdss_id。
在光学侧,同一批目标的合并谱还分成三种粒度:每日合并(daily)、按视场多夜合并(epoch)、自定义全历元合并(allepoch)。三个版本各自的汇总文件大小不同:daily 985 MB、epoch 891 MB、allepoch 95 MB。选哪个版本取决于你要不要 “更长的等效积分”,而不是 “哪个更新”——它们同时存在,互不替代。
读取一条谱的最小写法:
from astropy.io import fits
import numpy as np
fn = 'spec-15166-59251-04492065339.fits'
with fits.open(fn) as hdul:
flux = hdul['COADD'].data['flux'] #-- 流量,单位是十亿分之一焦耳类的管内单位
loglam = hdul['COADD'].data['loglam'] #-- 波长的以 10 为底对数
info = hdul['SPECOBJ'].data #-- 红移与分类在这一扩展里
lam = 10 ** loglam #-- 对数波长还原成埃
print(len(lam), round(float(lam.min()), 1), round(float(lam.max()), 1))
print(info['Z'][0], info['CLASS'][0], info['ZWARNING'][0])
这段代码里有两个必须先知道的约定:波长以 loglam 存储,要 10**loglam 才还原成埃;流水线使用真空波长而不是空气波长,与实验室常用空气波长表对照时会有系统性偏移。这两点在谱线图上看不出来,但在做谱线中心位置、速度偏移与跨库对比时会直接生效。
2.4 SDSS ID 与跨文件对照的第一原则
官方在 DR20 注意事项里专门开了一节讲身份,因为它牵涉两套名字。sdss_id 是内部编号;在国际天文学联合会记录与 SIMBAD 中,同一个东西被写做 “SDSS DR##”,## 是发布号(例如 19、20)。官方说明数字部分在内外两套表示之间一致,所以不用担心 “外面的号和手里的号对不上”,但要小心发布号会跟着新发布走——写论文时必须锁定发布号。
然后是那个绕不开的问题:本版 allspec 中共有 10,046,926 个历史目标缺 SDSS ID,占总数的 36%。官方说这些目标多数其实已经分配了 SDSS ID,可以从其他产品(选源文件、数据库表)取到,链接问题会在未来发布里解决。由此得出一条实际做事顺序:
| 你的做法 | 结果 | 建议 |
|---|---|---|
只用 allspec 当历史样本的抽样框 |
丢掉约三分之一的历史目标 | 用 MOS 选源表补充 ID |
只用 sdss_id 做 SDSS-V 内部连接 |
可以跨 DRP 自动对齐 | 对 SDSS-V 段可靠 |
把 DR17 的 specobjid 与 SDSS-V 的 sdss_id 直接等号 |
失败,两者不是同一套键 | 走官方外键清单 |
| 用 SIMBAD 标识符反查 | 可行,但发布号必须写对 | 固定引用 DR20 |
另有 1,106 个 MaNGA 目标有数据产品却没有 SDSS ID,官方说明它们对应若干辅助目标,不属于原始选源。这一问题被排到 DR21 解决。
2.5 三条谱仪线的结构差异
| 对比项 | BOSS(光学) | APOGEE(近红外) | LVM-I(积分视场) |
|---|---|---|---|
| 台数 | 2 台,APO 与 LCO 各一台 | 2 台,APO 与 LCO 各一台 | 1 套,装在 LCO |
| 同时取样数 | 每台每次 500 条 | 每次 300 个目标 | 科学 IFU 1,801 根光纤 |
| 波段 | 3650–9500 埃(良好吞吐),最大 3600–10400 埃 | 1.51–1.70 微米 | 360–980 纳米,三通道 |
| 分辨率 | 蓝道 R 1560@3700 至 2270@6000;红道 R 1850@6000 至 2650@9000 | R 约 22,500 | R 约 4,000 |
| 空间取样 | 2 角秒(APO)、1.3 角秒(LCO) | 2 角秒(北)、1.31 角秒(南) | 35 角秒像素,0.5 度视场 |
| 探测器 | 红道 4K×4K 全耗尽 LBNL CCD,蓝道 4K×4K e2v,15 微米像素 | 3 块 JWST H2RG 2048×2048,18 微米像素 | 9 块 STA 4850,−100 ℃ |
| 代表产品 | spec-*、spAll |
apStar、apVisit、allStar、allVisit |
拼块立方体与发射线拟合 |
| DR20 状态 | 新增,数据截至 2025-02-02 | 无新增,等同 DR19 | 新增 169 幅拼块 |
这张表能回答一个常见的选型疑问:为什么有人说 SDSS 的光学谱与红外谱 “不是同一个东西”。三套仪器的定位不同,彼此不能完全替代。BOSS 胜在目标数量与红移测量;APOGEE 胜在高分辨率下的化学丰度与径向速度——官方给出的径向速度基底约 100 m/s,SDSS-V 的三项硬件改造(Fabry-Perot 干涉仪、八边形光纤、背压调节器)目标是把精度提到约 30 m/s;LVM 胜在把一片延展天区变成连续的高光谱立方体。
2.6 三个观测窗口各自看的物理量
| 窗口 | 能看到什么 | 适合的任务 | 主要陷阱 |
|---|---|---|---|
| 光学蓝道 3600–6350 埃 | 莱曼断裂、强吸收线、蓝色连续谱 | 类星体红移、恒星连续谱拟合 | 蓝端效率依赖定标;作波长标定用的是 3610.51 埃的 Cd I 弧线 |
| 光学红道 5650–10000 埃 | Hα、[N II]、[S II]、Mg b、Na D | 星系发射线诊断、恒星金属丰度 | 红端 10400 埃之外无数据;z 约 0.7 的 Mg b 与 Na D 会落到红端边缘 |
| 近红外 H 带 1.51–1.70 微米 | 密集的恒星吸收线,可穿透尘埃 | 恒星元素丰度、银河系结构 | 只提供恒星级与单次观测两种粒度 |
| 积分视场 360–980 纳米 | 一整片延展天区的发射线分布 | 电离气体、行星状星云、近邻星系 | 一幅拼块只是一个预览单元,不是总体样本 |
波长制度那一条再说一次:SDSS 的波长标准是真空波长,这是官方在谱仪页面明确提醒的约定。与之相关的另一个隐蔽点在注意事项页没写、但在读文件当天就会遇到:loglam 的对数采样意味着做傅里叶类操作前必须先重采样到线性波长网格,否则 “恒定 δλ” 的假设在全波段不成立。
§3 它是谁的数据
3.1 贡献者与治理结构
SDSS 由分布在几十家机构的国际合作组运行。治理分三层:天体物理研究联盟(ARC)的董事会(Board of Governors)对项目范围与预算做决定;咨询委员会(Advisory Council)向董事会提出建议;合作组委员会(CoCo)负责出版政策与数据访问政策的制定与执行。日常运行由中央项目办公室(CPO)与管理委员会(MC)承担,后者包含 CPO 与各 Mapper 负责人、仪器组与基础设施团队的领导人。
参加机构名单里有两行与中国有关:中国科学院国家天文台(National Astronomical Observatories of China)与云南大学,都在 DR20 新闻稿列出的机构清单中。这个细节对写致谢有用——致谢里的 “参加机构” 不是修辞,而是政策要求的对象清单。
DR20 发布时的官方联系人有三人:
| 角色 | 姓名 | 单位 |
|---|---|---|
| SDSS-V 科学发言人 | Emily Griffith | 科罗拉多大学博尔德分校 |
| SDSS-V 主任 | Juna Kollmeier | 卡内基科学研究所 |
| SDSS-V 数据产品协调人 | Anne-Marie Weijmans | 圣安德鲁斯大学 |
3.2 时间线
| 时间 | 事件 | 意义 |
|---|---|---|
| 1998-09-19 | 成像相机取得首批科学级数据 | SDSS 观测史开始 |
| 2000 | SDSS-I 常规观测开始 | 宽场成像与红移巡天启动 |
| 2000–2008 | SDSS-I/II | 8000 平方度深度多色成像,逾 700,000 个天体的光谱 |
| 2005–2008 | SDSS-II 的超新星巡天与 SEGUE | 数百颗超新星;25 万余颗恒星的运动与成分 |
| 2008–2014 | SDSS-III(BOSS、SEGUE-2、APOGEE、MARVELS) | 谱仪改造并加两个新仪器,跑四个交错巡天 |
| 2009-11-18 | 成像相机最后一夜科学数据 | 成像数据就此定格 |
| 2014–2020 | SDSS-IV(eBOSS、APOGEE-2、MaNGA、MaStar) | 宇宙学测量、红外南北巡天、首次逐个星系内部的积分视场制图 |
| 2020-10 | SDSS-V 开始取数 | 全天多历元加积分视场阶段启动 |
| 2021-12 | SDSS-IV 终版 DR17 | 前四代的数据到此为止 |
| 2021-12 / 2022-08 | 两套机器人焦面系统分别安装在 APO 与 du Pont | 重配置时间从约 20 分钟降到约 3 分钟 |
| 2023-04 | LVM-I 在 LCO 取得首光 | 积分视场装置进入观测状态 |
| 2023-07-18 | LVM-I 开始每夜科学观测 | 拼块数据开始积累 |
| 2023 | DR18 | SDSS-V 的第一次发布 |
| 2025-07 | DR19 | 首次发布 SDSS-V 的 APOGEE 结果,并引入 allspec |
| 2026-07-30 | DR20 | 首次发布南半球光学数据、169 幅拼块、18 份增值星表 |
时间点里有两处需要标注来源。DR19 的时间来自 SDSS 合作组页面的表述(“当前发布是 DR19,于 2025 年 7 月宣布”),该页面的更新进度落后于 DR20;DR20 的日期来自官方新闻稿列表中的发布消息(2026 年 7 月 30 日)。另外,DR20 页面正文自称 “SDSS-V 的第二次数据发布”,而同源的 “DR20 新内容” 页面与新闻稿都称其为第三次——DR18 是第一次、DR19 是第二次,按序号 DR20 应为第三次,本文采用 “第三次” 并在此记录官方自述的不一致。
3.3 采集场景:南北两台,加一套独立积分视场装置
北半球一侧是新墨西哥州的 Apache Point Observatory,2.5 米 Sloan 基金会望远镜,由 ARC 出资、新墨西哥州立大学运行。南半球一侧是智利 Las Campanas Observatory 的 2.5 米 Irénée du Pont 望远镜,由卡内基科学研究所运行:2017 年 2 月至 3 月安装了 APOGEE 南谱仪,SDSS-V 阶段又接收了第二台 BOSS 谱仪。
这个南北分工在 DR20 之前是不对称的:SDSS-IV 阶段 LCO 主要产出 APOGEE-2 红外数据,南天的光学多目标光谱长期缺席。DR20 改变了局面——BOSS 光学谱仪被移到 du Pont 上,配合 2022 年安装的第二套机器人焦面系统,南天第一次有了与北天同类型的光学多目标光谱。这也是本文标题那个判断的技术根据。
LVM-I 是另一回事。它不装在 2.5 米望远镜上,而是四台 16 厘米 f/11.4 望远镜组成的阵列:一台收集科学光,另外三台同时记录定标数据,使每次曝光都能做流量与天空改正。设施布在 LCO 的山脊上,自动化程度很高,几乎每个晴夜都会自动开镜,液氮冷却系统每天自动加注;还有三台小型定标视场单元(60、59、12 根光纤)与 18.5 米光纤链路。
3.4 数据来源的三个层次
理解 SDSS 的数据要先分清三层:原始观测(data/ 目录,按 boss、fcam、gcam 与南北分目录)、流水线产物(spectro/ 下的 redux、astra、lvm 目录,含处理过的谱与参数)、派生产品(vac/ 与 vap/ 目录,由科学团队针对具体问题加工)。第一层体量最大,若只用到汇总参数就不必下载;第二层是绝大多数人的工作层;第三层是别人已经替你想过一遍的结果,但它与发布版本的挂钩关系比核心产品更松。
还有第四层容易被忽略:访问接口。同一份数据通过 SAS、CAS 与 CasJobs、SciServer Compute、Zora 与 Valis、LVMvis 呈现出来时的粒度并不相同。Zora 与 Valis 面向 SDSS-V 的光学红外谱与恒星参数;Marvin 面向 SDSS-IV 的 MaNGA 立方体;两份科学档案网页版分别面向单次光学谱与单次红外谱; LVMvis 面向积分视场拼块。选错接口会让你以为数据不存在。
§4 它最独特的东西
4.1 全天多历元为什么稀缺
重复观测同一个目标几十次,听起来只是多花时间,实际要求整条观测链条配合。打孔铝板模式下一块铝板要提前钻孔、装进 cartridge,再在台上争取观测窗口,一次排期基本锁死了这晚能看到什么。机器人焦面系统把重配置时间从约 20 分钟压到约 3 分钟,这才使 “同一批目标每晚看一眼” 变成可执行的排期;再叠加南北两台设施,一个目标在一年里可以从两个半球穿插观测。
官方给 SDSS-V 的定位句因此有两个关键词:全天与多历元,而它同时在光学与近红外两个窗口做到这一点。由此得到一条实用判断:如果你要的是随时间变化的物理量——活动星系核的宽发射线响应、恒星的径向速度起伏、X 射线源的光学对应体在爆发期间的状态——SDSS-V 是目前公开来源里唯一量产这类序列的地方。
4.2 三个 Mapper 的分工与重叠
| Mapper | 全称 | 科学目标 | DR20 新增内容 |
|---|---|---|---|
| BHM | Black Hole Mapper(黑洞绘图者) | 活动星系核、X 射线源、反响映射 | 约五十万个星系与类星体的光学谱与红移,含首次南天的 eROSITA 目标 |
| MWM | Milky Way Mapper(银河系绘图者) | 恒星的空间分布、参数与丰度 | 约 150 万颗恒星的光学谱,以及 Astra 给的参数、丰度与径向速度 |
| LVM | Local Volume Mapper(本星系群绘图者) | 电离气体的连续分布 | 169 幅拼块覆盖 6 个目标 |
| Open Fiber | Open Fiber Programs(开放光纤计划) | 合作组外部的个性化选源 | 更新的选源信息 |
四个部分共用同一批光纤、同一套焦面系统,因此一个目标可以同时属于多个 Mapper;它们之间的关系由 mos/target/ 下的 carton(选源分组)体系描述。这是 SDSS-V 相对前一代的重要变化:前几代按 “什么巡天” 组织数据(BOSS、eBOSS、MaNGA 各是意图明确的一盘货),SDSS-V 按 “什么科学目标” 组织选源,再在 allspec 层重新汇聚成一个以 sdss_id 为键的谱池。
4.3 案例:169 幅拼块里的六个目标
积分视场部分最能说明 “预览” 两个字的含义。DR20 释放的六类目标分别是:银河系内的 Rosette 星云、Trifid 星云、猎户座的 Flame 星云与 Horsehead 星云;行星状星云 Helix(DR19 已发布过,DR20 给出更新定标的重处理版本);以及两个本星系群星系 M33 与 NGC 4945。
| 目标 | 类型 | 看点 |
|---|---|---|
| Rosette 星云 | 银河系 H II 区 | 大质量恒星反馈如何作用于分子云 |
| Trifid 星云 | 银河系 H II 区 | 年轻星团与电离前沿 |
| Flame / Horsehead | 猎户座的 H II 区与暗星云 | 空间分辨约 0.07 pc 的电离前沿结构 |
| Helix 星云 | 银河系行星状星云 | DR19 发布过,DR20 为更新定标后的重处理版本 |
| M33 | 本星系群星系 | 近邻星系整盘尺度的发射线分布 |
| NGC 4945 | 本星系群星系 | 侧向星系与其中的活动星系核外流 |
这组目标的排布有明确的示范意图:三个银河系 H II 区加一个行星状星云加两个星系,恰好覆盖 LVM 的三种科学情景,目的是让用户先看清这套装置能产出什么。仪器参数:0.5 度科学视场、1,801 根科学光纤、35 角秒空间像素、三通道 R 约 4,000、Hα 灵敏度约 1 Rayleigh;计划规模是四年内超过 5,500 万条谱、天区约 2,500 平方度。与 DR20 释放的 169 幅拼块相比,后续还有三个量级的空间。
要一句话判断这一轮取样盯着什么:它是仪器能力说明书级别的样本,不是总体统计学意义上的样本。用它写 “本星系群的星际介质如何如何” 的统计结论现在还不到时候;用它验证积分视场数据的处理流程、或找一个形态漂亮的天体做图,则恰如其分。
4.4 产品粒度:三种合并层次与两种红外文件
SDSS 的一份光谱存在多种粒度,任务决定该拉哪一层:
| 粒度 | 光学侧 | 红外侧 | 什么时候用 |
|---|---|---|---|
| 单次观测 | 经 spAll 索引的单夜谱 |
apVisit |
要看单次短 exposure 的质量 |
| 每日合并 | spectra/daily/spec-* |
— | 默认用法 |
| 场内多夜合并 | spectra/epoch/spec-* |
— | 要把数夜数据堆到更高信噪比 |
| 全历元合并 | spectra/allepoch/spec-* |
— | 只有部分目标有这份定制产品 |
| 恒星级合并 | — | apStar |
一个目标全部观测的红外合并谱 |
| 分析管道重打包 | mwmStar、mwmVisit |
同左 | 想一次拿到多类型扩展的产品 |
“Astra 重打包” 这一行值得多说一句。从 DR19 起,SDSS-V 引入一个同时处理 BOSS 与 APOGEE 谱的分析管道 Astra,对同一目标跑多个针对性不同的恒星参数管道。DR20 提供两个版本:0.8.1 处理 BOSS v6_2_1 的输入(即本次新谱),0.6.0 是从 DR19 复制的、包含 DR19 APOGEE 谱的版本。这意味着在同一个发布里,“想要 BOSS 参数” 和 “想要 APOGEE 参数” 要落进两个不同版本的目录,且彼此不能替代。
4.5 边界条件:官方自己写下的限制
| 官方声明 | 位置 | 对你的影响 |
|---|---|---|
| 计数含定标与试观测光谱,未按质量过滤 | allspec 数据访问页 | 27,671,504 不是科学目标数 |
| 同一条谱会被重复计数(单次加合并) | 同上 | 抽样前先定粒度,否则同一目标多次入样 |
| 本版 allspec 有 10,046,926 个历史目标缺 SDSS ID | DR20 注意事项页 | 历史部分不能直接当抽样框 |
| 1,106 个 MaNGA 目标没有对应 SDSS ID | 同上 | 涉及 MaNGA 辅助目标的统计要单独处理 |
| DR20 无新增 APOGEE 谱与分析 | DR20 首页、银河系绘图者页 | 红外部分等同 DR19 |
| 部分 DR20 场清单只在 SAS,不在数据库表 | allspec 页 | 查不到,需要读 FITS 文件 |
| 169 幅拼块是未来数据的预览 | DR20 数据访问页 | 不能当完成的样本使用 |
| 成像数据自 DR17 后不再更新 | DR20 成像页 | 追新的人在这条线上没有新东西 |
§5 怎么拿到:从目录树到可训练张量
5.1 目录结构与下载面
DR20 的 SAS 入口是 https://dr20.sdss.org/sas/dr20/,官方把它称作 DR20 的落地页入口:dr20.sdss.org。下面这张表把七个顶层目录与其典型内容摆出来——它同时也是 “该不该下载” 的第一道判断依据。
| 顶层目录 | 内容线条 | 量级参考 |
|---|---|---|
spectro/boss/redux/v6_2_1/ |
SDSS-V 光学产物与三版汇总文件 | 200,955 目录 / 88,040,464 文件 / 58.48 TB |
spectro/astra/ |
Astra 分析管道产物 | 49,925 目录 / 4,064,764 文件 / 834.8 GB |
spectro/allspec/1.0.2/ |
跨流水线汇总表 | 2 目录 / 4 文件 / 3.58 GB |
spectro/lvm/redux/ 与 analysis/ |
积分视场的 DRP 与 DAP | 分别 86.5 GB 与 144.6 GB |
mos/target/ |
选源表 | 6 目录 / 2,760 文件 / 108.5 GB |
vac/ 与 vap/ |
增值星表与增值产品 | 单文件从百 kB 到约 30 GB 不等 |
data/gcam/、data/fcam/、data/boss/ |
原始观测数据,按南北分 | 合计约 40 TB 量级 |
对绝大多数任务来说,第一行与第二行的汇总文件就够了:spAll-v6_2_1.fits.gz(985 MB)给出 SDSS-V 光学的红移与分类,allStar-1.3-apo25m.fits(368 MB)与 allVisit-1.3-apo25m.fits(909 MB)给出红外侧的参数,allspec 给跨代连接。把它们先取回来,再从里面选出需要的目标清单,最后按清单逐个拉谱文件,这是唯一经济的工作流。
5.2 批量下载
#-- 取 SDSS-V 光学的每日合并汇总表(985 MB)
wget -c https://dr20.sdss.org/sas/dr20/spectro/boss/redux/v6_2_1/summary/daily/spAll-v6_2_1.fits.gz
#-- 取红外侧两份汇总(368 MB 与 909 MB)
wget -c https://dr20.sdss.org/sas/dr20/spectro/apogee/redux/1.3/summary/allStar-1.3-apo25m.fits
wget -c https://dr20.sdss.org/sas/dr20/spectro/apogee/redux/1.3/summary/allVisit-1.3-apo25m.fits
#-- 按清单批量拉谱:先生成 speclist.txt(每行一个 FIELD/spec-FIELD-MJD-CATALOGID.fits)
wget -c -nv -r -nH --cut-dirs=7 -i speclist.txt \
-B https://dr20.sdss.org/sas/dr20/spectro/boss/redux/v6_2_1/spectra/daily/full/
官方明确推荐用 SDSS Access(Python 包)按产物取文件,理由是它会按发布版本处理增量并保留链接、不复制重复文件;直接递归拷贝上的裂缝与重复问题已在 §2.1 说过。官方同时提醒:如果计划下载大批量数据,先查批量下载页;另一种完全不下载的路径是 SciServer Compute——它为每个发布保留了 SAS 的完整副本。
5.3 用 SQL 与 Python 直接查询
不想接触文件时,最省事的入口是 SkyServer 的 SQL 界面与 CasJobs。allspec 与 multiplex 两张表都在数据库里:
-- 取 SDSS-V 段有红移且无质量警告的一批目标,限制返回条数
SELECT TOP 1000 a.sdss_id, a.specobjid, s.z, s.class
FROM allspec AS a
JOIN specObjAll AS s ON a.specobjid = s.specobjid
WHERE s.zwarning = 0 AND s.z > 0
#-- astroquery 是社区维护的第三方包,不是 SDSS 官方软件
from astroquery.sdss import SDSS
import astropy.units as u
q = """SELECT TOP 500 z, class, plate, mjd, fiber
FROM specObjAll
WHERE class = 'QSO' AND zWarning = 0 AND z > 2.0"""
res = SDSS.query_sql(q, data_release=20)
print(len(res), res.colnames)
print(res[:5])
这里有个容易踩的地方:上面用的是 SQL Server 语法的 TOP,而国内很多代码示例会用 MySQL 的 LIMIT。CasJobs 与 SkyServer 接受前者,LIMIT 会被判为语法错误。另一处应当留意:数据库的列大小写在 Python 侧会被压平,写回 FITS 或拼成 pandas 时可能与数据模型文档里的列名不一致,遇到歧义以数据模型为准。
5.4 转成通用表结构
如果下游是普通机器学习管线,通常要把 FITS 变成一组定长向量。这里的关键决策是 “重采样到哪个波长网格”,因为 loglam 是对数刻度:
from astropy.io import fits
import numpy as np
import pandas as pd
#-- 目标网格:3600 到 10000 埃,等间隔 2 埃
grid = np.arange(3600.0, 10000.0, 2.0)
def load_spec(fn):
with fits.open(fn) as hdul:
flux = hdul['COADD'].data['flux'].astype('float64')
ivar = hdul['COADD'].data['ivar'].astype('float64')
lam = 10 ** hdul['COADD'].data['loglam']
z = float(hdul['SPECOBJ'].data['Z'][0])
cls = str(hdul['SPECOBJ'].data['CLASS'][0]).strip()
#-- 对数网格 -> 线性网格,这一步不可省
y = np.interp(grid, lam, flux, left=np.nan, right=np.nan)
yv = np.interp(grid, lam, ivar, left=np.nan, right=np.nan)
return pd.Series(y, index=grid), yv, z, cls
spec, ivar, z, cls = load_spec('spec-15166-59251-04492065339.fits')
print(spec.shape, round(z, 4), cls)
这段代码有三处必须在正式实验里改:一是插值会把原系的分辨率平滑掉,做谱线宽度测量的人应当直接在原生对数网格上工作;二是反向方差 ivar 应当跟着一起处理,做加权损失或质量筛选时它是唯一可用的质量线索;三是没有做静止系(rest-frame)换算,做跨红移比较时要先按 z 搬到静止波长再统一网格。
5.5 主键映射速查
| 你想做的事 | 用哪个键 | 从哪儿取 |
|---|---|---|
| SDSS-V 内部跨谱仪连接 | sdss_id |
allspec |
| SDSS-I 到 IV 的光学去重 | sdss_primary、boss_primary |
specObj |
| SDSS-I 到 IV 的光学谱定位 | specobjid |
spAll、SpecObjAll |
| 红外恒星级产品 | apstar_id |
allStar、apogeeStar |
| 红外单次观测 | visit_id |
allVisit、apogeeVisit |
| 积分视场目标(SDSS-IV) | mangaid |
mangaDRPall |
| 观测场与夜次(SDSS-V) | field、mjd、run2d |
fieldlist-v6_2_1(仅 SAS) |
| 观测板与夜次(SDSS-I–IV) | plate、mjd、run2d |
PlateX |
5.6 五个最容易出错的地方
| 位置 | 错误写法 | 后果 | 正确做法 |
|---|---|---|---|
| 波长处理 | 直接用 loglam 当埃 |
谱线位置全错 | 10 ** loglam |
| 波长制式 | 与空气波长表直接比对 | 系统性偏移 | 记住 SDSS 用真空波长 |
| 目标去重 | 用文件名里的编号去重 | DR18 之后失效 | 回到 sdss_id |
| 计数理解 | 把 27,671,504 当天体数 | 样本被重复计数 | 先定 daily/epoch/allepoch 粒度 |
| 大批量取数 | 全盘递归拷贝 SAS | 断链或重复下载 | 用 SDSS Access 或 SciServer |
§6 与库内条目的关系
6.1 关系图谱
把本站 AI-Ready 数据集中与 SDSS 共享 “大尺度观测、机器采集、公有领域或宽松许可” 特征的数据集放在一起,位置关系如下:
| 站内候选 | 与 SDSS 的关系 | 分工差异 |
|---|---|---|
| gaia-dr3(Gaia 第三次数据发布) | 同为现代大型巡天的成果 | Gaia 给位置、自行与视差,SDSS 给红移、丰度与化学组成,两者常互为交叉证认的对象 |
| nasa-exoplanet-archive(NASA 系外行星档案) | 同为 NASA 体系下的大型整理型档案 | 它是汇总多个巡天的元档案,SDSS 是一手观测产物 |
| era5-single-levels(ERA5 单层再分析) | 同为长时间序列、大体积、可重复使用的数据资产 | ERA5 是模式再分析产品,SDSS 是一手观测产物 |
| oisst-v2-1(逐日海温) | 同为逐日级别的网格化序列 | 它是插值后的格点产品,SDSS 是离散目标观测 |
| ghcn-daily(全球逐日气候观测) | 同为台站/站点观测的长期积累 | 气象站的站点元数据与望远镜的行元数据结构相似 |
| usgs-comcat(地震目录) | 同为 “事件目录加原始波形” 的二层结构 | 目录层负责检索,波形层负责分析,与 SDSS 的汇总表加 spec 文件同构 |
| ibtracs(最佳路径热带气旋) | 同为多机构汇聚的 best-track 型档案 | 都是 “多来源汇入一套 ID” 的典型,与 allspec 的跨流水线汇聚同构 |
| soilgrids(全球土壤栅格) | 同为由模型在每个格点上给出预测值的产品 | 它的每个栅格值都是模型输出,SDSS 的参数列同样是管道输出,都需要看版本 |
| mswep-v3(多源融合降水) | 同为多源集成产品 | 同样是 “集成产物不等于原始观测” 的典型 |
这张表想说明的是一件事:SDSS 在本站属于 “大型观测型、带版本与标识陷阱” 那一族,而不是 “整理好的小任务集” 那一族。使用这类数据时,先查标识体系与版本号,永远先于查 “有多少条”。
6.2 检索路径
| 你要找的东西 | 检索词 | 会落到哪里 |
|---|---|---|
| 官方老本体 | sdss.org、dr20、sdss4.org |
§3.2 时间线与 §2.1 目录结构 |
| 数据模型 | datamodel、data.sdss.org |
§2.2 字段字典 |
| 跨代 ID | allspec、sdss_id、multiplex |
§2.4 与 §5.5 |
| 谱线质量过滤 | zwarning、ivar、bitmask |
§5.4 与 §7.2 |
| 国内机构与致谢 | NAOC、Yunnan、acknowledge |
§3.1 与 §9.3 |
| 二手的机构存档镜像 | MAST、SDSS Legacy Archive |
§8.2 |
6.3 与其他数据的分工判据
| 任务 | 主粮仓该用什么 | SDSS 的位置 | 原因 |
|---|---|---|---|
| 天体位置、自行、视差 | 专门的天体测量巡天 | 辅助校准与测光对照 | SDSS 强项不在高精度位置 |
| 红移与光谱分类 | SDSS | 主力 | 数十万到百万量级的公开谱带官方分类 |
| 恒星化学丰度 | SDSS(APOGEE 加 Astra) | 主力之一 | H 带高分辨加丰度管道 |
| 延展天区的电离气体 | SDSS(LVM) | 目前只能做案例 | 169 幅拼块是预览 |
| 短周期光变曲线 | 其他时域巡天 | 不适用 | SDSS 的多历元间距偏长 |
| 机器学习的分布偏移研究 | SDSS 的南北两台设施 | 主力 | 天然存在两个半球的分布偏移 |
| 教学与公众参与 | SDSS 的教育与在线工具 | 主力 | 有 SQL 界面、浏览器应用与笔记本 |
§7 质量评估与局限性
7.0 阅读本节前的一个前置校正
先纠正一个常见的误判:把 SDSS 当作 “一份已经整理干净的训练集”。它不是。它是一个观测与处理方式持续演化的生产体系的输出,同一发布里并存着原始数据、正演的中间产品、经过多个管道分析的参数表、以及第三方团队加工的增值星表。评价它的尺度因此不是 “标注准不准”,而是 “我要的那一层有没有被诚实地描述”。
这个校正会改变后面五维评分的读法。规模与可获取性拿高分,文档与标识一致性拿到中等:前者是因为它确实提供了几十 TB 的公开数据,后者是因为它的目录、版本、ID 体系本身构成使用成本。
7.1 五维评分
按数据可用性的常用维度打分,每项 1–5 分,分数针对 “作为科研与机器学习用的一手观测数据” 这个用途:
| 维度 | 分数 | 理由 |
|---|---|---|
| 数据规模 | 5 | 光学加红外合计两千七百万条量级的公开谱,且每约一年半推一次新版 |
| 来源与文档 | 4 | 每个产品都有独立数据模型页,发布说明与注意事项写得具体 |
| 标识一致性 | 2 | 跨代 ID 分裂,10,046,926 个历史目标缺 SDSS ID |
| 获取成本 | 3 | 免注册、免费用,但全量在百 TB 量级,必须用服务端计算或按产物取数 |
| 任务适配 | 5 | 全天多历元加积分视场,公开来源中难有替代 |
五项合计 19 分(满分 25)。分数结构说明它是一个 “要用好得先做功课” 的数据源:两头高,中间那三项构成了实际门槛。
7.2 质量信息的两层
第一层是有没有质量问题标记。官方提供的线索分两类:红移流水线给的质量标志(例如 zwarning)与位掩码(bitmask),以及每个像素或每个谱单元的反向方差(ivar)。想做干净的训练集,靠的是这两类东西的组合,而不是 “看起来像不像”。
第二层是质量标记本身是否完整。allspec 数据页明确说总数未按质量标志过滤;注意事项页说历史目标缺 ID。这意味着:任何一个 “样本量” 数字在 SDSS 里都必须连带说明过滤口径与编号来源。写 “我们用了 N 条 SDSS 光谱” 而不写 N 是怎么来的,在复现时等于没写。
| 你要做的事 | 该用哪层质量信息 | 常见错误 |
|---|---|---|
| 先确定一个样本是什么 | 主表主键的口径:一条谱、一个目标还是一个天区像素 | 把光谱条数当成目标个数 |
| 做自动排除低质量 | zwarning 加关键位掩码 |
只看 zwarning,忽略资料层的位掩码 |
| 做加权训练或定噪 | 每个谱单元的 ivar |
重采样后忘记同步处理 ivar |
| 做跨版本比较 | 流水线版本号(Run2d、apred、astra) | 用了不同版本却在报告里笼统写 “SDSS” |
| 做历史趋势 | 先确认 ID 是否可得 | 直接拿 allspec 当抽样框 |
上表第一行是最容易被跳过的一步:先确定你的任务需要哪一层、什么算一个样本,再去查那一层的质量字段;顺序反过来,会得到一张看起来完备、实际答非所问的过滤清单。
7.3 已知的、可枚举的偏差
| 偏差 | 表现 | 影响 |
|---|---|---|
| 天区不对称 | 北天的光学观测历史远长于南天,南天光学数据 DR20 才首次出现 | 任何 “全天” 口径的结论都要按半球分层报告 |
| 选源口径多层叠加 | MOS 选源使用 carton 体系,不同 Mapper 与开放光纤计划各自选源 | 样本不代表天体的自然分布 |
| 横跨二十六年的设备变化 | 谱仪升级、光纤从 320 根加到 500 根、焦面从铝板换成机器人 | 不同时代的谱不能直接当同一传感器输出 |
| allspec 缺 ID | 10,046,926 个历史目标缺 SDSS ID(占 36%) | 历史样本的覆盖面被低估 |
| MaNGA 辅助目标缺 ID | 1,106 个 | 涉及 MaNGA 的统计要单独处理 |
| 计数含重复 | 单次观测与合并谱同时计入 | 总数不能当天体数 |
| 定标与试观测混入 | 官方明确未过滤 | 直接取全量会混入非科学曝光 |
| APOGEE 冻结 | DR20 的红外部分等同 DR19 | 以为 “最新版都有新红外数据” 会误导 |
| 成像停更 | 自 DR17 后无新成像 | 图像与光谱不同期 |
这张表里的每一条都可以在注意事项页或数据访问页找到出处。它们共同指向一个操作结论:SDSS 的偏差是可查的,代价是你必须去查。这也是它相对许多 “整理好的数据集” 的一个优势——很多整理型数据把质量信息压成一个布尔列,而 SDSS 把各个环节的口径都留在文档里。
7.4 与其他存档的关系:同一批数据的多个入口
| 入口 | 负责什么 | 什么时候用它 |
|---|---|---|
| SAS | 文件的单一权威来源 | 下载单个产品或批量取数 |
| CAS 与 CasJobs | 关系的权威来源 | 表结构与跨表连接时以它为准 |
| SciServer Compute | 计算位置 | 数据量超过本地磁盘时 |
| Zora 与 Valis | 人眼看谱 | 需要人工核验分类或参数时 |
| Marvin | SDSS-IV 的 MaNGA 数据立方 | 做逐个星系的空间分辨分析时 |
| LVMvis | 积分视场拼块的 HiPS 图 | 快速判断某片天区是否被观测 |
| 已完成巡天页(Completed Surveys) | 早期各代的说明、注意事项与教程 | 要用 SDSS-IV 及更早的产物时 |
最后一行值得单独说一句。官方网站把已经收官的巡天单独列成一个入口,按代收录数据说明、注意事项与教程,其中包含参数文件、FITS 文件、位掩码用法以及波长与星等换算等专门页面。对这些历史产物来说,那里的口径说明往往比通用文档更贴切——引用旧数据时应当回到对应代的页面去核对,而不是套用 DR20 的新说明。
7.5 它为何能持续:数据繁殖的不是版本,而是可用性
SDSS 从 1998 年活到今天,不是因为预算不断,而是因为它在每一代都换掉了自己的核心技术前提:成像换成了谱,铝板换成了机器人,单一北天换成南北双站,一次性覆盖换成了多历元。每一次换代都让它能做前一代做不了的事,也因此值得继续维护历史数据的可用性。
对用户来说这有一个直接含义:不要假设 “新发布会让旧数据变得不重要”。DR20 自称累积发布,历史目录仍然挂着;很多任务恰恰需要 SDSS-I 时代那些低分辨率但年代久远的谱,去做长基线的时间演化。把 SDSS 当成一次性的下载对象,会错过它最不一样的价值维度——时间跨度。
§8 生态位与历史
8.1 历史沿革
SDSS 的第一阶段围绕一台专用的大视场成像相机展开,它的历史贡献是把天文学从 “每次观测一个目标” 推进到 “每次产出一张表”。第二与第三阶段证明同一套基础谱仪也能服务完全不同的科学:BOSS 用同一台装置同时测量星系的大尺度结构与星系际介质的吸收线;SDSS-IV 的 MaNGA 第一次把 “一个星系内部的各个部分” 变成常规产品。SDSS-V 的转折在于承认光谱不是一次性的快照、而是需要反复观测的时间序列,于是把硬件整套改造成服务多历元观测的形态。
这也解释了为什么这里的数据不像许多现代数据集那样 “干净整齐”:它不是为下载者生产的,而是为一群特定科学家首先生产出来,再逐步开放出来。这个出身决定了它的文档风格(详细但不迁就)与产品风格(分层但不扁平)。
8.2 与其他大型巡天机构的关系
多入口的组织方式已在 §7.4 说明。除此之外还有三条外部关系值得一提。第一,黑洞巡天把 X 射线源表当作光学后续观测的输入:官方页面写明它对约 10 的 5.5 次方个 eROSITA 源与约 10 的 4.5 次方个钱德拉源的对应体做 BOSS 光学后续观测。第二,望远镜资源分属两处:新墨西哥州的 2.5 米 Sloan 基金会望远镜与拉斯坎帕纳斯天文台的 2.5 米 du Pont 望远镜,两者分处南北半球。第三,SDSS 之外还有其他大型巡天档案,它们与 SDSS 的关系是 “互补覆盖、互为交叉证认”,而不是互相替代的发布渠道。
对于教学用途,SDSS 还有一套 Voyages 教学课程与公开的项目页面,把这些祖数据变成可以直接下手的课堂材料;它的这一部分为第三个用户群(教师与学生)提供了低门槛入口。
8.3 生态位:生产体系而不是标注集
| 角色 | 整理好的任务集 | 观测生产体系 |
|---|---|---|
| 典型形态 | 一个压缩包、一张表、一个许可证 | 一个按产品分层的目录树与多个访问入口 |
| 版本概念 | 版本号,语义明确 | 发布号、流水线版本、参数版本三层叠加 |
| 质量线索 | 一个布尔列或一个可用性字段 | 质量标志、位掩码、反向方差三类字段分散在各层 |
| 典型代表 | 评测用途的影像筛查数据集 | SDSS、大型时序观测档案 |
| 失败模式 | 标注规则写不清、标注员之间不一致 | 跨代 ID 与产品版本没写清 |
SDSS 坐在右边一列。用左边一列的直觉去用它——比如期待一个 “下载→丢进模型→出数字” 的流程——会遇到两处顿挫:一是没有 “一整套适合就这个任务” 的管子,二是它的偏差来源不在数据本身而在取样与处理环节。
8.4 谁在用,用来做什么
从官方文档的设计可以反推出主要用户群。提供 SQL 界面与在线笔记本,说明有相当比例的用户不自建处理流程、直接查询汇总表;提供用于查看单条谱与查询恒星参数的网页工具(Zora、Valis),说明有一批用户的工作单元是 “一颗星”;提供 LVMvis 这类即时可视化工具,说明存在需要快速浏览大块天区的用户;提供教学与公众参与材料,说明教育用途被当作正式的用户群体之一。
在研究一侧,三个 Mapper 对应三条主线:黑洞的增长(多历元光谱加上 X 射线与光学源的对应)、银河系的形成史(用恒星的化学组成与位置反演)、以及星际介质与恒星反馈(把一整片延展天区当作一个对象而不是一堆点源)。
§9 使用指引
9.1 三种角色的路径
| 角色 | 第一天 | 第一周 | 注意事项 |
|---|---|---|---|
| 天文学研究者 | 读 DR20 首页与数据访问页,确认自己需要哪个 Mapper 的产物 | 用 CasJobs 拿到样本清单,用 5.1 的汇总表确认字段含义 | 版本与 ID 体系必须先写进设计文档 |
| 机器学习从业者 | 从 spAll 或 allStar 汇总表出发构造样本,不要去遍历 SAS 目录树 |
把 ivar 与 zwarning 纳入损失与过滤,按 mjd 或望远镜分组 |
不要跨代洗机等量取样 |
| 教师与学生 | 用 SkyServer 的 Navigate 工具与公开课程 | 做一个小课题,用一个或两个产品的教训 | 引用要求按官方致谢文本照录 |
9.2 一条最短的可用流程
#-- 1. 先取 SDSS-V 光学的每日合并汇总表
wget -c https://dr20.sdss.org/sas/dr20/spectro/boss/redux/v6_2_1/summary/daily/spAll-v6_2_1.fits.gz
#-- 2. 查看汇总表有哪些列(不需要下载任何谱)
python3.11 - <<'PY'
from astropy.io import fits
import astropy.units as u
h = fits.open('spAll-v6_2_1.fits.gz')
print(len(h[1].data))
print([c.name for c in h[1].data.columns][:20])
PY
#-- 3. 按你的条件选出 catalogid 清单,再去 §5.2 批量拉谱
from astropy.io import fits
#-- 从汇总表里挑出低质量警告为零的类星体,构造待下载清单
d = fits.open('spAll-v6_2_1.fits.gz')[1].data
sel = (d['ZWARNING'] == 0) & (d['CLASS'].astype(str) == 'QSO')
rows = d[sel]
print(len(rows))
lines = [f"spectra/daily/full/{int(r['FIELD'])}/spec-{int(r['FIELD'])}-{int(r['MJD'])}-{int(r['CATALOGID'])}.fits"
for r in rows[:100]]
open('speclist.txt', 'w').write('\n'.join(lines) + '\n')
第二步刻意只用汇总表:把 “我要哪些目标” 和 “我去下载哪些文件” 分成两步,是 SDSS 工作流里最重要的一条纪律。反过来的做法——先下载再筛——在本站能看到的规模下会立刻被磁盘与时间惩罚。
9.3 引用方式
| 引用对象 | 内容 |
|---|---|
| 数据集 | SDSS Collaboration et al. 2026, The Twentieth Data Release of the Sloan Digital Sky Survey(ApJS,arXiv 预印本可读) |
| 致谢全文 | 官方要求在致谢中列出 Alfred P. Sloan 基金会、Heising-Simons 基金会、NSF 与参加机构 |
| 设施说明 | SDSS 望远镜位于由 ARC 出资、新墨西哥州立大学运行的 Apache Point Observatory,以及由卡内基科学研究所运行的 Las Campanas Observatory |
| 高性能计算 | SDSS 感谢犹他大学高性能计算中心的支持与资源 |
| 软件引用 | SDSS 软件多为开源(例如 BSD 三条款),官方要求在自己的科学产出里正式引用所用软件 |
| 早期版本 | 若使用 SDSS-I 到 IV 的历史产物,按对应发布号的发布论文引用 |
写论文时建议同时注明三件事:数据发布号(DR20)、流水线版本(例如 Run2d v6_2_1、allspec 1.0.2)、以及如果用了第三方存档,说明是哪一个。这三条漏掉任何一条,复现都会变得困难。
§10 AI 使用声明
| 项目 | 声明 |
|---|---|
| 文本生成 | 本文由 AI 辅助撰写,编辑把关结构与事实 |
| 数字来源 | 规模、结构、边界三类数字来自 SDSS 官方网站的 DR20 页面、数据访问页、注意事项页、仪器页与 SAS 目录清单 |
| 文件核验 | 官方页面与 SAS 顶层目录 https://dr20.sdss.org/sas/dr20/、其子目录 spectro/、prior-surveys/、vac/ 经直接访问确认可读取 |
| 不一致说明 | 官方 DR20 页面自称 “SDSS-V 第二次发布”,而同源新内容页与新闻稿称第三次,本文采用第三次并已在 §3.2 记录 |
| 论文信息 | DR20 发布论文仅据官方页提供的题录信息,未读全文 |
| 未核验内容 | 各 Mapper 逐日的观测清单、增值星表内部的列内容、MIT/他人对比平台的差异 |
| 图像 | 无配图;封面为生成式提示词,不含真实观测图像 |
| 免责 | 本文不构成研究建议;数据使用须遵守官方数据政策与致谢要求,对繁荣性条款以官方原文为准 |
常见误读(避坑清单)
| 说法 | 实际 | 证据 |
|---|---|---|
| 「它是天文图像库」 | 成像相机止于 2009 年 11 月 18 日,DR20 不含新增或更新的成像数据 | DR20 页面与注意事项页的成像说明 |
| 「2700 万是独立天体数」 | 计数含定标与试观测光谱,未按质量标志过滤,单次谱与合并谱重复计数 | allspec 数据页的官方声明 |
| 「DR20 的红外数据更新了」 | 本发布没有新增红外光谱,也没有新的分析,只是复制 DR19 的产物 | DR20 首页与银河系绘图者页 |
| 「SDSS 本来就是全天覆盖」 | 北半球站长期独跑,南天的光学多目标光谱自 DR20 才首次进入发布 | 观测站与 DR20 新内容页 |
| 「SDSS ID 就是外部编号」 | 内部用 sdss_id,外部数据库中记为 “SDSS DR##”,发布号会跟着版本走 |
注意事项页的身份一节 |
| 「一切都能用 SQL 查到」 | 部分清单表只在 SAS 上有 FITS 文件,数据库里查不到 | 数据访问页与 allspec 外键清单 |
| 「用文件名去重就行」 | DR18 起文件名改为视场、夜、目标号,同一目标可出现在多个视场 | DR18 起的命名规则说明 |
| 「同一发布里版本号只有一个」 | 同一发布里并存多个流水线版本与多个参数版本 | 光谱 redux 与 Astra 目录的版本号 |
| 「把 SAS 整个拷下来最保险」 | 增量与累积口径不同,递归拷贝会断链或重复 | SAS 叠加定义与 SDSS Access 说明 |
| 「必须先把原始层拉全才能开始分析」 | 汇总表先行,先筛目标再拉文件 | 官方推荐路径与 §5.2 的工作流 |
| 「三条主线是三份独立的数据」 | 三个 Mapper 共用同一批光纤与同一套焦面,一个目标可同时属于多个 Mapper | 选源 carton 体系与 Multiplex 表 |
上表第三条到第七条是同一类错误的变体:把 “一个发布” 当成 “一个静态快照”。SDSS 的发布是一个挂载点,下面同时挂着新产出、旧年代的链接、以及不同版本的处理产物。把它当成一次性的压缩包,就会在这些地方连续踩坑。
FAQ
Q1:DR20 里那 2700 多万条,到底该怎么理解?
它是 allspec 汇总文件 v1.0.2 的条数,等于各流水线记录的光谱与积分视场数据单元之和,成分包括:光学谱、红外谱、积分视场立方体与拼块。官方明确说它没有按质量标志过滤,也包含定标与试观测曝光,并且同一条谱会因为既属于单次文件又属于合并谱而被计两次。做成果量化时应当先说明自己的计数口径,再引这个数。
Q2:想做星系形态分类,SDSS 有用吗?
成像部分有用,但要去 DR17 时代的成像产品与 SkyServer 的成像页面取,DR20 不含新的成像。如果只是想要图像加红移的训练对,常见做法是从一张既有的图像产品取图、再从 spAll 取同一目标的光学红移做标注,需要注意两者的取数年代不同,且这里的成像与最新的光谱并不同期。
Q3:DR20 的红外部分为什么等于 DR19?
官方在 DR20 首页与银河系绘图者页都写明:本发布既没有新增红外光谱,也没有对旧谱的新分析,只是把上一发布的产物复制过来,好让使用者在同一个发布点上取到最近期的公开数据。做化学丰度与径向速度的人,直接照 DR19 的口径用即可,不必期待新内容。
Q4:怎样把同一个天体在两代数据里连成一条序列?
SDSS-I 到 SDSS-IV 的唯一性用 specObj 文件里的 sdss_primary 与 boss_primary 确认;SDSS-V 用 allspec 里的 sdss_id 串起不同流水线。跨代连接只有一个可靠依据:官方给出的外键清单。要注意本版有 10,046,926 个历史目标缺 sdss_id,另有 1,106 个 MaNGA 目标有产品却没有对应的 ID,这两类要先单独挑出来处理。
Q5:下载方式该怎么选?
数据量在几个文件以内时,直接从 SAS 取。数量上升到成百上千个文件时,官方推荐用 SDSS Access 按产物拉取,因为它会按发布版本处理增量与链接、避开重复文件。数据量到了自己机器装不下的规模,就用 SciServer Compute——它在每个发布里保留了 SAS 的完整副本,把代码搬过去比把数据搬过来划算。
Q6:为什么有些表在数据库里查不到?
allspec 与 Multiplex 表在 SkyServer 的 SQL 接口里可选,但某些清单表只有 SAS 上的 FITS 文件,例如 DR20 黑洞绘图者的 fieldlist 与 DR17 MaNGA 的 platelist。解决办法是把 SAS 上的文件读进本地,自己与汇总表做连接。另外要注意这边接受 SQL Server 的 TOP 语法而不是 MySQL 的 LIMIT。
Q7:一条谱文件里的波长是哪种?
SDSS 采用真空波长,并以 loglam(以 10 为底的波长对数)存列,要 10**loglam 才还原成埃。这一点在画图时看不出来,但在测谱线中心、算速度偏移、与其他数据库做交叉比对时会直接生效。对数采样还意味着做傅里叶类的操作前要先重采样到线性网格。
Q8:引用与致谢的硬性要求是什么?
官方要求:论文要引用对应的发布论文,并照录致谢文本。致谢文本里必须列出阿尔弗雷德·斯隆基金会、海辛-西蒙斯基金会、美国国家科学基金会、参加机构、犹他大学的中心高性能计算组,以及两台望远镜的运行方。参加机构名单里有中国科学院国家天文台与云南大学,写致谢时不能省。
Q9:公开发布的数据能不能自由使用与二次发布?
按官方数据政策,公开发布的数据属公有领域,可以自由取用;网站上的图像按署名许可授权,使用时需保留署名。这两句之外的一切条款以官方原文为准。数据里观测对象是天体,不涉及个人信息,也就没有对应的合规文书。
Q10:DR20 的 169 幅 LVM 拼块能拿来写统计结论吗?
不建议。官方把这批数据称作预览,覆盖 6 个目标(3 个银河系内的 H II 区、1 个行星状星云、2 个本星系群星系),计划规模是四年内超过 5,500 万条谱、约 2,500 平方度天区。把它当总体样本会得出不稳的结论;用它跑通积分视场数据的处理流程、或找一个形态漂亮的天体做示例,则恰如其分。
Q11:DR20 到底是该次第几发布?
官方页面存在自述不一致:DR20 页面正文自称 SDSS-V 的第二次发布,而同源的新内容页与新闻稿称第三次,按序号算是第三次。本文采用第三次,并在 §3.2 记录这个差异。写论文时建议只写发布号 DR20,绕开第几发布的表述。
术语表
| 术语 | 解释 |
|---|---|
| 数据发布(DR) | 某一时间点的完整挂载点,通常同时包含新产出与指向历史的链接 |
| 累积发布 | 包含指向上一发布链接的发布形态,与只替换内容的增量相对 |
| Mapper | SDSS-V 的三条科学主线:银河系绘图者、黑洞绘图者、本星系群绘图者 |
| carton | 选源分组,一个 carton 是一组有明确科学理由的目标选择规则 |
| sdss_id | SDSS-V 的统一目标主键,allspec 用它把不同流水线串起来 |
| catalogid | SDSS-V 的目标编号,出现在 DR18 之后的文件名第三段 |
| fieldid | 机器人焦面系统下的一次指向单元,取代了铝板时代的 plate |
| specobjid | SDSS-I 到 IV 光学数据的目标主键 |
| MJD | 修正儒略日,SDSS 用它标记观测夜 |
| plate | 打孔铝板时代的一次排期单元,DR17 之前的组织方式 |
| 位掩码 | 用二进制整数的各个位表示若干状态是否被满足的字段 |
| ivar | 反向方差,每个像素或谱单元的权重,做加权与筛选时的质量线索 |
| zwarning | 红移流水线的质量警告标志 |
| 红移 z | 波长被宇宙膨胀拉伸的相对量,也是距离与年代的代理量 |
| 真空波长 | SDSS 采用的波长标准,与实验室常用的空气波长存在系统性差异 |
| loglam | 以 10 为底的波长对数,SDSS 文件里存的是这一列 |
| 积分视场 | 把一个二维天区上每一点都给出一条谱的观测方式 |
| spaxel | 积分视场里的空间像素单元 |
| Rayleigh | 发射线表面亮度的单位,LVM 的 Hα 灵敏度用它表示 |
| 光纤定位器 | 机器人焦面系统里的单个机械单元,替代了铝板上打的孔 |
| 分辨率 R | 波长与可分辨最小波长差之比,越高越能分开相近的谱线 |
| VAC | 增值星表,由科学团队针对具体问题加工的派生产品 |
| VAP | 增值产品,与 VAC 类似但形态不限于一表 |
| SAS | 科学档案服务器,文件层的权威来源 |
| CAS / CasJobs | 关系层的权威来源,提供 SQL 检索 |
| FITS | 天文学通用的二进制表格与图像格式,带自描述的头信息 |
| Yanny | SDSS 使用的纯文本参数文件格式 |
附录 A:核心数字核对表
| 项 | 值 | 来源层级 |
|---|---|---|
| 光谱与积分视场数据单元合计 | 27,671,504(allspec v1.0.2) | 官方 SUM 页面 |
| 其中光学光谱 | 23,046,726 | 官方 SUM 页面 |
| 其中红外光谱 | 4,613,505 | 官方页面 |
| 其中积分视场立方体与拼块 | 11,442 | 官方页面 |
| SDSS-V 自身贡献 | 18,468,795 | 官方页面 |
| SDSS-III/IV 段贡献 | 7,359,509 | 官方页面 |
| SDSS-I/II 段贡献 | 1,843,200 | 官方页面 |
| 目标规模的官方口径 | 恒星 400 万以上、星系 300 万以上、类星体 200 万以上 | 官方页面 |
| 缺 sdss_id 的历史目标 | 10,046,926(占 36%) | 官方注意事项页 |
| 有产品而无 ID 的 MaNGA 目标 | 1,106 | 官方页面 |
| 成像累计 / 去重天区 | 约 35,000 平方度 / 14,055 平方度 | 官方页面 |
| 首次科学成像 / 最后成像夜 | 1998-09-19 / 2009-11-18 | 官方页面 |
| 光学数据截止时间 | 2025-02-02(MJD 60708) | 官方页面 |
| BOSS 波长与蓝红通道 R | 3650–9500 Å;蓝 1560–2270、红 1850–2650 | 官方仪器页 |
| BOSS 单谱仪光纤与纤维径 | 500 根;APO 2″、LCO 1.3″ | 官方仪器页 |
| 红外波长与 R | 1.51–1.70 µm,R 约 22,500 | 官方仪器页 |
| 红外光纤数与径向速度基底 | 300 根;约 100 m/s | 官方仪器页 |
| 目标径向速度精度 | 约 30 m/s | 官方仪器页 |
| LVM 波长与 R | 360–980 nm,R 约 4,000 | 官方页面 |
| LVM 科学视场与光纤 | 0.5 度;1,801 根 | 官方页面 |
| LVM 空间像素与 Hα 灵敏度 | 35 角秒;约 1 Rayleigh | 官方页面 |
| LVM 计划规模 | 四年内超过 5,500 万条谱、约 2,500 平方度 | 官方页面 |
| DR20 的 LVM 拼块 | 169 幅,覆盖 6 个目标 | 官方发布页 |
| DR20 的 VAC 与 VAP | 18 份与 1 份 | 官方发布页 |
| DR20 SAS 增量体量 | 258,854 目录 / 131,594,049 文件 / 102.75 TB | 官方发布页 |
| 历史发布累计 SAS 体量 | 5,554,702 目录 / 395,204,551 文件 / 755.90 TB | 官方发布页 |
| 机器人相机数据体量 | 北 12.50 TB、南 24.00 TB | 官方发布页 |
| 重配置时间对比 | 铝板约 20 分钟、机器人约 3 分钟 | 官方仪器页 |
| 发布日期 | 2026-07-30 | 官方页面 |
附录 B:数字的来源分层
第一层:官方页面与官方目录。 光谱总数与三代拆分、缺 ID 的目标数与 MaNGA 目标数、成像与的一天区、光学数据截止日期、三套仪器的波长、分辨率、光纤数与精度数值、LVM 的视场与灵敏度、DR20 的 VAC 数量与 SAS 体量,全部来自 SDSS 官方网站的 DR20 页面、注意事项页、数据访问页、仪器页与 SUM 页面,或直接来自 SAS 顶层目录清单。
第二层:官方页面的自述与其他栏目。 一方面是 SDSS-V 三条主线的目标规模口径,来自官方页面给出的设定口径,属于设计目标而不是实际执行结果;另一方面是 DR20 第几发布的说法,官方页面存在自述不一致,已在前文记录。
第三层:未核验。 各 Mapper 逐夜的观测清单、增值星表内部的逐列内容、以及本机 "]));与其它同样汇聚了 SDSS 数据的第三方平台之间的差异。这些需要逐日前权或逐列核对,超出了这一篇的范围;正文里凡涉及到都只做定性表述。
附录 C:参考来源
| 编号 | 来源 | 链接 | 用途 |
|---|---|---|---|
| 1 | DR20 发布页 | https://www.sdss.org/dr20/ | 发布日期、体量、VAC 数量、遗漏说明 |
| 2 | DR20 新内容 | https://www.sdss.org/dr20/new-contents/ | 第几发布与南天光学首次出现的说法 |
| 3 | DR20 全部光谱汇总 | https://www.sdss.org/dr20/allspec/ | 计数口径与三层外键 |
| 4 | DR20 注意事项 | https://www.sdss.org/dr20/caveats/ | 身份、ID 缺失、‘sdss_id’ 表达 |
| 5 | DR20 黑洞绘图者 | https://www.sdss.org/dr20/bhm/ | X 射线后续观测输入的规模 |
| 6 | DR20 银河系绘图者 | https://www.sdss.org/dr20/mwm/ | 红外部分等同 DR19 的说明 |
| 7 | DR20 本星系群绘图者 | https://www.sdss.org/dr20/lvm/ | 拼块目标清单与仪器参数 |
| 8 | 仪器页 | https://www.sdss.org/instruments/ | 三套谱仪与两种望远镜的边界数值 |
| 9 | DR20 SAS 根 | https://dr20.sdss.org/sas/dr20/ | 七个顶层目录的存在性核验 |
| 10 | SAS 光谱目录 | https://dr20.sdss.org/sas/dr20/spectro/ | redux、astra、lvm 三层结构 |
| 11 | SAS 增值星表目录 | https://dr20.sdss.org/sas/dr20/vac/ | 18 份 VAC 的存在性核验 |
| 12 | 数据模型 | https://data.sdss.org/datamodel/ | 逐列定义与文件命名规则 |
| 13 | SkyServer SQL 接口 | https://skyserver.sdss.org/dr20 | 表结构、TOP 与 LIMIT 的差异 |
| 14 | 引用与致谢 | https://www.sdss.org/collaboration/citing-sdss/ | 致谢文本与许可口径 |
附录 D:任务代码
任务一:先筛后拉的最小工作骨架
from astropy.io import fits
import numpy as np
#-- 1. 先只读汇总表,不碰任何谱文件
sp = fits.open('spAll-v6_2_1.fits.gz')[1].data
keep = (sp['ZWARNING'] == 0) & (sp['ZWARN_ALL'] == 0) & (sp['SN_MEDIAN_ALL'] > 10)
ids = sp[keep]['CATALOGID'].astype('int64')
#-- 2. 按目标号去重:文件名里的第三字段就是它
uniq = np.unique(ids)
print(len(keep), len(uniq))
np.save('catalogid_clean.npy', uniq)
#-- 3. 以后每次实验都从这一份清单出发,随机种子只需在这里固定
任务二:把对数网格谱做成机器学习可用的定长向量
from astropy.io import fits
import numpy as np
ngrid = 4096 #-- 目标采样点数
lam0, lam1 = 3600.0, 9800.0 #-- 目标波段的上下限(埃)
grid = np.linspace(lam0, lam1, ngrid)
def to_vector(fn):
with fits.open(fn) as h:
d = h['COADD'].data
lam = 10 ** d['loglam'] #-- 对数波长还原
flx = d['flux']
ivr = d['ivar']
m = (lam > lam0) & (lam < lam1) & (ivr > 0)
w = ivr[m]
return (np.interp(grid, lam[m], flx[m]),
np.interp(grid, lam[m], w),
np.sqrt(np.mean(1.0 / w)))
for f in ['spec-15166-59251-04492065339.fits']:
v, w, s = to_vector(f)
print(f, v.shape, v.mean(), s)
这两段代码的价值不在于精妙,而在于把两件容易做错的事摆明:先筛后拉,以及 ivar 要和 flux 一起处理。前者决定了磁盘与时间开销,后者决定了后续加权、过滤与误差估计是否成立。
附录 E:如果只记五件事
| 序号 | 记住什么 | 为什么 |
|---|---|---|
| 1 | 27,671,504 是光谱条数口径,不是天体数 | 计数含定标与试观测、未按质量过滤、单次谱与合并谱重复计数 |
| 2 | SDSS-V 把多历元放在第一优先 | 硬件上铝板换机器人、北天单站换南北双站,这是唯一量产光变序列的公开来源 |
| 3 | 身份体系分两层:sdss_id 与外部数据库的 “SDSS DR##” |
还有上千万个历史目标缺 ID,跨代连接必须按官方外键清单做 |
| 4 | 版本不是单个数字 | 发布号、流水线版本、参数版本三层叠加,写论文时必须逐层注明 |
| 5 | 成像止于 2009 年,南天光学自 DR20 才有 | 这两条决定了很多看似合理的任务在这里要么无路可走、要么口径不完整 |
编辑说明
本文的核验时间为 2026 年 10 月 29 日。核对方式为直接访问 SDSS 官方网站的 DR20 相关页面与 SAS 顶层目录,逐一确认页面可达与目录存在;三项不确定的地方在正文中都做了显式标注:一是 DR20 到底算第几发布,官方页面自述不一致(§3.2 与 FAQ 第 11 问);二是第三条主线的目标规模口径属官方设计目标而非执行结果(§4.1);三是覆盖是否完整这一类问题,包括各 Mapper 逐夜清单、增值星表内部列内容、以及与其他汇聚 SDSS 数据的第三方平台之间的差异,本文未作核验,正文中凡涉及之处都只做定性表述。可用性与偏差一节里的打分是针对 “作为科研与机器学习用的一手观测数据” 这一用途的判断,不是官方给出的评分。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与 SDSS 共享 “大尺度观测、机器采集、公有领域或宽松许可” 特征的词条,按相关度降序排列:
- gaia-dr3 — 共享标签:天体测量 / 全天星表 / 版本陷阱 / 开放数据
- nasa-exoplanet-archive — 共享标签:天文归档 / 确认与候选的双口径 / 开放数据
- usgs-comcat — 共享标签:会自己改写的目录 / 事件型观测 / 开放数据
- ibtracs — 共享标签:多机构汇聚 / 同一对象多套口径 / 开放数据
- ghcn-daily — 共享标签:长期积累 / 站点缺失 / 开放数据
- era5-single-levels — 共享标签:Level 分层产品 / 版本与时间段 / 网格数据
- oisst-v2-1 — 共享标签:逐日连续 / 网格数据 / 长期基线
- soilgrids — 共享标签:预测型栅格 / 不确定性层 / 开放数据
- mswep-v3 — 共享标签:多源融合 / 版本接力 / 网格数据
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

