SlideShare a Scribd company logo
1 of 11
GDAL
Enhancement for
ESDIS project
JOE LEE @ THE HDF GROUP
JOHN ALLENDORF & BIRAN TISDALE @ ASDC
What is GDAL?
• Geospatial Data Abstraction Library
• Free and Open Source
• 226+ drivers for various formats: HDF / GeoTIFF / netCDF
• Powered by GDAL: ArcGIS QGIS GeoServer MapServer
Why Enhancement?
MANY NASA EOS DATA PRODUCTS ARE CHALLENGING TO
CONSUME BY GIS TOOLS.
Image Displayed Inverted
MOP03TM.005 (HDF4): Retrieved Surface Temperature Night
Missing Geo-Reference & 90 Degree Rotated
MOP03TM.006 (HDF5): A Priori Surface Temperature Night
GDAL Enhancement History
• Phase I (PoC): ArcGIS Plugin + Product-specific HDF Drivers
• Phase II (Generalization): HDF Drivers + XML (custom)
• Phase III (Collaboration): HDF Drivers + VRT
GEE Phase III: Highlights
• Enhanced the generic functions completed in Phase II
• Coordination with the GDAL development team
• Tested functionality across other clients
• Conducted outreach to other DAACs & Esri
• Built content for tutorials and training packages
Enhanced the generic functions
• Bug fixes
• 3D+ data support
• Flexible dimension order
Coordination with the GDAL team
• Open source license
• Coding standards
• VRT OpenOptions
• Patch on the latest source from GitHub
Tested functionality across other clients
• ArGIS Explorer Desktop / QGIS
• OPeNDAP Hyrax GDAL Handler*
• R (rgdal)
• GDAL Python (including autotesting)
*has some issues in geo-ref.
Conducted outreach to other DAACs & Esri
• GSFC:Tested GEE with SMAP products
• Esri: ConfirmedVRT support
Built content for training and tutorials
● GEE Public User Guide
● https://wiki.earthdata.nasa.gov/pages/viewpage.action?pageId=73142552
● How OpenOptions tag inVRT is processed
● https://wiki.earthdata.nasa.gov/display/GEE/How+OpenOptions+tag+in+VRT+is+processed
● How to serve HDF with OPeNDAP GDAL Handler
● https://wiki.earthdata.nasa.gov/display/GEE/How+to+serve+HDF+with+OPeNDAP+GDAL+Handler
● How to install GEE Python
● https://wiki.earthdata.nasa.gov/display/GEE/How+to+install+GEE+Python
● How to install GEE R
● https://wiki.earthdata.nasa.gov/display/GEE/How+to+install+GEE+R
● How to run auto testing
● https://wiki.earthdata.nasa.gov/display/GEE/How+to+run+auto+testing
Future Work
• Validation: Cross check with http://hdfeos.org/zoo examples.
• Maintenance: Resolve license issue and commit to the official GDAL
master branch.
• Updates: Identify common needs from DAACs and end-users and
add them as OpenOption functions.
• Improvements: Bug fix forTRMM products and HDF5 chunked data

More Related Content

What's hot

Using GDAL In Your GIS Workflow
Using GDAL In Your GIS WorkflowUsing GDAL In Your GIS Workflow
Using GDAL In Your GIS WorkflowGerry James
 

What's hot (20)

HDF Update 2016
HDF Update 2016HDF Update 2016
HDF Update 2016
 
HDF Product Designer
HDF Product DesignerHDF Product Designer
HDF Product Designer
 
HDF5 Performance Enhancements with the Elimination of Unlimited Dimension
HDF5 Performance Enhancements with the Elimination of Unlimited DimensionHDF5 Performance Enhancements with the Elimination of Unlimited Dimension
HDF5 Performance Enhancements with the Elimination of Unlimited Dimension
 
Geospatial Data Abstraction Library (GDAL) Enhancement for ESDIS (GEE)
Geospatial Data Abstraction Library (GDAL) Enhancement for ESDIS (GEE)Geospatial Data Abstraction Library (GDAL) Enhancement for ESDIS (GEE)
Geospatial Data Abstraction Library (GDAL) Enhancement for ESDIS (GEE)
 
MATLAB and Scientific Data: New Features and Capabilities
MATLAB and Scientific Data: New Features and CapabilitiesMATLAB and Scientific Data: New Features and Capabilities
MATLAB and Scientific Data: New Features and Capabilities
 
