Overview
Compute is the feature of the Earthmover platform that makes it easy to query your Arraylake data and integrate it into downstream applications via standards-compliant API endpoints. This page describes the administration and management aspects of Compute. For details on the APIs and protocols, see the following pages.
- Environmental Data Retrieval (EDR) - allows you to extract points or areas of interest from gridded datasets and return results in JSON, CSV, or NetCDF. Ideal for simple timeseries extraction.
- Tiles - dynamically serves map tiles suitable for use in web-based slippy maps and GIS applications
- Web Map Service (WMS) - dynamically serves map images via the OGC WMS protocol, suitable for GIS applications, static maps, and other map application use cases.
- DAP2 - query datasets using the widely supported DAP2 protocol.
- openEO - describe an analysis as an openEO process graph and run it server-side next to your data, downloading only the result.
- Zax SQL - query your data as relational tables from any Postgres or Flight SQL client.
- Discovery and Metadata - programmatically explore available repos, refs, and datasets, inspect dataset schemas, and access interactive API docs.
In the following
{org}is the name of your Arraylake organization{repo}is the name of the Repo{branch|commit|tag}is the branch, commit, or tag within the Repo to use to fulfill the request{path/to/group}is the path to group within the Repo that contains anxarrayDataset{protocol}is one of the supported protocols (e.g.edr,tiles,dap).
Turning on a service
Compute is based on the concept of services. No services are enabled automatically; they must be explicitly turned on before use:
al compute enable {org} {protocol}
By default the service is only accessible to those with access to the Repo being queried. Provide the --is-public flag to open access
to all users without authentication. For more information, see the Authentication page
Choosing a region
A service runs in one region. Run it in the region nearest to its data: reads from the bucket are then faster and do not cross regions.
Provide --region to choose one, for example:
al compute enable {org} edr --sku-code xs --region eu-west-1
Without --region, the service runs in the default region (us-east-1). The Python client lists the available regions with services.regions().
You cannot change the region of a running service. To move it, disable it and enable it again in the new region.
A service outside the default region has the region in its hostname, for example edr-1a2b3c4d.eu-west-1.compute.arraylake.app.
Use the URL that al compute list {org} reports.
Turning off a service
al compute disable {org} {service_name}
Choose the appropriate service_name from the output of al compute list {org}.
Status of Services
al compute list {org}