Slide 1

Slide 1 text

STAC Specification and Implementation in Real World Siriya Saenkhom-or | Sattawat Arab Vallaris Maps, i-bitz company limited FOSS4G ASIA SOUL 28 Nov - 2 Dec 2023

Slide 2

Slide 2 text

Siriya Saenkhom-or GIS Backend Developer Sattawat Arab Head of Geoinformatics About Speakers Email: siriya.s@i-bitz.co.th Email: sattawat.a@i-bitz.co.th

Slide 3

Slide 3 text

Contents History of Data Cataloging What is considered as a origin of data catalog How STAC Revolutionized Geospatial Data Cataloging Weaknesses of the old way of cataloging geospatial data Introduction to STAC What is STAC and its importance Related Specifications Specifications required for implementing STAC Our Implementation How we interpret from specifications to implementation Usage in Our Customer Projects How STAC is utilized in real-world projects Conclusion Presentation conclusion 01 02 03 04 05 06 07

Slide 4

Slide 4 text

History of Data Cataloging The concept of data catalog can be traced back to the card catalogs which used to manage and identify books in the library. Card catalogs made it easier for patrons to find exactly the book that they were looking for, including where the book was located within the library’s stacks. Each book was categorized by title, author, subject, or each book’s metadata. 01

Slide 5

Slide 5 text

How STAC Revolutionized Geospatial Data Cataloging 02

Slide 6

Slide 6 text

Weaknesses of the old way of cataloging geospatial data 01 02 03 04 Lack of standardization Different agencies and organizations used their own formats, which made it difficult to find and access data. Lack of interoperability Data catalogs were often incompatible with each other, which made it difficult to share data between different organizations. Lack of discovery Data catalogs were often difficult to find and use Lack of metadata Data catalogs often did not include enough metadata about the data, which made it difficult to assess the quality and usefulness of the data.

Slide 7

Slide 7 text

Introduction to STAC 03

Slide 8

Slide 8 text

STAC Stands for SpatioTemporal Asset Catalog A spatial temporal asset is any file that represents information about the earth captured in a certain space and time. https://earth.esa.int/documents/20142/1835287/ bgr2.jpg/de13fe5e-8545-042b- ba99-7d99dbb33720?t=1608113245660 https://www.basarsoft.com.tr/wp-content/ uploads/2022/09/sayisal-yukselik-modeli- dem-ic.jpg https://agfundernews.com/wp-content/ uploads/2018/01/orb0001-scaled.jpg https://carto.com/blog/raster-vs-vector- whats-the-difference-which-is-best

Slide 9

Slide 9 text

Characteristics of STAC Standardization STAC is a standardized format, which makes it easy to share and consume data between different organizations and software tools. Extensibility STAC is extensible. Additional information can be added to STAC catalogs to meet the specific needs of different organizations and users. Simplicity STAC is simple and easy to use Cloud-native STAC catalogs are designed to be stored and managed in cloud storage platforms. Flexibility STAC supports a wide range of geospatial data formats, including vector, raster, and lidar data.

Slide 10

Slide 10 text

Findable A Accessible I Interoperable R Reusable FAIR Principle F

Slide 11

Slide 11 text

STAC is widely used in organizations around the world

Slide 12

Slide 12 text

Related Specifications 04

Slide 13

Slide 13 text

represents a unit of data and metadata. It’s a GeoJSON Feature which includes geometry to describe the location of the asset and additional information. STAC Item represents a logical group of other Catalog, Collection, and Item objects. It’s like a folder in a file structure which facilitates catalog browsing. STAC Catalog includes the core fields of the Catalog object and also provides additional metadata to describe the set of Items it contains. STAC Collection STAC Specification

Slide 14

Slide 14 text

There are two main types of STAC catalogs - static and dynamic Static and Dynamic Catalogs Static Catalogs Dynamic Catalogs A static catalog is an implementation of the STAC specification that does not respond dynamically to requests. It is simply a set of files on a web server that link to one another in a way that can be crawled, often stored in an cloud storage service. A dynamic catalog is implemented in software as an HTTP-based API. Its structure and responses are usually generated dynamically, instead of relying on a set of already defined files. It often also implement the STAC API specification, that responds to search queries.

Slide 15

Slide 15 text

01 03 02 04 STAC API Specification Core requires a server to return from a root endpoint a valid STAC Catalog "landing page" that also includes a conformsTo attribute. Collections and Features serves STAC Collection and Item objects through the OGC API - Features endpoints Extensions and Fragments STAC API allows 'extensions' that can be added for additional functionality in order to meet the requirements of its implementors. Item Search provides the ability to search for STAC Item objects. Several core query parameters are defined by OGC API - Features, with a few additions specified

Slide 16

Slide 16 text

Our Implementation 05

Slide 17

Slide 17 text

Database Diagram of 1 STAC catalog

Slide 18

Slide 18 text

consists of endpoints for Create Read Update Delete each STAC component STAC Components consists of endpoints for Create Read Update Delete schema describing fields that can use for filtering Queryables consists of endpoint for searching STAC Item which can be searched according to conditions Item Search STAC API Endpoints

Slide 19

Slide 19 text

Usage in Our Customer Projects 06

Slide 20

Slide 20 text

GISTDA Disaster Platform

Slide 21

Slide 21 text

GISTDA Disaster Platform Example catalog dimension for flood area data Flood Year Processing Quarter Month Day Item Flood day Item - Flood 1 day - Flood 3 days - Flood 7 days - Flood 30 days - flood_{YYYY}/{MM}/{DD}

Slide 22

Slide 22 text

GISTDA Disaster Platform - metadata - check Catalog - check Collection - check Item Read data Connect Flow of creating flood area STAC All processes are written in Python script Create FeatureCollection Flood area Insert data into STAC

Slide 23

Slide 23 text

GISTDA Satellite Data Catalog

Slide 24

Slide 24 text

GISTDA Satellite Data Catalog Example catalog dimension for THEOS 1 satellite image THEOS1 Imaging mode Year Month Day Item - TH_CAT_{YYYY}{MM}{DD}…

Slide 25

Slide 25 text

GISTDA Satellite Data Catalog - metadata - thumbnail Read file & metadata Connect All processes are written in Python script THEOS 1 Create CoverageCollection Insert data into STAC - check Catalog - check Collection - check Item Flow of creating THEOS 1 STAC

Slide 26

Slide 26 text

Conclusion 07

Slide 27

Slide 27 text

Conclusion In conclusion, we have seen how the STAC specification has gained popularity quickly into a powerful tool for cataloging and managing geospatial data. It is standardized, simple, flexible, extensible, and cloud- native, making it a good choice for a wide range of organizations and use cases, as evidenced by the variety of organizations that utilize STAC for their geospatial data and our own real-world projects. So next time when you need to catalog your spatial temporal assets consider using STAC, it can definitely help to make your data more valuable. https://www.immuta.com/wp-content/uploads/2022/06/art_101@2x-1.png

Slide 28

Slide 28 text

If you have any questions, feel free to contact us any time on mobile phone or contact us by email. We will get back to you as soon as we can. i-bitz company limited 1371 Suite 10 Capital Mansion, Phahonyothin Rd, Phayathai, Bangkok, 10400 Thailand Office Hours Monday-Friday 09.00-17.00 Get In Touch (+66) 2278 7913 More Information www.i-bitz.co.th sales@i-bitz.co.th Thank You for Joining This Session