HDF Product Designer: Using Templates to Achieve Interoperability
HDF Product Designer: Using Templates to Achieve InteroperabilityHDF Product Designer: Using Templates to Achieve Interoperability
HDF Product Designer: Using Templates to Achieve Interoperability
 
Product Designer Hub - Taking HPD to the Web
Product Designer Hub - Taking HPD to the WebProduct Designer Hub - Taking HPD to the Web
Product Designer Hub - Taking HPD to the Web
 
Utilizing HDF4 File Content Maps for the Cloud Computing
Utilizing HDF4 File Content Maps for the Cloud ComputingUtilizing HDF4 File Content Maps for the Cloud Computing
Utilizing HDF4 File Content Maps for the Cloud Computing
 
Efficiently serving HDF5 via OPeNDAP
Efficiently serving HDF5 via OPeNDAPEfficiently serving HDF5 via OPeNDAP
Efficiently serving HDF5 via OPeNDAP
 
Incorporating ISO Metadata Using HDF Product Designer
Incorporating ISO Metadata Using HDF Product DesignerIncorporating ISO Metadata Using HDF Product Designer
Incorporating ISO Metadata Using HDF Product Designer
 
NEON HDF5
NEON HDF5NEON HDF5
NEON HDF5
 
HDF Project Update
HDF Project UpdateHDF Project Update
HDF Project Update
 
ArcGIS and Multi-D: Tools & Roadmap
ArcGIS and Multi-D: Tools & RoadmapArcGIS and Multi-D: Tools & Roadmap
ArcGIS and Multi-D: Tools & Roadmap
 
NASA Terra Data Fusion
NASA Terra Data FusionNASA Terra Data Fusion
NASA Terra Data Fusion
 
SPD and KEA: HDF5 based file formats for Earth Observation
SPD and KEA: HDF5 based file formats for Earth ObservationSPD and KEA: HDF5 based file formats for Earth Observation
SPD and KEA: HDF5 based file formats for Earth Observation
 
Using GDAL In Your GIS Workflow
Using GDAL In Your GIS WorkflowUsing GDAL In Your GIS Workflow
Using GDAL In Your GIS Workflow
 
Bridging ICESat and ICESat-2 Standard Data Products
Bridging ICESat and ICESat-2 Standard Data ProductsBridging ICESat and ICESat-2 Standard Data Products
Bridging ICESat and ICESat-2 Standard Data Products
 
HDF and netCDF Data Support in ArcGIS
HDF and netCDF Data Support in ArcGISHDF and netCDF Data Support in ArcGIS
HDF and netCDF Data Support in ArcGIS
 
HDF-EOS 2/5 to netCDF Converter
HDF-EOS 2/5 to netCDF ConverterHDF-EOS 2/5 to netCDF Converter
HDF-EOS 2/5 to netCDF Converter
 
Data Are from Mars, Tools Are from Venus
Data Are from Mars, Tools Are from VenusData Are from Mars, Tools Are from Venus
Data Are from Mars, Tools Are from Venus
 

Similar to GDAL Enhancement for ESDIS Project

Geospatial web services using little-known GDAL features and modern Perl midd...
Geospatial web services using little-known GDAL features and modern Perl midd...Geospatial web services using little-known GDAL features and modern Perl midd...
Geospatial web services using little-known GDAL features and modern Perl midd...Ari Jolma
 
Rapid Application Development on Google App Engine for Java
Rapid Application Development on Google App Engine for JavaRapid Application Development on Google App Engine for Java
Rapid Application Development on Google App Engine for JavaKunal Dabir
 
Geant4 physics validation on the GRID
Geant4 physics validation on the GRIDGeant4 physics validation on the GRID
Geant4 physics validation on the GRIDGeorge Lestaris
 
Building the Web with Gradle
Building the Web with GradleBuilding the Web with Gradle
Building the Web with GradleEric Wendelin
 
HBaseCon2017 Apache HBase at Didi
HBaseCon2017 Apache HBase at DidiHBaseCon2017 Apache HBase at Didi
HBaseCon2017 Apache HBase at DidiHBaseCon
 
