Hızlı Başlangıç: Microsoft Planet Computer Pro'da veri küplerini kullanmaya başlama

Önkoşullar

Alma kaynağını ayarlama

Veri küpü verilerini alma işlemine başlamadan önce, varlıklarınızın ve STAC Öğelerinizin depolandığı Blob Depolama hesabına erişmek için kimlik bilgileriniz olarak kullanılacak bir Alma Kaynağı ayarlamanız gerekir. Yönetilen Kimlik veya SAS Belirteci kullanarak bir Alma Kaynağı ayarlayabilirsiniz.

Veri küpü koleksiyonu oluşturma

Alma Kaynağınız ayarlandıktan sonra veri küpü varlıklarınız için bir Koleksiyon oluşturabilirsiniz. Koleksiyon oluşturma adımları Python kullanarak Microsoft Planet Computer Pro ile STAC Koleksiyonu oluşturma bölümünden izlenebilir.

Veri küpü varlıklarını yükleme

Veri küpü verileri ve diğer veri türleri için alma işleminin başlatılması, Veri Alımına Genel Bakış bölümünden takip edilebilir. Ancak Veri Küpü'ne Genel Bakış bölümünde açıklandığı gibi, veri alımı Planetary Computer Pro'nun bu dosya türleri için farklılık gösteren veri işleme adımıdır. GRIB2 verileri ve ilişkili STAC Öğeleri diğer iki boyutlu tarama dosyaları gibi alınsa da, NetCDF ve HDF5 varlıkları daha fazla veri zenginleştirme işlemine tabi tutulur. Kerchunk Bildirimlerinin oluşturulması Veri Küpü'ne Genel Bakış bölümünde belgelenmiştir, ancak Kerchunk varlıklarının özgün varlıklarla birlikte blob depolama kapsayıcınıza ekleneceği ve STAC Öğesi JSON'una ek bir alanın ekleneceği önemlidir. Bu, Planet Computer Pro Explorer'da bu veri türlerini işlerken önemlidir.

Veri küpü koleksiyonunu yapılandırma

Veri küpü koleksiyonunuzun yapılandırması, diğer veri türlerinden biraz farklı görünecek başka bir adımdır. Veri küpü koleksiyonunuzu yapılandırmak için Microsoft Planetary Computer Pro web arabirimiyle koleksiyon yapılandırma başlığı altında açıklanan adımları izleyebilirsiniz, ancak İşleme Yapılandırmanızı oluştururken aşağıdaki farklara dikkat etmeniz gerekir:

NetCDF ve HDF5 varlıkları için yapılandırmayı oluşturma

JSON biçiminde standart bir Render Yapılandırması bağımsız değişkeninin şöyle göründüğünü unutmayın:

[
  {
    "id": "prK1950-06-30",
    "name": "prK1950-06-30",
    "type": "raster-tile",
    "options": "assets=pr-kerchunk&subdataset_name=pr&rescale=0,0.01&colormap_name=viridis",
    "minZoom": 1,
    "info_options": "assets=pr-kerchunk&subdataset_name=pr"
  }
]

options alanı, STAC Öğesi'nde listelenen özgün varlık yerine bulut için optimize edilmiş Kerchunk varlığını kullanmak isteyeceğiniz yerdir. İşlemek istediğiniz değişkenin adı olan subdataset_name parametresini de eklemeniz gerekir.

Alan, info_options bu koleksiyon için Explorer'ın zaman kaydırıcısını etkinleştirir. Aynı URL sorgu dizisi formatını kullanır options, ancak yalnızca keşif için /info gereken parametreleri içermelidir, genellikle assets ve subdataset_name. rescale, colormap_name ve datetime gibi biçimlendirme ve dilimleme parametrelerini atlayın. Kaydırıcının etkin kalmasını istiyorsanız, datetime=... içinde options sabitlemeyin; çünkü sabit kodlanmış bir değer kaydırıcının ayarını geçersiz kılar. Eğer info_options öğesini belirtmezseniz, Explorer zaman sınırlarını STAC öğe metaverisinden (cube:dimensions, start_datetime, end_datetime) okur.

GRIB2 varlıkları için yapılandırmayı görselleştirme

options GRIB2 varlıklarının İşleme Yapılandırması alanı önceki örneğe benzer görünür, ancak subdataset_name argümanını eklemenize gerek yoktur. Bunun nedeni GRIB2 verilerinin zaten en iyi şekilde yapılandırılmış olması ve dizin dosyaları aracılığıyla başvurulmasıdır. assets bağımsız değişken, bu durumda, işlemek istediğiniz bandı veya 2B raster katmanını temsil eder. GriB2 İşleme Yapılandırması örneği aşağıda verilmiştir:

