Using ODB at ECMWF. Piotr Kuchta Sándor Kertész. Development Section ECMWF. Slide 1. MOS Workshop, 2013 November 18-20, ECMWF

Similar documents
Observation feedback archiving in MARS. Acknowledgement:

Observational DataBase (ODB*) and its usage at ECMWF

Anne Fouilloux. Fig. 1 Use of observational data at ECMWF since CMA file structure.

Introduction to Metview

Metview and Python - what they can do for each other

Metview 4 ECMWF s latest generation meteorological workstation

Metview 4 ECMWF s next generation meteorological workstation

Metview 5.0 and Beyond, to its Pythonic Future

Metview 4 ECMWF s latest generation meteorological workstation

Metview s new Python interface

eccharts and Metview 4 2 new visualisation systems at ECMWF

Metview Macro Language

The challenges of the ECMWF graphics packages

eccharts Cihan Sahin Slide 1 Meteorological Operational Systems November

Metview s new Python interface first results and roadmap for further developments

Metview Introduction

Metview BUFR Tutorial. Meteorological Visualisation Section Operations Department ECMWF

Meteorology and Python

Introduction to ECMWF resources:

Meeting the challenges of the next generation of user interfaces

You will create some icons yourself, but some are supplied for you. If you are at ECMWF then you can copy the icons from the command line like this:

MIR. ECMWF s New Interpolation Package. P. Maciel, T. Quintino, B. Raoult, M. Fuentes, S. Villaume ECMWF. ECMWF March 9, 2016

Big changes coming to ECMWF Product Generation system

Generating SVG weather maps and meteorological graphs using Magics++

Report on the COPE technical meeting held at ECMWF, Reading 9-12, June 2014

ECMWF New Users Metview Tutorial

Integrating OGC web services into Metview and Magics++

The EU-funded BRIDGE project

BUFR decoding. Dominique Lucas User Support. February Intro Bufr decoding

COM INTRO 2016: GRIB Decoding - Solutions to practicals. Solution to Practical 1: using grib_dump and grib_ls

cdo Data Processing (and Production) Luis Kornblueh, Uwe Schulzweida, Deike Kleberg, Thomas Jahns, Irina Fast

SAS Online Training: Course contents: Agenda:

TIGGE and the EU Funded BRIDGE project

Web Services at ECMWF

COM INTRO 2017: GRIB Decoding - Solutions to practicals. Solution to Practical 1: using grib_dump and grib_ls

The netcdf- 4 data model and format. Russ Rew, UCAR Unidata NetCDF Workshop 25 October 2012

Interpolation. Computer User Training Course Paul Dando. User Support. ECMWF 25 February 2016

MARS Code Reorganization

ECMWF's Next Generation IO for the IFS Model and Product Generation

Delving Deep into Hadoop Course Contents Introduction to Hadoop and Architecture

The TIDB2 Meteo Experience

eccodes GRIB Fortran 90 - Python APIs Practicals 2 Dominique Lucas and Xavi Abellan

ECMWF Web re-engineering project

INTRODUCTION TO SAS HOW SAS WORKS READING RAW DATA INTO SAS

Compiling environment

Compressing Integers for Fast File Access

Compiling environment

The new ECMWF interpolation package MIR

PyNGL & PyNIO Geoscience Visualization & Data IO Modules

Easy Comext (or Easy XTnet) is an HTML based interface giving to the public at Eurostat s External Trade database.

OGC at KNMI: Current use and plans

TOOLS & TECHNIQUES FOR WORKING WITH DATA

Interpolation. Introduction and basic concepts. Computer User Training Course Paul Dando. User Support Section.

Dominique Lucas Xavier Abellan Ecija User Support

Second workshop for MARS administrators

Mastering phpmyadmiri 3.4 for

The Logical Data Store

NetCDF and HDF5. NASA Earth Science Data Systems Working Group October 20, 2010 New Orleans. Ed Hartnett, Unidata/UCAR, 2010

Distributed Architectures for Environmental Visualisation Systems

Hadoop Online Training

End-to-end optimization potentials in HPC applications for NWP and Climate Research

alteryx training courses

eccodes GRIB Fortran 90 - Python APIs Practicals 2 Dominique Lucas and Xavi Abellan

OMF Documentation. Release OSIsoft, LLC

ECMWF point database: providing direct access to any model output grid-point values

A problem of strong scalability?

From Integrated to Object-Oriented

PdP Modeling with FAMOS Architect Tips & Tricks

Short Notes of CS201

L2B pm25: L2BP CM development status

CSE 444: Database Internals. Lectures 26 NoSQL: Extensible Record Stores

Firebird in 2011/2012: Development Review