State of Big Data on ARM64 / AArch64 - Apache Bigtop
State of Big Data on ARM64 / AArch64 - Apache BigtopState of Big Data on ARM64 / AArch64 - Apache Bigtop
State of Big Data on ARM64 / AArch64 - Apache BigtopGanesh Raju
 
CartoDB Inside Out
CartoDB Inside OutCartoDB Inside Out
CartoDB Inside OutJorge Sanz
 
Gerrit + Jenkins = Continuous Delivery For Big Data
Gerrit + Jenkins = Continuous Delivery For Big DataGerrit + Jenkins = Continuous Delivery For Big Data
Gerrit + Jenkins = Continuous Delivery For Big DataStefano Galarraga
 
Ozri 2013 Brisbane, Australia - Geodatabase Efficiencies
Ozri 2013 Brisbane, Australia - Geodatabase EfficienciesOzri 2013 Brisbane, Australia - Geodatabase Efficiencies
Ozri 2013 Brisbane, Australia - Geodatabase EfficienciesWalter Simonazzi
 
PEARC17: Modernizing GooFit: A Case Study
PEARC17: Modernizing GooFit: A Case StudyPEARC17: Modernizing GooFit: A Case Study
PEARC17: Modernizing GooFit: A Case StudyHenry Schreiner
 
The journey of Moving from AWS ELK to GCP Data Pipeline
The journey of Moving from AWS ELK to GCP Data PipelineThe journey of Moving from AWS ELK to GCP Data Pipeline
The journey of Moving from AWS ELK to GCP Data PipelineRandy Huang
 
Gocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous DeploymentGocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous DeploymentLeandro Totino Pereira
 
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Gabriele Bartolini
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RDaniel Nüst
 

Similar to GDAL Enhancement for ESDIS Project (20)

HDF-EOS Data Product Developer's Guide
HDF-EOS Data Product Developer's GuideHDF-EOS Data Product Developer's Guide
HDF-EOS Data Product Developer's Guide
 
Geospatial web services using little-known GDAL features and modern Perl midd...
Geospatial web services using little-known GDAL features and modern Perl midd...Geospatial web services using little-known GDAL features and modern Perl midd...
Geospatial web services using little-known GDAL features and modern Perl midd...
 
Rapid Application Development on Google App Engine for Java
Rapid Application Development on Google App Engine for JavaRapid Application Development on Google App Engine for Java
Rapid Application Development on Google App Engine for Java
 
Geant4 physics validation on the GRID
Geant4 physics validation on the GRIDGeant4 physics validation on the GRID
Geant4 physics validation on the GRID
 
HDF Update
HDF UpdateHDF Update
HDF Update
 
Building the Web with Gradle
Building the Web with GradleBuilding the Web with Gradle
Building the Web with Gradle
 
HBaseCon2017 Apache HBase at Didi
HBaseCon2017 Apache HBase at DidiHBaseCon2017 Apache HBase at Didi
HBaseCon2017 Apache HBase at Didi
 
State of Big Data on ARM64 / AArch64 - Apache Bigtop
State of Big Data on ARM64 / AArch64 - Apache BigtopState of Big Data on ARM64 / AArch64 - Apache Bigtop
State of Big Data on ARM64 / AArch64 - Apache Bigtop
 
CartoDB Inside Out
CartoDB Inside OutCartoDB Inside Out
CartoDB Inside Out
 
Gerrit + Jenkins = Continuous Delivery For Big Data
Gerrit + Jenkins = Continuous Delivery For Big DataGerrit + Jenkins = Continuous Delivery For Big Data
Gerrit + Jenkins = Continuous Delivery For Big Data
 
Ozri 2013 Brisbane, Australia - Geodatabase Efficiencies
Ozri 2013 Brisbane, Australia - Geodatabase EfficienciesOzri 2013 Brisbane, Australia - Geodatabase Efficiencies
Ozri 2013 Brisbane, Australia - Geodatabase Efficiencies
 
HDF Update
HDF UpdateHDF Update
HDF Update
 
PEARC17: Modernizing GooFit: A Case Study
PEARC17: Modernizing GooFit: A Case StudyPEARC17: Modernizing GooFit: A Case Study
PEARC17: Modernizing GooFit: A Case Study
 