[ 
 {
    "id": "render-config-1",
    "name": "Mean Zero-Crossing Wave Period",
    "description": "A sample render configuration. Update `options` below.",
    "type": "raster-tile",
    "options": "assets=data&subdataset_bands=1&colormap_name=winter&rescale=0,10",
    "minZoom": 1,
    "info_options": "assets=data"
 }
]

GRIB2 için, info_options değerini options içinde kullanılan varlık anahtarına ayarlayın. info_options eklenmesi, Explorer’ın zaman kaydırıcısını etkinleştirir; bu kaydırıcı, kullanılabilir GRIB bant/mesaj dizinlerini doğrudan Tiler’ın /info uç noktasından alır. GRIB koleksiyonunuz farklı öğeler için birden fazla işleme yapılandırması sunuyorsa, kaydırıcıyı denetlemesi gereken her işleme seçeneğine info_options ekleyin.

Zarr varlıklarının yapılandırmasını oluşturma

options Zarr varlıklarının alanı NetCDF ve HDF5'e benzer, ancak iki önemli gereksinim vardır:

  1. kullanarak sel=time=...işleme için tek bir zaman dilimi seçin.
  2. İşlemeden önce verileri 2B çıkışa düşürün.

Ek boyutlar daraltılmazsa, işleme Source data must be 1 band gibi hatalarla başarısız olabilir.

sel içinde parametresi hakkında daha fazla bilgi edinebilirsiniz. Tek bir zaman adımı ve 2B çıkış için minimum çalışma Zarr işleme yapılandırması aşağıdadır:

[
    {
        "id": "era5-zarr-single-time",
        "name": "ERA5 single timestep",
        "type": "raster-tile",
        "options": "assets=data&subdataset_name=precipitation_amount_1hour_Accumulation&sel=time=2024-01-01&sel_method=nearest&colormap_name=viridis&rescale=0,0.01",
        "minZoom": 12
    }
]

Explorer’da veri küpü varlıklarını görselleştirin

Veri küpü varlıklarınız alındıktan ve yapılandırıldıktan sonra bunları Planetary Computer Pro Explorer'da görselleştirebilirsiniz. Explorer'ı kullanmaya yönelik adım adım kılavuz , Hızlı Başlangıç: Microsoft Planetary Computer Pro'da Explorer'ı kullanma bölümünden takip edilebilir.

Microsoft Planetary Computer Pro bazı veri küpü varlıklarını görselleştirmek için kullanılabilecek bir tiler içerirken, desteklenen her veri türü söz konusu olduğunda dikkat edilmesi gereken bazı uyarılar vardır.

NetCDF ve HDF5 görselleştirmesi

Microsoft Planetary Computer'a alınabilen tüm NetCDF veri kümeleri Planetary Computer Pro'nun görselleştirme tacını ile uyumlu değildir. Bir veri kümesinin görselleştirilmesi için X ve Y eksenleri, enlem ve boylam koordinatları ve uzamsal boyutlar ve sınırlar olmalıdır. Örneğin, enlem ve boylam değerlerinin değişken olduğu ancak koordinat olmadığı bir veri kümesi Planetary Computer Pro'nun tiler'i ile uyumlu değildir.

NetCDF veya HDF5 veri kümenizi görselleştirmeye çalışmadan önce, gereksinimleri karşılayıp karşılamadığını denetlemek için aşağıdakileri kullanabilirsiniz.

  1. Gerekli bağımlılıkları yükleme

    pip install xarray[io] rioxarray cf_xarray
    
  2. Aşağıdaki işlevi çalıştırın:

    import xarray as xr
    import cf_xarray
    import rioxarray
    
    def is_dataset_visualizable(ds: xr.Dataset):
        """
        Test if the dataset is compatible with the Planetary Computer tiler API.
        Raises an informative error if the dataset is not compatible.
        """
        if not ds.cf.axes:
            raise ValueError("Dataset does not have CF axes")
        if not ds.cf.coordinates:
            raise ValueError("Dataset does not have CF coordinates")
        if not {"X", "Y"} <= ds.cf.axes.keys():
            raise ValueError(f"Dataset must have CF X and Y axes, found: {ds.cf.axes.keys()}")
    
        if not {"latitude", "longitude"} <= ds.cf.coordinates.keys():
            raise ValueError("Dataset must have CF latitude and longitude coordinates, "
                             f"actual: {ds.cf.coordinates.keys()}")
    
        if ds.rio.x_dim is None or ds.rio.y_dim is None:
            raise ValueError("Dataset does not have rioxarray spatial dimensions")
    
        if ds.rio.bounds() is None:
            raise ValueError("Dataset does not have rioxarray bounds")
    
        left, bottom, right, top = ds.rio.bounds()
        if left < -180 or right > 180 or bottom < -90 or top > 90:
            raise ValueError("Dataset bounds are not valid; they must be within [-180, 180] and [-90, 90]")
    
        if ds.rio.resolution() is None:
            raise ValueError("Dataset does not have rioxarray resolution")
    
        if ds.rio.transform() is None:
            raise ValueError("Dataset does not have rioxarray transform")
    
        print("✅ Dataset is compatible with the Planetary Computer tiler API.")
    

