Skip to content

Slow creation with dynamic STAC catalogs #140

@TomAugspurger

Description

@TomAugspurger

In

for subcatalog in self._stac_obj.get_children():
, intake-stac will recurse into child objects. This will end up making many HTTP requests for large, dynamic STAC catalogs served over a STAC API like https://planetarycomputer.microsoft.com/api/stac/v1.

I believe that all the necessary information is provided at the https://planetarycomputer.microsoft.com/api/stac/v1/collections endpoint. https://github.com/stac-utils/pystac-client handles all the logic for interacting with STAC APIs efficiently (it has subclasses for pystac.Collection, etc.). Something like

pystac_client.Client.open("https://planetarycomputer.microsoft.com/api/stac/v1/").get_collections()

should efficiently get the child collections for APIs that implement the /collections endpoint (I'm unsure about child catalogs; we don't use them).

Might have some overlap with #66.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions