Microsoft Planet Computer Pro için STAC'ye genel bakış

Bu makalede SpatioTemporal Varlık Kataloğu (STAC) belirtimine ve Microsoft Planetary Computer Pro'nun bunu nasıl kullandığına genel bir bakış sunulmaktadır.

STAC belirtimi

STAC belirtimi, jeo-uzamsal verileri bulmayı, birleştirmeyi ve kullanmayı kolaylaştıran açık, topluluk temelli bir standarttır. STAC, "spatiotemporal varlıkları" tanımlamak ve kataloglamak için ortak bir yapı sağlar. Bu yapı hem alan hem de zaman genelinde verileri dizine almanızı ve düzenlemenizi sağlar.

STAC sayesinde kuruluşlar jeo-uzamsal varlıklarını çok çeşitli kullanıcılar için erişilebilir hale getirebiliyor. STAC kataloglarını kullanarak aşağıdakiler de dahil olmak üzere birçok jeo-uzamsal varlık verisi türünü düzenleyebilirsiniz:

  • Uydu, havadan ve insansız hava aracı görüntüleri
  • LIDAR ve SAR verileri
  • Tam Hareketli Video
  • Hiperspektral veriler
  • Diğer türetilmiş veri biçimleri

Ayrıca, STAC'yi Bulut için İyileştirilmiş GeoTIFFs (COG) ve GeoParquet gibi mevcut ve yeni ortaya çıkan buluta özel veri biçimleriyle kullanabilirsiniz.

2018'deki sürümünden bu yana, birçok kuruluş uzamsal verilerini düzenlemek için STAC'yi hızla benimsemiştir. Bu kuruluşlar arasında uydu operatörleri, kamu kuruluşları, sivil toplum grupları ve ticari şirketler yer alır.

STAC belirtimi jeo-uzamsal varlıkları açıklamaya, bu varlıkları gruplar halinde düzenlemeye ve bu varlıkları ortak API'ler aracılığıyla aranabilir hale getirmek için dört tamamlayıcı standart içerir. Özellikle, bu STAC standartları şunlardır:

Planet Computer Pro, veri yönetiminin tüm yönleriyle STAC belirtimini kullanır.

flowchart LR
    subgraph GC["GeoCatalog (Azure resource)"]
        direction TB
        subgraph C1["STAC Collection"]
            I1["STAC Items"]
        end
        subgraph C2["STAC Collection"]
            I2["STAC Items"]
        end
        subgraph C3["STAC Collection"]
            I3["STAC Items"]
        end
    end

    API["STAC API"]
    GC -- exposes --> API

    classDef resource fill:#0a3d62,stroke:#0a3d62,color:#ffffff;
    classDef collection fill:#e8f1fb,stroke:#0a3d62,color:#0a3d62;
    classDef items fill:#ffffff,stroke:#0a3d62,color:#0a3d62;
    classDef api fill:#1e824c,stroke:#1e824c,color:#ffffff;

    class GC resource;
    class C1,C2,C3 collection;
    class I1,I2,I3 items;
    class API api;

Uyarı

Microsoft Planetary Computer Pro şu anda STAC 1.0.0 belirtimini hedeflemektedir ve henüz STAC 1.1.0 ile uyumlu değildir. Gelecek bir sürüm için STAC 1.1.0 desteği planlanıyor.

GeoCatalogs ve STAC

GeoCatalogs'a Giriş

Planetary Computer Pro hizmeti, jeo-uzamsal veri kümelerini almak, yönetmek, aramak ve dağıtmak için Azure aboneliğinizde bir GeoCatalog kaynağı oluşturmanıza olanak tanır. GeoCatalog, yönettiğiniz jeo-uzamsal veriler için STAC uyumlu bir API'yi kullanıma sunan Azure bir kaynaktır. STAC API desteğine ek olarak, bir GeoCatalog veri alımı, yönetilen depolama, kimlik tabanlı erişim denetimi, görselleştirme ve STAC spesifikasyonunun kendisinin bir parçası olmayan Azure’a özgü diğer yetenekleri sunar.