GRIB2 görselleştirmesi

Microsoft Planetary Computer Pro'ya alınan GRIB2 varlıkları, aynı Blob Depolama kapsayıcısında depolanan ilişkili bir Dizin dosyası (.idx) olduğu sürece Gezgin'de görselleştirilebilir. Dizin dosyası alma sırasında oluşturulur ve GRIB2 verilerine en uygun erişim ve işleme için gereklidir.

Zarr görselleştirmesi

Microsoft Planetary Computer Pro'ya alınan Zarr varlıkları, sel değişkenini ve options zaman dilimini hangi parçada render edileceğini Belirleme Yapılandırması'nda belirttiği sürece, Explorer'da görselleştirilebilir. Bunun yapılmaması, Explorer'ın Zarr deposunun tüm değişkenlerini ve zaman dilimlerini aynı anda işlemeye çalışmasına neden olur ve bu da Explorer'ın kilitlenmesine neden olur.

Zarr deposunun boyutu ve uzamsal öbekler de performansı etkileyecektir. Zarr deposunun toplam boyutunu 2 GB'ın altında tutmayı ve her öbeğin 100 MB'tan küçük olmasını sağlamak, döşeyicinin (tiler) en iyi şekilde çalışmasını sağlar.

Zarr görselleştirme sınırlamaları ve bilinen sorunlar

Zaman kaydırıcı davranışı (bilinen sınırlama)

Uyarı

Zaman kaydırıcısının davranışı Zarr için şu anda sınırlı. Veri alma sırasında zamansal bir boyut doğru şekilde algılandığında Explorer zaman kaydırıcısı görünür.

Zarr varlıkları zaman değerleri içerse bile, alım bazı veri kümeleri için zamana bağlı meta verileri algılayamayabilir. Bu gibi durumlarda, zaman kaydırıcısı işlenmez ve işleme yapılandırmasında tek seferde bir adımı görselleştirmeniz gerekir (örneğin, sel=time=2024-01-01).

Zamana duyarlı davranışı etkinleştirmek için STAC meta verileriniz aşağıdakilerle zamansal bir boyut cube:dimensions içermelidir:

  • type: temporal
  • extent
  • step

Zarr kaynak verileri için mümkün olduğunda CF zaman kurallarını izleyin, örneğin:

  • standard_name="time"
  • axis="T"

Bu kurallar tutarlı meta veri yorumlaması için gereklidir, ancak geçerli sınırlamalar nedeniyle her Zarr veri kümesi için zaman kaydırıcısı desteğini garanti etmek için her zaman yeterli değildir.

Kerchunk notları

Kerchunk, çok boyutlu erişim modelleri için performansı iyileştirebilir, ancak alma sırasında zamansal boyutlar algılanmadığında zaman kaydırıcısı sorunlarını çözemez.

Bazı Zarr veri kümeleri, dizin işleme sırasında Index must be monotonic increasing or decreasing gibi hatalarla başarısız olabilir.

Veri küpü görselleştirmesi için zaman kaydırıcısı

Veri küpü varlıklarınız zamana bağlı bir bileşene sahipse, zaman içindeki değişiklikleri görselleştirmek için Gezgin'deki zaman kaydırıcısını kullanabilirsiniz. STAC Öğeleriniz, time boyutu ve extent ve step alanına sahip varlıklar içeriyorsa, zaman kaydırıcısı otomatik olarak görüntülenir.

Uyarı

Zarr varlıkları için, Zarr görselleştirme sınırlamaları ve bilinen sorunlar ile ilgili olarak mevcut zaman kaydırıcı kısıtlamaları ve gerekli işleme yapılandırma desenlerine bakın.