GeoZarr:雲端原生的多維地理空間資料格式

GeoZarr 是一種用於儲存與存取多維地理空間資料的雲端原生(cloud-native)資料格式。它建立在 Zarr 之上,特別適合處理具有時間、波段、高度、深度及空間位置等多個維度的網格資料,例如衛星影像時間序列、氣象預報、氣候模式、海洋觀測及高光譜影像等。它支援地理參考,定義了座標系統、投影資訊與空間網格的標準命名與結構,相當於雲端優化的 NetCDF 格式。

Zarr 原本是一套用於儲存 N 維陣列的開放格式,會將龐大的資料陣列分割成許多可以獨立讀取與壓縮的資料區塊(chunk)。這些區塊既可儲存在一般硬碟,也可直接放在 Amazon S3、Google Cloud Storage 等雲端物件儲存空間。使用者不必下載完整資料集,只需讀取分析範圍、時間、波段或高度所對應的資料區塊,也能利用多核心或分散式運算環境平行處理。Zarr 2.0 已於2022年獲 OGC 採納為社群標準(仍非正式 OGC 標準)。

不過,Zarr 本身只是通用的多維陣列儲存規格,並未完整規定地理空間資料應如何記錄坐標參考系統、像素位置與地理坐標之間的轉換關係,以及不同解析度的影像金字塔。GeoZarr 正是為了解決這些問題而發展,透過可組合的標準約定(conventions),加入地理空間資料所需要的詮釋資訊。目前核心內容主要包括三項:以 proj 記錄坐標參考系統、以 spatial 定義陣列索引與地理坐標之間的空間轉換,以及以 multiscales 描述多解析度金字塔結構。

GeoZarr 與 Cloud Optimized GeoTIFF(COG)同樣強調雲端資料的局部讀取,但兩者適合的使用情境不完全相同。COG 主要以二維地理影像為核心,適合單幅正射影像、衛星影像或數值高程模型的發布與地圖顯示;GeoZarr 則進一步支援多維資料,例如將一整年的衛星影像整理成「時間 × 波段 × Y × X」的資料立方體,或將氣象模式整理成「時間 × 高度 × 緯度 × 經度」的四維陣列。因此,OGC 將 GeoZarr 定位為 COG 的多維替代方案,但兩者並非互相取代,而是分別服務影像發布與多維科學分析等不同需求。

想像重大災害發生後,相關單位需要分析災區前後數個月的衛星影像、不同波段資料及氣象觀測結果。若資料以 GeoZarr 儲存在雲端,分析人員便可直接選取災區範圍、特定時間與所需波段,只讀取相關資料區塊,不必下載完整的長期影像庫。不同單位也可以透過相同的雲端資料來源,同時進行淹水、崩塌、植生變化及地表溫度等分析,減少大型檔案反覆複製與傳送的時間。

與單一檔案形式的 GeoTIFF 不同,GeoZarr 通常由一組具階層結構的詮釋資料與壓縮資料區塊所組成,在雲端物件儲存空間中可能呈現為許多彼此相關的物件。如何設定資料區塊的大小與排列方式,會直接影響不同查詢情境的存取效率。因此,GeoZarr 不只是把原有影像換成另一種副檔名,而是需要依照時間序列分析、地圖顯示或人工智慧訓練等用途,事先規劃適當的資料結構。

開放地理空間協會(OGC)已成立 GeoZarr 標準工作小組,負責制定用於地理空間網格資料的 Zarr 編碼規範。GeoZarr 尚未成為正式的 OGC 標準,正朝 OGC 標準程序持續發展。目前 GeoZarr 的軟體生態系也正在快速成長,相關實作已涵蓋 GDAL、rioxarray、OpenLayers、STAC Browser、MapLibre 及 QGIS 外掛程式等工具。這些發展顯示,GeoZarr 正逐漸從科學運算使用的資料格式,走向可被桌面 GIS、網頁地圖及雲端遙測平台共同讀取的交換標準。

相關網站: