OpenDataCube - The Open-Source Alternative to Google Earth Engine (GEE)

OpenDataCube is an open-source software that replaces Google Earth Engine — self-hosted, no quota limits, runs offline. This article shares my personal experience learning and applying ODC to TLGeo products.

TT
Written by TLGeo Team
Read Time 8 min read
Posted on 2026-04-15
OpenDataCube - The Open-Source Alternative to Google Earth Engine (GEE)

Introduction

This is a series sharing my personal experience learning and using OpenDataCube while developing TLGeo products — Geocollect and Geocloud.

When I need to process satellite imagery, my first thought is usually Google Earth Engine (GEE). But GEE has closed source, and recently near the end of 2026 there has been talk of EECU (Earth Engine Compute Unit) quota restrictions.

I realized ODC could be a replacement, but installing and configuring ODC is complex.

That’s why I wrote this series — along with a video playlist in Vietnamese. Not to replace the official documentation, but to share the path I took, helping you save time getting started.


What Is OpenDataCube?

ODC is an open-source software (Apache 2.0) used to store, organize, and analyze large volumes of satellite imagery data by space and time.

In short: it transforms terabytes of satellite imagery from multiple sources into a structured data repository — called a data cube — and allows querying with Python in just a few lines of code.

What is a data cube?

A data cube — in the remote sensing context — is a way to organize satellite imagery along 3 dimensions:

  • Space (x, y coordinates)
  • Time (acquisition date)
  • Spectrum (spectral bands: red, NIR, SWIR…)

Instead of storing individual .tiff files scattered across folders, you have a seamless data cube, queryable along any dimension. Want NDVI imagery for the Hanoi area, March 2024? Write 5 lines of Python and you’re done.

OpenDataCube vs Google Earth Engine — A Practical Comparison

When researching large-scale satellite image processing, two names come up repeatedly: OpenDataCube and Google Earth Engine (GEE). Here is my practical comparison:

OpenDataCubeGoogle Earth Engine
NatureOpen-source softwareCommercial cloud platform
CostServer, storage, bandwidth — you payFree tier with limits; paid when quota exceeded
Free data❌ You must find and import yourself✅ Hundreds of datasets pre-integrated
LanguagePure PythonJavaScript / Python API
Runs onPersonal computer, private server, cloudWeb browser
Offline✅ Can run completely offline❌ Requires constant internet
Source code✅ Open, freely modify❌ Closed, cannot see the code
CoverageGlobal (you decide)Global

Google Earth Engine is like a cloud subscription service — log in, drag and drop, run immediately. Convenient, rich data, but you don’t own the system, depend on free quotas or pay monthly fees, and need constant internet.

OpenDataCube is like building your own private server — large upfront effort, but later you have full control, no quota limits, can run offline, and scale as you wish.

For commercial products like TLGeo, ODC is the more suitable choice — no third-party dependency, integrated directly into the production workflow.


Why OpenDataCube Matters to TLGeo?

When working with satellite imagery for GIS products, we faced a core problem:

Free satellite imagery is plentiful, but organizing and processing it systematically on your own — that is nearly impossible for an individual.

Specifically:

  • Landsat Collection 2 = ~40 years of data, dozens of gigabytes added each year
  • Sentinel-2 = revisits every ~5 days, each scene ~1 GB
  • Sentinel-1 = radar, cloud-penetrating, requires separate storage

Building a system to download, extract, index, and query all of that? Very complex. OpenDataCube helps automate the entire workflow.

What ODC solves for TLGeo

  • Geocollect — Cross-reference satellite imagery with field GPS data: when a user records a point in the field, the system automatically queries the nearest satellite image for that location.
  • Geocloud — View multi-date satellite imagery on a map: compare area conditions before and after events (floods, deforestation, unauthorized construction).
  • Carbon estimation — Using Landsat time series (>50 years) combined with ODC to estimate carbon sequestration.

Core Components of OpenDataCube

OpenDataCube consists of 5 main components:

Core components of OpenDataCube

1. Datacube Core (datacube)

The main Python library. Allows querying and processing satellite imagery with Python:

import datacube

dc = datacube.Datacube()

# Query Sentinel-2 imagery for an area
ds = dc.load(
    product='s2_l2a',
    x=(105.5, 106.0),
    y=(20.8, 21.2),
    time='2024-01-01',
    measurements=['nbart_red', 'nbart_nir', 'nbart_swir_16']
)

2. ODC Tools (odc-tools)

Extended toolset — includes:

  • ODC Stats — Regional statistics, trend analysis
  • ODC Stac — STAC catalog integration
  • ODC Dask — Parallel processing with Dask

3. ODC UI (odc-ui)

Web interface for visually browsing data — useful for quick checks before writing scripts.

ODC Explorer interface

4. OWC — OGC Web Services

ODC comes with OWC (OpenDataCube Web Services) built-in — serving satellite imagery via OGC standards directly from the datacube:

  • WMS (Web Map Service) — delivers tile images to maps
  • WMTS (Web Map Tile Service) — high-performance raster tiles
  • WCS (Web Coverage Service) — query raster data by region
  • WCPS (Web Coverage Processing Service) — raster processing on the server

The most attractive feature: you can open ODC WMS right in QGIS, MapInfo, ArcGIS — no special plugins needed. Satellite imagery from the datacube displays as a regular map layer.

OWC WMS from ODC displayed in QGIS

5. PostgreSQL + PostGIS

All metadata and spatial indexes are stored in PostgreSQL with the PostGIS extension. This is the part I found most complex to set up.


ODC does not provide data out of the box. You must find and import it yourself. Here are the most common sources:

SourceNotes
USGS EarthExplorerLandsat (free, global)
Copernicus Open Access HubSentinel-2, Sentinel-1 (free, global)
AWS Open DataLandsat, Sentinel-2 (free)
Microsoft Planetary ComputerLandsat, Sentinel-2 (free, powerful API)
Google Earth EngineFree tier, with limits

The Solution: Vietnamese Video Tutorial Playlist

Because of these difficulties, I decided to write and record an ODC installation video playlist in Vietnamese — to share the path I took, and help you avoid starting from scratch.

#VideoContent
0Introduction to OpenDataCubeOverview of OpenDataCube, data cube, and why use it
1Install OpenDataCubeInstallation guide

Conclusion

OpenDataCube is an extremely powerful tool — and I genuinely believe if you work in remote sensing or GIS, it is worth learning.

If you need support or want to discuss remote sensing and OpenDataCube, feel free to contact TLGeo.

TLGeo workspace

Kết nối với TLGeo ngay

Chúng tôi muốn là một phần công nghệ của doanh nghiệp bạn, mỗi giải pháp chúng tôi phát triển là một công việc của khách hàng được giải quyết.

+84.363.077.359