The journey of Moving from AWS ELK to GCP Data Pipeline
The journey of Moving from AWS ELK to GCP Data PipelineThe journey of Moving from AWS ELK to GCP Data Pipeline
The journey of Moving from AWS ELK to GCP Data Pipeline
 
Glusterfs and Hadoop
Glusterfs and HadoopGlusterfs and Hadoop
Glusterfs and Hadoop
 
HDF Update
HDF UpdateHDF Update
HDF Update
 
Gocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous DeploymentGocd – Kubernetes/Nomad Continuous Deployment
Gocd – Kubernetes/Nomad Continuous Deployment
 
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
 
HDF5 OPeNDAP project update and demo
HDF5 OPeNDAP project update and demoHDF5 OPeNDAP project update and demo
HDF5 OPeNDAP project update and demo
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with R
 

More from The HDF-EOS Tools and Information Center

STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...The HDF-EOS Tools and Information Center
 

More from The HDF-EOS Tools and Information Center (20)

Cloud-Optimized HDF5 Files
Cloud-Optimized HDF5 FilesCloud-Optimized HDF5 Files
Cloud-Optimized HDF5 Files
 
Accessing HDF5 data in the cloud with HSDS
Accessing HDF5 data in the cloud with HSDSAccessing HDF5 data in the cloud with HSDS
Accessing HDF5 data in the cloud with HSDS
 
The State of HDF
The State of HDFThe State of HDF
The State of HDF
 
Highly Scalable Data Service (HSDS) Performance Features
Highly Scalable Data Service (HSDS) Performance FeaturesHighly Scalable Data Service (HSDS) Performance Features
Highly Scalable Data Service (HSDS) Performance Features
 
Creating Cloud-Optimized HDF5 Files
Creating Cloud-Optimized HDF5 FilesCreating Cloud-Optimized HDF5 Files
Creating Cloud-Optimized HDF5 Files
 
HDF5 OPeNDAP Handler Updates, and Performance Discussion
HDF5 OPeNDAP Handler Updates, and Performance DiscussionHDF5 OPeNDAP Handler Updates, and Performance Discussion
HDF5 OPeNDAP Handler Updates, and Performance Discussion
 
Hyrax: Serving Data from S3
Hyrax: Serving Data from S3Hyrax: Serving Data from S3
Hyrax: Serving Data from S3
 
Accessing Cloud Data and Services Using EDL, Pydap, MATLAB
Accessing Cloud Data and Services Using EDL, Pydap, MATLABAccessing Cloud Data and Services Using EDL, Pydap, MATLAB
Accessing Cloud Data and Services Using EDL, Pydap, MATLAB
 
HDF - Current status and Future Directions
HDF - Current status and Future DirectionsHDF - Current status and Future Directions
HDF - Current status and Future Directions
 
HDFEOS.org User Analsys, Updates, and Future
HDFEOS.org User Analsys, Updates, and FutureHDFEOS.org User Analsys, Updates, and Future
HDFEOS.org User Analsys, Updates, and Future
 
HDF - Current status and Future Directions
HDF - Current status and Future Directions HDF - Current status and Future Directions
HDF - Current status and Future Directions
 
H5Coro: The Cloud-Optimized Read-Only Library
H5Coro: The Cloud-Optimized Read-Only LibraryH5Coro: The Cloud-Optimized Read-Only Library
H5Coro: The Cloud-Optimized Read-Only Library
 
MATLAB Modernization on HDF5 1.10
MATLAB Modernization on HDF5 1.10MATLAB Modernization on HDF5 1.10
MATLAB Modernization on HDF5 1.10
 
HDF for the Cloud - Serverless HDF
HDF for the Cloud - Serverless HDFHDF for the Cloud - Serverless HDF
HDF for the Cloud - Serverless HDF
 
HDF5 <-> Zarr
HDF5 <-> ZarrHDF5 <-> Zarr
HDF5 <-> Zarr
 
HDF for the Cloud - New HDF Server Features
HDF for the Cloud - New HDF Server FeaturesHDF for the Cloud - New HDF Server Features
HDF for the Cloud - New HDF Server Features
 
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
 
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
 
HDF5 and Ecosystem: What Is New?
HDF5 and Ecosystem: What Is New?HDF5 and Ecosystem: What Is New?
HDF5 and Ecosystem: What Is New?
 
HDF5 Roadmap 2019-2020
HDF5 Roadmap 2019-2020HDF5 Roadmap 2019-2020
HDF5 Roadmap 2019-2020
 

