Skip to main content

Python extension to access the ECMWF observation database (ODB1) format

Project description

PyPI version Documentation Status Python

odb4py 1.3.2rc2 release

Description

odb4py (Observation DataBase FOR PYthon) is a C/Python interface to read and query ECMWF ODB1 databases.
It provides high-performance access to ODB data through a native C backend, with seamless integration into the Python scientific ecosystem.
The package embeds a customized version of the ECMWF ODB software odb_api_bundle-0.18.1-Source and is distributed as manylinux wheels, requiring no external ODB installation.


Features

  • Native C backend based on ECMWF ODB1
  • Support for IFS and ARPEGE ODB databases
  • SQL-like query interface
  • Fast data access with NumPy/C API and pandas integration
  • No runtime dependency on system ODB or ECMWF bundles
  • Conversion to other formats : ODB2 ,NetcDF and SQLITE

Installation

The odb4py package can be installed from PyPI using pip:

pip install odb4py  

Installation test

>>> from odb4py import core # The extension core
>>> from odb4py import convert # An extension for format conversion
>>> from odb4py import utils # Pure python modules helpers

Requirements

Python ≥ 3.9
NumPy ≥ 2.0
Linux system (manylinux2014 compatible)

Optional

pyodc ≥ 1.6.0

Scientific context

ODB (Observation DataBase) is a column-oriented database format developed at ECMWF and widely used in numerical weather prediction systems such as IFS,ARPEGE and NWP limited are models

odb4py is primarily designed for:

  • Meteorologists and atmospheric scientists (especially within the ACCORD consortium)
  • Operational and research environments
  • Post-processing and diagnostic workflows
  • The current package version focuses on read-only access and data extraction for scientific analysis.

License

Apache License, Version 2.0. See LICENSE for details .

odb4py incorporates components derived from the ECMWF ODB software.

The original source code has been modified to:

  • Expose functionality through a Python interface
  • Reduce the runtime footprint
  • Enable portable binary wheel distribution

All original copyrights remain with ECMWF.

Acknowledgements

  • This project incorporates and is derived from the ECMWF ODB software.
    ODB was developed at the European Centre for Medium-Range Weather Forecasts (ECMWF) by S. Saarinen et al. All rights to the original ODB software remain with ECMWF and their respective owners.
  • The author would like to thank the other colleagues from ACCORD consortium (MetCOop , SHMI , AEMET & Meteo France ) for providing different samples of ODBs.
  • The author would also like to thank 'Mohand Ouali Ait Meziane' for testing odb4py and providing valuable feedback.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

odb4py-1.3.2rc2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

odb4py-1.3.2rc2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

odb4py-1.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

odb4py-1.3.2rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

odb4py-1.3.2rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

File details

Details for the file odb4py-1.3.2rc2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for odb4py-1.3.2rc2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 802022246df27453029f38e7663a42828815b31459c3f56a100b8254d6a39c87
MD5 d7d17798a5d393c8ed1f210d6c4f446b
BLAKE2b-256 0466dc5989d894b2a3d3682132eab2d56bc1c41d169f8360326fbfe011fe9f48

See more details on using hashes here.

File details

Details for the file odb4py-1.3.2rc2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for odb4py-1.3.2rc2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 da7b29961fe01e6095b541abd0fbdc0bcc2b2f6e417492ddc9a9d326e02715b6
MD5 93df0c6e2d6318654e08a88b082c2118
BLAKE2b-256 ff80b7563a9562a83f53582437e5c0f24c5ed893372b1d4c2238013aea569f3b

See more details on using hashes here.

File details

Details for the file odb4py-1.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for odb4py-1.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 47db0f63913d06dea2af97449c78c2ce4345c20631adb67a1098850fc54569e0
MD5 5b15bcbe6eaa78af813d33509d2fdcf9
BLAKE2b-256 fd69c572265303ccf6f3f8f4d7223e91c2b2450e188dc2c95159b7bb89750431

See more details on using hashes here.

File details

Details for the file odb4py-1.3.2rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for odb4py-1.3.2rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 295a55fa06d2cd51469f28a95debe995b738947682cbea7bcfbb2aa85c4352fd
MD5 a5bad63ae05188a4fc094ce3667f4693
BLAKE2b-256 b9b5bcf5dfdcfb32ab160a20b4cda330acab7e0d1a69f7e696cb65c47432da3f

See more details on using hashes here.

File details

Details for the file odb4py-1.3.2rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for odb4py-1.3.2rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b685cc5bcd51aa5ad160139e74d4a31ddbbacd481fb462b6bd6cd4b112c177f5
MD5 622dcc7c51ca27754d80f8bf578b38d9
BLAKE2b-256 e571ef4ed95b7165c77a76e83827e0021f26eedab08f8d90bb357b7305deed56

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page