Metview FLEXTRA Tutorial. Meteorological Visualisation Section Operations Department ECMWF

Python in the Copernicus Climate Change Service

Data about data is database Select correct option: True False Partially True None of the Above

CS201 - Introduction to Programming Glossary By

Development of an information service system based on GOOGLE graphical interfaces. Instruction for the use of the MOON-VOS portal Interface

Working with Scientific Data in ArcGIS Platform

iris-grib Documentation

Python: Working with Multidimensional Scientific Data. Nawajish Noman Deng Ding

References. What is Bigtable? Bigtable Data Model. Outline. Key Features. CSE 444: Database Internals

B.V. Patel Institute of Business Management, Computer & Information Technology, Uka Tarsadia University : Advanced Applications of MS-Office

Open Data Standards for Administrative Data Processing

MARS administration. Sébastien Villaume Manuel Fuentes, Baudouin Raoult, Tiago Quintino Second Workshop for MARS administrators 7 8 March 2016

Magics support in CDO

Tempest Hydro-Met Analysis System White Paper August, 2007

WRF-NMM Standard Initialization (SI) Matthew Pyle 8 August 2006

IMPLEMENTATON OF SOUTHASIA CLIMATE ASSESSMET AND DASET (SACA&D) AT BMKG

Fast Edge Detection Using Structured Forests

Uniform Resource Locator Wide Area Network World Climate Research Programme Coupled Model Intercomparison

Why Was Arbil Written

Hyperion Interactive Reporting Reports & Dashboards Essentials

Release Presentation. ASAM Common MDF Version Measurement Data Format. Release Date: 2014 / 06 / 11

MAP ASPEN Training Manual. Navigate back to City of Aspen Home, GIS Home, Map Aspen Home or the Data Catalog from any page in the site.

OpenCDISC Validator 1.4 What s New?

Techdata Solution. SAS Analytics (Clinical/Finance/Banking)

SAS (Statistical Analysis Software/System)

HIRVDA(C2M) HIRVDA(MIN) HIRVDA(MDCO) HIRVDA(M2C)

Release Notes. This is BATON Standard version 7.2 for installation on Windows 64-bit platform.

Sami Saarinen Peter Towers. 11th ECMWF Workshop on the Use of HPC in Meteorology Slide 1

Transcription:

Using ODB at ECMWF Piotr Kuchta Sándor Kertész Development Section ECMWF Slide 1 MOS Workshop, 2013 November 18-20, ECMWF 1

History of ODB in a nutshell 1998 2008, Sami Saarinen Database of observations for 4D-Var IFS, parallel Fortran API, MPI Relational databases concepts: SQL for querying/filtering, DDL for schema definition Implementation: C and Fortran, SQL compiled to C 2008 now, Anne Fouilloux, Baudouin Raoult, Piotr Kuchta, Tomas Kral ODB feedback archiving in MARS, ODB Server New data format suitable for archiving OO, C++ library for encoding/decoding & SQL filtering (ODB API) new SQL engine: fast interpreter, no intermediate C code, can be extended to work with different data formats Slide 2 API: C++, C, Fortran, Python, command line tools Used by: MARS, ODB Server, Metview, Magics++, Obstat MOS Workshop, 2013 November 18-20, ECMWF 2

Observational data flow at ECMWF Slide 3 MOS Workshop, 2013 November 18-20, ECMWF 3

ODB Feedback archive MARS (server & client) extended to handle ODB data Flexible indexing and physical organization on disks/tapes allows for efficient retrieval and processing of long time series Any observational data can be identified with a single number: Report Type classification http://data-portal.ecmwf.int/odbgov/reporttype/ SQL filtering / transformations / statistics computations on the fly in MARS client Archive requests validated against data (both server and client) ODB feedback (TYPE=OFB) and Monitoring (active observations) (TYPE=MFB) archive operational since Nov 2011 http://www.ecmwf.int/services/archive/d/catalog Operational data > Deterministic forecasts > > Observations > MONDB feedback ODB feedback Slide 4 MOS Workshop, 2013 November 18-20, ECMWF 4

ODB Archive format New file format for tabular, numeric data Simple, well defined, machine independent, fast to encode and decode Self-described (meta data in header), handles data types of ODB Extendable: new codecs (compression alg.) can be added Small memory footprint needed to process large datasets (streaming) An ODB archive file represents a flat table Data layout: report oriented (one report stored in one row) Every column has: name, type (REAL, INTEGER, STRING, ), value of missing data indicator (NULL), codec (invisible to the user) Slide 5 MOS Workshop, 2013 November 18-20, ECMWF 5