Recently uploaded

Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

GDAL Enhancement for ESDIS Project

  • 1. GDAL Enhancement for ESDIS project JOE LEE @ THE HDF GROUP JOHN ALLENDORF & BIRAN TISDALE @ ASDC
  • 2. What is GDAL? • Geospatial Data Abstraction Library • Free and Open Source • 226+ drivers for various formats: HDF / GeoTIFF / netCDF • Powered by GDAL: ArcGIS QGIS GeoServer MapServer
  • 3. Why Enhancement? MANY NASA EOS DATA PRODUCTS ARE CHALLENGING TO CONSUME BY GIS TOOLS. Image Displayed Inverted MOP03TM.005 (HDF4): Retrieved Surface Temperature Night Missing Geo-Reference & 90 Degree Rotated MOP03TM.006 (HDF5): A Priori Surface Temperature Night
  • 4. GDAL Enhancement History • Phase I (PoC): ArcGIS Plugin + Product-specific HDF Drivers • Phase II (Generalization): HDF Drivers + XML (custom) • Phase III (Collaboration): HDF Drivers + VRT
  • 5. GEE Phase III: Highlights • Enhanced the generic functions completed in Phase II • Coordination with the GDAL development team • Tested functionality across other clients • Conducted outreach to other DAACs & Esri • Built content for tutorials and training packages
  • 6. Enhanced the generic functions • Bug fixes • 3D+ data support • Flexible dimension order
  • 7. Coordination with the GDAL team • Open source license • Coding standards • VRT OpenOptions • Patch on the latest source from GitHub
  • 8. Tested functionality across other clients • ArGIS Explorer Desktop / QGIS • OPeNDAP Hyrax GDAL Handler* • R (rgdal) • GDAL Python (including autotesting) *has some issues in geo-ref.
  • 9. Conducted outreach to other DAACs & Esri • GSFC:Tested GEE with SMAP products • Esri: ConfirmedVRT support
  • 10. Built content for training and tutorials ● GEE Public User Guide ● https://wiki.earthdata.nasa.gov/pages/viewpage.action?pageId=73142552 ● How OpenOptions tag inVRT is processed ● https://wiki.earthdata.nasa.gov/display/GEE/How+OpenOptions+tag+in+VRT+is+processed ● How to serve HDF with OPeNDAP GDAL Handler ● https://wiki.earthdata.nasa.gov/display/GEE/How+to+serve+HDF+with+OPeNDAP+GDAL+Handler ● How to install GEE Python ● https://wiki.earthdata.nasa.gov/display/GEE/How+to+install+GEE+Python ● How to install GEE R ● https://wiki.earthdata.nasa.gov/display/GEE/How+to+install+GEE+R ● How to run auto testing ● https://wiki.earthdata.nasa.gov/display/GEE/How+to+run+auto+testing
  • 11. Future Work • Validation: Cross check with http://hdfeos.org/zoo examples. • Maintenance: Resolve license issue and commit to the official GDAL master branch. • Updates: Identify common needs from DAACs and end-users and add them as OpenOption functions. • Improvements: Bug fix forTRMM products and HDF5 chunked data