STAC API perspektifinden bakıldığında GeoCatalog, STAC koleksiyonlarını ve STAC Öğelerini gruplandıran üst düzey bir STAC Kataloğu nesnesi sunar. Belirli bir GeoCatalog için bu üst düzey STAC Catalog JSON’unu, https://<your geocatalog uri>/json-api?path=/ adresindeki JSON web görüntüleyicisini kullanarak görüntüleyebilirsiniz. STAC Kataloğu spesifikasyonu hakkında daha fazla bilgi için bkz. STAC Katalog Spesifikasyonu.

GeoCatalog aşağıdaki bilgiler kullanılarak tanımlanır:

Alan Açıklama
Abonelik GeoCatalog örneğini dağıttığınız Azure aboneliği
Kaynak Grubu GeoCatalog örneğini dağıttığınız Azure kaynak grubu
İsim GeoCatalog örneğinin adı
Bölge GeoCatalog örneğini dağıttığınız Azure bölgesi

Planetary Computer Pro şu anda GeoCatalogs'ı aşağıdaki Azure bölgelerinde dağıtabilir:

  • ABD'nin Doğusu
  • ABD'nin Kuzey Orta Bölgesi
  • Batı Avrupa
  • Orta Kanada
  • UK South
  • ABD Hükümeti Virginia

Azure portalını veya Azure REST API'sini kullanarak GeoCatalog dağıtabilirsiniz. Azure aboneliğinize GeoCatalog dağıtmayı öğrenmek için bkz. GeoCatalog kaynağı oluşturma.

STAC koleksiyonları

Koleksiyonlara giriş

GeoCatalog, Azure'da jeo-uzamsal veri kümelerini depolamak ve düzenlemek için koleksiyonlar oluşturmanıza olanak tanır. Ortak coğrafi alan veya algılayıcı gibi özellikleri ve meta verileri paylaşan bir grup STAC Öğesini açıklamak için BIR STAC koleksiyonu kullanın. STAC koleksiyonu kavramı hakkında daha fazla bilgi için bkz. STAC koleksiyonu Belirtimi.

Koleksiyon tanımı

Planet Computer Pro, veri kümesini ve dahil edilen Öğeleri tanımlamak için bir dizi ortak alan tanımlayan STAC koleksiyon belirtimine bağlıdır.

Bir koleksiyonda, bu koleksiyonda depolanan verilerin türünü ve yapısını belirtebilirsiniz. Planet Computer Pro'nun Gezgini'ni kullanarak koleksiyondaki verileri görselleştirmek için işleme yapılandırma ayarları da ekleyebilirsiniz.

Koleksiyonları GeoCatalog'da JSON biçiminde tanımlarsınız. Tanım aşağıdaki alanları içerir:

Alan Açıklama
Kimlik Gerekli - Sağlayıcı genelinde benzersiz olan koleksiyonun tanımlayıcısı.
Türü Gerekli - STAC öğe türü; "koleksiyon" olmalıdır.
Başlık Koleksiyon için kısa açıklayıcı tek satırlık başlık.
Açıklama Gerekli - Koleksiyonu tam olarak açıklamak için ayrıntılı çok satırlı açıklama.
Lisanslar Gerekli - Koleksiyonun lisansları.
Kapsam Gerekli - Koleksiyonun uzamsal (boylam/enlem) ve zamansal (tarih aralığı) uzantılarını açıklar.
Sağlayıcılar Koleksiyonun içeriğini yakalayan veya işleyen kuruluşlar.
Özet Dahil edilen Öğelerin özelliklerine genel bir bakış sağlayan anahtar-değer çiftlerinin listesi.
Koleksiyon Varlıkları Küçük resim görüntüsü gibi doğrudan koleksiyonla ilişkilendirilmiş veri dosyaları.
Madde Varlıkları Koleksiyonun öğelerine dahil edilen veri dosyaları hakkında ayrıntılar. Daha fazla bilgi için bkz . Öğe Varlıkları.
Bağlantılar Gerekli - Kaynaklara ve ilgili URL'lere bağlantı nesnelerinin listesi.
Anahtar sözcükler Koleksiyonu açıklayan anahtar sözcüklerin listesi.
STAC Sürümü Gerekli - Koleksiyon tarafından kullanılan STAC sürümü.