ODB Archive format features (2) New data can be appended to existing files Efficient usage of storage medium (tapes) Can retrieve long time series in one request reptype class andate antime lat lon statid obsvalue 14 od 20090730 0 0.364777 0.986071 223 235.009995 14 od 20090730 0 0.367758 0.972175 223 235.949997 14 od 20090730 0 0.370347 0.959772 223 236.880005 reptype class andate antime lat lon satid sensor obsvalue 14 od 20090731 0 0.364777 0.986071 222 3 235.009995 14 od 20090731 0 0.367758 0.972175 222 3 235.949997 14 od 20090731 0 0.370347 0.959772 222 3 236.880005 Header MD Slide 6 Header MD Header MD Header MD MOS Workshop, 2013 November 18-20, ECMWF 6

MARS language extensions SQL incorporated into MARS syntax RETRIEVE, TYPE = OFB, OBSGROUP = hirs, REPORTYPE = 13, DATE = 20110728, TIME = 0, SENSOR = 0, FILTER = select * where distance(lat, lon, 0, 0) < km(50) and value > 375.2, TARGET = "ECMA.hirs.13.odb" Slide 7 SQL engine used for filtering on the client MOS Workshop, 2013 November 18-20, ECMWF 7

ODB API SQL examples Which station identifiers are in the ODB file? $ odb sql 'select distinct statid' -i $odbfile How many manual land SYNOP reports? $ odb sql 'select count(*) where reportype=16002' -i $odbfile Count the number of temperature records per station identifier, where the observation values are not missing. Sort by the count. $ odb sql 'select count(*), statid where varno=2 and obsvalue is not Slide 8 NULL order by 1' -i $odbfile MOS Workshop, 2013 November 18-20, ECMWF 8

C++ and Python API examples C++ API based on concept of iterators, mimics STL containers string sql = "select lat, lon, obsvalue from \"in.odb\"" " where obsvalue > 0.5 "; odb::select sel(sql); for (odb::select::iterator it = sel.begin(); it!= sel.end(); ++it) cout << it->data(0) << " " << it->data(1) << " << it->data(2) << endl; odb::reader reader("file.odb"); for (odb::reader::iterator it = reader.begin(); it!= reader.end(); ++it) cout << it->data(0) << " " << it->data(1) << " << it->data(2) << endl; Python import odb for r in odb.open('conv.odb'): print r['lat','lon','obsvalue'] Slide 9 MOS Workshop, 2013 November 18-20, ECMWF 9

Tools for working with ODB data Command line tools available via odb binary Execute SQL SELECT and print results to standard output or save in a new ODB file Examine meta data of a file (odb header) Split data so e.g. data coming from one station, report type, satellite id, etc, is saved in a separate file Compare two ODB files Import data from a text file (CSV) Merge two or more files row by row Describe data on file in MARS language syntax (oda2request) Metview, Magics++, Obstat Slide 10 MOS Workshop, 2013 November 18-20, ECMWF 10

Plans for ODB development Parallel (MPI/OpenMP) functionality will be redeveloped in C++ Further development and improvements of SQL engine and other functionality as required by users, COPE (Continous Observation Processing) OOPS (Object Oriented Prediction System) MARS Metview Magics++ OPS (Met Office) Slide 11 MOS Workshop, 2013 November 18-20, ECMWF 11

ODB Support in Metview Inspect data and metadata ODB Filter MARS Retrieval ODB Database ODB Visualiser Slide 12 Macro MOS Workshop, 2013 November 18-20, ECMWF 12

Examine ODB Metadata and Data Right-click Examine Slide 13 Data values Metadata structure MOS Workshop, 2013 November 18-20, ECMWF 13

Visualising ODB Data Slide 14 MOS Workshop, 2013 November 18-20, ECMWF 14

Statistics for the Visualised ODB Data Sidebar with various tabs Slide 15 MOS Workshop, 2013 November 18-20, ECMWF 15

Inspecting Data Values Data Probe Slide 16 MOS Workshop, 2013 November 18-20, ECMWF 16

Overlay with Other Data Types ODB: Scatterometer wind GRIB: IFS MSLP analysis Slide 17 WMS: map image from NASA MOS Workshop, 2013 November 18-20, ECMWF 17

Plans for the Metview ODB interface Time series support Provide contouring for ODB data Visualise ODB data in thermodynamic diagrams Slide 18 MOS Workshop, 2013 November 18-20, ECMWF 18

For more information ODB API https://software.ecmwf.int/wiki/display/odb/odb-api (soon) Email to: peter.kuchta@ecmwf.int Metview https://software.ecmwf.int/metview Email to: metview@ecmwf.int Slide 19 MOS Workshop, 2013 November 18-20, ECMWF 19