Editor's Notes

  1. (20 min. About 2 min per slide. ) Hi, my name is Joe Lee and I’m a software engineer at the hdf group. This work is a joint effort with many people like John Allendorf and Brian Tisdale at NASA Atmospheric Science Data Center. Since Brian is the main driver of this project so he should have presented this. Unfortunately, he could not come to ESIP meeting so I’ll present GEE. GEE name is perfect.
  2. Unless you are a person from Geo-spatial user community, you may not have heard of GDAL. Thus, let me explain What GDAL is. GDAL is Geospatial Data Abstraction Library. Here, the key is in “A”, “Abstraction”. Although is ‘L’ stands for library, GDAL comes with a set of tools. The most famous tool is gdal_translate because it can convert one data format into another through abstraction. It is free and open source written in C++. It also comes with Python binding for python users. GDAL includes more than 226 drivers for diverse data formats. The list of supported drivers keeps increasing. I was surprised to know that GDAL provides a driver for Elasticsearch. GDAL is indispensable like water for Geospatial community because famous tools and services like ArcGIS and MapServer are powered by GDAL.
  3. If GDAL is such powerful library, why does it need enhancement? If you have used GDAL or GDAL-based tools with an arbitrary NASA Earthdata, you may have encountered some problems. For example, if you search GIS Stackexchange with keyword GDAL and HDF, you will get more than 100 questions. The screenshots illustrate the typical symptoms when users open ASDC MOPITT products. On the left, you can see that image is upside down. On the right, image is rotated 90 degree. It is gridded data so width must be larger than the height. In fact these are quite successful case because it is grid. If you have swath and trajectory data GIS tools simply give up saying there’s no dataset to visualize. Users may wonder what could be wrong? Tool or data? In fact, the problem lies in abstraction layer.
  4. NASA ESDIS and ASDC was aware of this issue and they started a new venture to help GIS community 3 years ago. Here’s the brief history of our venture. During the first phase in 2014, GMU, Esri and The HDF Group formed a team to develop a ArcGIS Plugin that works for a few ASDC products. During the second phase in 2015, we generalized the patches made for ArcGIS. Instead of creating solution that works only for ArcGIS, we tackled the GDAL directly so other free and open source tools can benefit from it. We modified HDF drivers in GDAL and we used a custom XML file to trigger different behaviors on some ASDC data products. During the third phase in 2016, we made an effort to make our patches official and become a part of GDAL development team. I’ll focus on our latest effort for the rest of talk.
  5. Here are highlights from last year’s work. We enhanced … We contacted the official GDAL team. We tested our new functionalities across other clients. We asked We built contents for tutorials and training packages.
  6. Let’s go over specifics on each highlight. First, we enhanced the generic functions. Phase II effort left a few bugs and we fixed them. Second, we allowed 4D and 5D dataset for HDF4 products. GDAL’s abstraction is 2D spatial. Any extra dimension is treated as multi-band. Finally, HDF doesn’t prescribe dimension order. That is the first dimension can be latitude and the second dimension can be longitude. They can be reversed if data producer wants. However, the existing GDAL HDF drivers wanted X dimension first and then latitude dimension.
  7. Since we wanted to share our code with GDAL main developer, we contacted the maintainer and got some responses. He mentioned a few things to be a committer. His primary concern was open source license. He asked us to write a good code following their coding standards. He gave a great of advice of using VRT. We are back on the right track with VRT. VRT is getting powerful as it allows user to insert Python code snippet in PixelFunctionCode element. The last suggestion was to use the latest source only.
  8. Both ArcGIS Explorer Desktop and QGIS were able to handle VRT. Out of curiosity, we tested the Hyrax GDAL handler whether it can support VRT. For the same HDF data, it could be served by either HDF handler or GDAL handler. We also tested it with rgdal because R doesn’t provide an easy way to access HDF4 products. During this process, we learned that rgdal cannot handle OpenOption properly and rgdal maintainer fixed the problem immediately. GDAL handler should change CF unit of latitude to degrees_south by processing UpperLeft and LowerRight corner metadata in VRT properly. Finally, GDAL python was tested because GDAL uses Python for autotesting.
  9. GSFC showed a great interest in our work because they had trouble in converting SMAP data products into GeoTIFF. We asked the status of VRT support in ArcGIS. VRT is very powerful mechanism to correct simple problem and can be used to modify the behavior of drivers.
  10. If you want to try GEE, user guide has many examples. We also provide how OpenOption in VRT works. If you dare to fix your model mismatch problem between your HDF model and GDAL raster model through OpenOption, I recommend you to read this. Serving HDF data via Hyrax GDAL driver needs some tricks. They can be found in the document. If you want to have R/Python interface powered by GEE, we provide installation guide as well. We also provide some auto-testing with real NASA data products. If you want to run autotest, please read the document.
  11. Although we finished Phase III, I still think it’s just beginning because NASA ESDIS has so many data products already and new ones are coming. Some people may argue that netCDF is the anwer but I think netCDF GDAL handler may have some limitaitions because I could see 150+ results from GIS stack exchange. GEE project is a gateway for NASA HDF Earth data to penetrate GIS user community. We hope that more users and data producers test their data products with GEE and contribute common functions to be added. Then, we can keep adding more OpenOption functions and distribute them through the official GDAL channel. We believe that GEE is the most cost-effective way for both tool developers, data producers, and end-users.