Madde varlıkları

item_assets Koleksiyon düzeyindeki alan, herhangi bir alt Öğede hangi varlıkların (veri dosyaları) kullanılabilir olduğunu gösterir. Bu alandaki listelenen varlıklar, tüm varlıkların tüm Öğeler için kullanılabilir olduğu anlamına gelmez. Kullanılabilir varlıkların birleşimi, kesişim değil alan içerisinde gösterilir. Bu alanı, STAC belirtiminin item_assets uzantısı aracılığıyla bir GeoCatalog'da etkinleştirirsiniz. Öğeleri GeoCatalog Gezgini'nde görselleştirmek istiyorsanız öğe varlıkları uzantısına ihtiyacınız vardır.

alanı item_assets , aşağıdaki alanlardan en az ikisine sahip bir nesnedir:

Alan Türü Açıklama
başlık String İstemciler ve kullanıcılar için görüntülenen başlık.
Açıklama String Varlığın nasıl işlendiği veya oluşturulduğu gibi daha fazla ayrıntı sağlayan açıklaması.
tür String Varlığın medya türü .
görevler dize listesi Bağlantılarda rel kullanımına benzer şekilde varlığın anlamsal rolleri.

Koleksiyon JSON örnekleri

Aşağıdaki örnekte en düşük düzeyde bir JSON koleksiyonu gösterilmektedir. Daha fazla alan için bkz. STAC koleksiyonu belirtimi.

{
  "id": "example-collection",
  "type": "Collection",
  "title": "Example collection",
  "description": "An example collection",
  "license": "CC-BY-4.0",
  "extent": {
    "spatial": {
      "bbox": [
        [
          -180,
          -90,
          180,
          90
        ]
      ]
    },
    "temporal": {
      "interval": [
        [
          "2018-01-01T00:00:00Z",
          "2018-12-31T23:59:59Z"
        ]
      ]
    }
  },
  "links": [],
  "stac_version": "1.0.0"
}

Biraz daha karmaşık bir JSON örneği için, Ulusal Tarım Görüntü Programı'ndan (NAIP) açık bir veri kümesini açıklayan bu örneği inceleyin.

Koleksiyon yapılandırması

Koleksiyonları GeoCatalog Gezgini'nde görselleştirmek için aşağıdakiler dahil olmak üzere çeşitli yapılandırmalar tanımlamanız gerekir:

STAC öğeleri

STAC öğelerine giriş

GeoCatalog, jeo-uzamsal veri kümelerini koleksiyonlar halinde depolar ve düzenler. STAC Öğesi, GeoCatalog koleksiyonundaki temel nesnedir. Bir sahne için meta veriler ve uydu görüntüsü gibi o sahneden varlıklara bağlantılar içerir. Öğenin meta verileri GeoCatalog'un uzamsal varlıkları aramasına ve sorgulamasına olanak tanır. STAC Öğeleri hakkında daha fazla bilgi için bkz. STAC Öğesi Belirtimi.

Öğe tanımı

Planet Computer Pro, bir Öğeyi tanımlamak için zaman aralığı ve Öğeyle ilgili varlıklar gibi ortak alanlar kümesini tanımlayan STAC Öğe Belirtimine bağlı kalmaktadır. Öğeleri JSON biçiminde tanımlarsınız ve bunları daha fazla meta veri içerecek şekilde esnek bir şekilde genişletebilirsiniz.

Geçerli bir STAC Öğesi için aşağıdaki alanlar gerekir:

Alan Açıklama
Kimlik Gerekli - Öğenin üst koleksiyonunda benzersiz olan Öğenin tanımlayıcısı
Türü Gerekli - GeoJSON Nesne türü; "Özellik" olmalıdır
Geometri Gerekli - Bu Öğe tarafından GeoJSON Geometri Nesnesi olarak temsil edilen varlığın tüm ayak izini tanımlar
Sınırlayıcı Kutu Gerekli - bu Öğe tarafından temsil edilen varlığın sınırlayıcı kutusunun koordinatları
Özellikler Gerekli - Öğe için diğer meta veriler
Varlıklar Gerekli - Her birinin benzersiz anahtarı olan Öğe ile ilişkili veri varlıkları
Koleksiyon Gerekli - Öğenin ana koleksiyonunun kimliği
Bağlantılar Gerekli - kaynaklara ve ilgili URL'lere bağlantı nesnelerinin listesi
STAC Sürümü Gerekli - Öğe tarafından kullanılan STAC sürümü

Bu gerekli alanların ötesindeki Öğeler için yaygın meta veriler tarih ve saati, lisansları, sağlayıcıları, araçları ve daha fazlasını içerir.

Öğe JSON örneği

Aşağıdaki örnekte temel bir JSON öğesi gösterilmektedir.

{
  "stac_version": "1.0.0",
  "stac_extensions": [],
  "type": "Feature",
  "id": "20201211_223832_CS2",
  "bbox": [
    172.91173669923782,
    1.3438851951615003,
    172.95469614953714,
    1.3690476620161975
  ],
  "geometry": {
    "type": "Polygon",
    "coordinates": [
      [
        [
          172.91173669923782,
          1.3438851951615003
        ],
        [
          172.95469614953714,
          1.3438851951615003
        ],
        [
          172.95469614953714,
          1.3690476620161975
        ],
        [
          172.91173669923782,
          1.3690476620161975
        ],
        [
          172.91173669923782,
          1.3438851951615003
        ]
      ]
    ]
  },
  "properties": {
    "datetime": "2020-12-11T22:38:32.125000Z"
  },
  "collection": "simple-collection",
  "links": [
    {
      "rel": "collection",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    },
    {
      "rel": "root",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    },
    {
      "rel": "parent",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    }
  ],
  "assets": {
    "visual": {
      "href": "[URL]",
      "type": "image/tiff; application=geotiff; profile=cloud-optimized",
      "title": "3-Band Visual",
      "roles": [
        "visual"
      ]
    },
    "thumbnail": {
      "href": "[URL]",
      "title": "Thumbnail",
      "type": "image/jpeg",
      "roles": [
        "thumbnail"
      ]
    }
  }
}

STAC uzantıları

Şu anda GeoCatalog, alınan tüm koleksiyonlara otomatik olarak aşağıdaki uzantıları ekler:

STAC uzantılarını STAC Öğesi düzeyinde de kullanabilirsiniz.

Uyarı

Uzantılar da dahil olmak üzere STAC Öğeleri PySTAC kitaplığı kullanılarak doğrulanır. STAC doğrulama hatalarıyla karşılaşırsanız uzantıyı kaldırmayı deneyin.

Her birinin olgunluğu da dahil olmak üzere STAC uzantılarının tam listesi için GitHub'da STAC uzantıları sayfasına bakın.

STAC API'si

Planetary Computer Pro'nun API'leri STAC API belirtimine uygun olduğundan, petabayt ölçeğindeki veri kümelerinde hızla ve kolayca arama yapabilir ve ihtiyaçlarınızı karşılayan belirli veri varlıklarını bulabilirsiniz. Bu varlıkları tanımladıktan sonra GeoCatalog'un API'lerini kullanarak varlıkları görüntüleyebilir veya indirebilirsiniz.

Sonraki Adımlar