FME Process Optimisation at the Ordnance
Survey Great Britain
An exercise in best practice
david.eagle@1spatial.com
Principal Consultant
FME Certified Professional & Trainer
1Spatial
Agenda
•  The Ordnance Survey
•  The Object Editor Adapter
•  Project Goals
•  FME as a Test Harness
•  Deploying ‘Best Practice’ in FME
•  Tips and tricks
•  Project Benefits
2	
  
Ordnance Survey - Then
3	
  
•  The original ‘Board of Ordnance’, MOD of the day
•  Started survey work in the late 1700s
•  Comprehensively mapped the south coast to be able to effectively
repel invasion
•  http://goo.gl/02tVFZ
Lands End,
Mount's Bay,
Cornwall
*
Ordnance Survey - Now
4	
  
•  Self financing part of the UK government
•  £120-million-a-year civilian organisation
•  At the forefront of the digital economy
•  Remit covers Great Britain (England, Scotland
and Wales)
•  243,241 sq km / 93,956 sq miles
•  Integrated data capture for field surveyors,
HQ-based editors, and external suppliers
*
Geospatial Data Management
System (GDMS)
•  Seamless data maintenance solution
•  Intelligent and integrated maintenance data model
•  Allows separation of product data
•  Includes automated data validation
•  Platform for new product development
•  650+ data editors
•  500+ million features
•  4,000 data maintenance jobs per day
*
GDMS – Production
*
GDMS – Production Architecture
•  Includes best of breed COTS components from
•  1Spatial
•  BAE Systems
•  ESRI
•  Intergraph
•  Microsoft
•  Oracle
•  Safe Software
•  Snowflake Software
•  Scalable infrastructure
•  Disconnected editing thanks to the ‘Object Editor Adapter’
*
Object Editor Adapter
8	
  
•  Transforms data into a structure usable in the Object Editor map
application
•  FME underpins the transformation
•  Schema is manipulated into ‘understandable’ structure from the
database
GML
OEA
(FME)
PGDB
*
Project Goals
9	
  
1.  Document process and make maintenance practical
•  Schema changes pending
•  Component needed to be better understood
2.  Upgrade process to FME 2013 (look beyond 2013)
•  Built with FME 2009
•  Utilise recent FME enhancements
3.  Improve efficiency & performance
•  Remove redundancy
“If it ain’t broke…”
10	
  
•  Huge amount of change in FME since 2009
•  Attribute management particular interest
•  OS needed to unpick the workspace to be
able to update it anyway
•  Workspace opening time was slow,
impacting batch run time and FME Server
–  3 minutes
–  c.60mb (most *.fmw don’t exceed a few 100kb)
•  Quite a few transformers…
Transformers, transformers
everywhere
11	
  
•  943
–  Custom Transformer(s) = 255
–  AttributeRenamer = 211
–  Tester = 150
–  AttributeRemover = 87
–  AttributeCreator = 51
–  ListExploder = 72
–  CaseChanger = 21
–  ListElementCounter = 18
–  AttributeSplitter = 12
–  AttributeSetter = 10
–  ListIndexer = 9
–  AttributeCopier = 8
What is a ‘Test Harness’?
12	
  
In software testing, a test harness or automated test framework
is a collection of software and test data
configured to test a program unit
by running it under varying conditions
and monitoring its behaviour and outputs.
Wikipedia
Using FME as a ‘Test Harness’
13	
  
•  The process had to change but the data must not!
•  FME to check the old process against the new
•  Controlled via a spreadsheet, a WorkspaceRunner and Published
Parameters
GML	
  
PGDB	
  
OLD
PGDB	
  
NEW
Detect
Change
Failures:
Spreadsheets and
Geometry
*
14	
  
Dynamic Schema
15	
  
•  Introduced around FME 2009
–  Existing process didn’t use it
•  Enable ‘Dynamic’ schema mode
–  Whatever schema is read, gets written
–  Decouple schema from format
•  http://blog.safe.com/2010/02/fmeevangelist54/
Dynamic Schema
16	
  
•  96 input layers can be reduced to 1!
–  Magic Transformer = FeatureTypeExtractor
–  Workspace infinitely less daunting
Reduce Transformer
Duplication
17	
  
•  Helped by Dynamic Schema Mode
•  Try not to duplicate operations
Reduce Transformer
Duplication
18	
  
•  ‘Like’ operations carried out on all features
–  Filter features off to unique processes when needed
•  20% of data had a ‘Level’
–  21 CaseChangers used to apply UPPERCASE
–  Replaced with 1 StringCaseChanger
•  69 Custom Transformers with embedded Python used to
format Date attributes
–  All features passed through a StringReplacer to remove hyphens
•  2013-01-01 to 20130101
Reduce Transformer
Duplication
19	
  
Custom Transformers
20	
  
•  What?
•  A container for many regular transformers
•  Allows a common set of tasks to be reused in 1 or many
workspaces
•  When exported becomes an *.FMX file for sharing
•  The FME Store was introduced in 2012
–  2014 FME Store mature with 130+ transformers (and other resources)
•  http://fmestore.safe.com
•  http://fmepedia.safe.com/articles/Samples_and_Demos/Custom-Transformer-
KMLDiagrammer
•  It’s increasingly likely your workspaces will contain Store resources
•  FME now auto connects & downloads any resources required
Custom Transformers
21	
  
•  Support for versioning
•  Ports are not disconnected when renamed
–  http://blog.safe.com/2013/12/fmeevangelist121/
•  Embed/link all instances of a given transformer
•  Manage input and output schema on Custom Transformers
Custom Transformers 2014
22	
  
•  14 unique custom transformers used 255 times
•  PGDB had constraints, many tables did not allow null values
–  Custom transformers tested and removed null attributes
–  Thanks to Generic mode expose constrained attributes and pass through a
PythonCaller to remove the null attributes
•  FME 2014
Use Custom Transformers
Effectively
23	
  
Schema Mapping
24	
  
•  Attribute names are hardcoded into 211 AttributeRenamers
in the workspace
–  Changes to target schema means attribute hunting!
–  Biggest challenge for ongoing maintenance
•  1x SchemaMapper replaces all AttributeRenamers
–  Non-FME user can alter the process by editing
AttributeMapping.csv
Documentation
25	
  
•  Always document your Workspace
•  The OEA process was documented
–  But didn’t include detailed explanations ‘why’
•  You should be able to read a Workspace and understand it
–  Highlight dependencies and use XML notation for naming
•  In 2014 canvas annotations taken to the next level
Documentation – Self contained
26	
  
Before and After
27	
  
Benefits
28	
  
Before After Improvement
Time to open (from local disk) 2mins 12secs 31secs 1min 41secs
File size 56mb 13.8mb 75% reduction
Lines of machine written code 450,332 111,334 75% reduction
Number of transformers 943 336 64% fewer
Sample run time 1hr 7mins 48mins 19mins
•  Current, documented and ‘owned’ by the Ordnance Survey
•  Robust production extraction routine
•  Simpler to maintain and change
–  Some schema changes possible without opening FME!
29	
  
	

david.eagle@1spatial.com
Principal Consultant
FME Certified Professional & Trainer
1Spatial

More Related Content

PPTX
QBM Dash Board
PPTX
C-MR: Continuously Executing MapReduce Workflows on Multi-Core Processors
PDF
Transaction solution-manager-setup-jim-baxter
PDF
SAP Post Copy Automation
PPTX
Presentation outline
PDF
[Altibase] 10 replication part3 (system design)
PDF
SAP LVM Integration with SAP BPA
PDF
SAP ASE Migration Lessons Learned
QBM Dash Board
C-MR: Continuously Executing MapReduce Workflows on Multi-Core Processors
Transaction solution-manager-setup-jim-baxter
SAP Post Copy Automation
Presentation outline
[Altibase] 10 replication part3 (system design)
SAP LVM Integration with SAP BPA
SAP ASE Migration Lessons Learned

Similar to Process Optimisation at the Ordnance Survey Great Britain (20)

PDF
Dynamic Workspaces Demystified: Your Path to Streamlined Data Management
PDF
Dynamic Workspaces Demystified: Your Path to Streamlined Data Management
PDF
Getting Started with Data Integration: FME Desktop
PDF
Webinar Getting Started with FME Desktop: Your Burning Questions Answered
PPTX
Unveiling FME 2013
PDF
Getting Started with Data Integration: FME Form 101
PPTX
Turbocharging FME: How to Improve the Performance of Your FME Workspaces
PDF
Safer’s Picks: The 6 FME Transformers You Didn’t Know You Needed
PPTX
Using FME to support open data initiatives and INSPIRE
PDF
Finns Using FME Like Crazy
PPT
Oracle Database -- How to Improve Interoperability using FME
PDF
FME:23 for the Enterprise - A Deep Dive into Key New Features
PDF
FME and Complex GML
PDF
What I Learned from Optimizing Workspaces through Many Years
PDF
Marrying FME & ArcGIS: Automating GIS Workflows for Maximum Efficiency
PDF
Your Data Eco System and FME
PPTX
Présentation du FME World Tour 2018 à Montréal
PDF
Lifting the Hood of FME Engine 2022.0
PPTX
Managing data interoperability with FME
PDF
Back to FME School - Day 1: Your Data and FME
Dynamic Workspaces Demystified: Your Path to Streamlined Data Management
Dynamic Workspaces Demystified: Your Path to Streamlined Data Management
Getting Started with Data Integration: FME Desktop
Webinar Getting Started with FME Desktop: Your Burning Questions Answered
Unveiling FME 2013
Getting Started with Data Integration: FME Form 101
Turbocharging FME: How to Improve the Performance of Your FME Workspaces
Safer’s Picks: The 6 FME Transformers You Didn’t Know You Needed
Using FME to support open data initiatives and INSPIRE
Finns Using FME Like Crazy
Oracle Database -- How to Improve Interoperability using FME
FME:23 for the Enterprise - A Deep Dive into Key New Features
FME and Complex GML
What I Learned from Optimizing Workspaces through Many Years
Marrying FME & ArcGIS: Automating GIS Workflows for Maximum Efficiency
Your Data Eco System and FME
Présentation du FME World Tour 2018 à Montréal
Lifting the Hood of FME Engine 2022.0
Managing data interoperability with FME
Back to FME School - Day 1: Your Data and FME
Ad

More from Safe Software (20)

PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
PDF
Infrastructure planning and resilience - Keith Hastings.pptx.pdf
PDF
Notification System for Construction Logistics Application
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
PDF
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
PDF
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
PDF
FME in Overdrive - Peak of Data & AI 2025
PDF
Powering GIS with FME and VertiGIS - Peak of Data & AI 2025
PDF
Pipeline Industry IoT - Real Time Data Monitoring
PDF
FME in Overdrive: Unleashing the Power of Parallel Processing
PDF
Fiber to the People! By Deutsche Telekom
PDF
Governing Geospatial Data at Scale: Optimizing ArcGIS Online with FME in Envi...
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
PDF
Introducing and Operating FME Flow for Kubernetes in a Large Enterprise: Expe...
Data Virtualization in Action: Scaling APIs and Apps with FME
Taming the Chaos: How to Turn Unstructured Data into Decisions
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Infrastructure planning and resilience - Keith Hastings.pptx.pdf
Notification System for Construction Logistics Application
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Transforming Utility Networks: Large-scale Data Migrations with FME
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
FME in Overdrive - Peak of Data & AI 2025
Powering GIS with FME and VertiGIS - Peak of Data & AI 2025
Pipeline Industry IoT - Real Time Data Monitoring
FME in Overdrive: Unleashing the Power of Parallel Processing
Fiber to the People! By Deutsche Telekom
Governing Geospatial Data at Scale: Optimizing ArcGIS Online with FME in Envi...
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Introducing and Operating FME Flow for Kubernetes in a Large Enterprise: Expe...
Ad

Recently uploaded (20)

PPTX
Microsoft User Copilot Training Slide Deck
PDF
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
PDF
Transform-Your-Factory-with-AI-Driven-Quality-Engineering.pdf
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
PDF
SaaS reusability assessment using machine learning techniques
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PPTX
SGT Report The Beast Plan and Cyberphysical Systems of Control
PDF
Advancing precision in air quality forecasting through machine learning integ...
PPTX
Internet of Everything -Basic concepts details
PPTX
Module 1 Introduction to Web Programming .pptx
PDF
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PDF
Introduction to MCP and A2A Protocols: Enabling Agent Communication
PDF
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
PDF
Comparative analysis of machine learning models for fake news detection in so...
PDF
LMS bot: enhanced learning management systems for improved student learning e...
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
Auditboard EB SOX Playbook 2023 edition.
Microsoft User Copilot Training Slide Deck
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
Transform-Your-Factory-with-AI-Driven-Quality-Engineering.pdf
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
SaaS reusability assessment using machine learning techniques
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
SGT Report The Beast Plan and Cyberphysical Systems of Control
Advancing precision in air quality forecasting through machine learning integ...
Internet of Everything -Basic concepts details
Module 1 Introduction to Web Programming .pptx
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Introduction to MCP and A2A Protocols: Enabling Agent Communication
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
Comparative analysis of machine learning models for fake news detection in so...
LMS bot: enhanced learning management systems for improved student learning e...
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
Auditboard EB SOX Playbook 2023 edition.

Process Optimisation at the Ordnance Survey Great Britain

  • 1. FME Process Optimisation at the Ordnance Survey Great Britain An exercise in best practice [email protected] Principal Consultant FME Certified Professional & Trainer 1Spatial
  • 2. Agenda •  The Ordnance Survey •  The Object Editor Adapter •  Project Goals •  FME as a Test Harness •  Deploying ‘Best Practice’ in FME •  Tips and tricks •  Project Benefits 2  
  • 3. Ordnance Survey - Then 3   •  The original ‘Board of Ordnance’, MOD of the day •  Started survey work in the late 1700s •  Comprehensively mapped the south coast to be able to effectively repel invasion •  http://goo.gl/02tVFZ Lands End, Mount's Bay, Cornwall *
  • 4. Ordnance Survey - Now 4   •  Self financing part of the UK government •  £120-million-a-year civilian organisation •  At the forefront of the digital economy •  Remit covers Great Britain (England, Scotland and Wales) •  243,241 sq km / 93,956 sq miles •  Integrated data capture for field surveyors, HQ-based editors, and external suppliers *
  • 5. Geospatial Data Management System (GDMS) •  Seamless data maintenance solution •  Intelligent and integrated maintenance data model •  Allows separation of product data •  Includes automated data validation •  Platform for new product development •  650+ data editors •  500+ million features •  4,000 data maintenance jobs per day *
  • 7. GDMS – Production Architecture •  Includes best of breed COTS components from •  1Spatial •  BAE Systems •  ESRI •  Intergraph •  Microsoft •  Oracle •  Safe Software •  Snowflake Software •  Scalable infrastructure •  Disconnected editing thanks to the ‘Object Editor Adapter’ *
  • 8. Object Editor Adapter 8   •  Transforms data into a structure usable in the Object Editor map application •  FME underpins the transformation •  Schema is manipulated into ‘understandable’ structure from the database GML OEA (FME) PGDB *
  • 9. Project Goals 9   1.  Document process and make maintenance practical •  Schema changes pending •  Component needed to be better understood 2.  Upgrade process to FME 2013 (look beyond 2013) •  Built with FME 2009 •  Utilise recent FME enhancements 3.  Improve efficiency & performance •  Remove redundancy
  • 10. “If it ain’t broke…” 10   •  Huge amount of change in FME since 2009 •  Attribute management particular interest •  OS needed to unpick the workspace to be able to update it anyway •  Workspace opening time was slow, impacting batch run time and FME Server –  3 minutes –  c.60mb (most *.fmw don’t exceed a few 100kb) •  Quite a few transformers…
  • 11. Transformers, transformers everywhere 11   •  943 –  Custom Transformer(s) = 255 –  AttributeRenamer = 211 –  Tester = 150 –  AttributeRemover = 87 –  AttributeCreator = 51 –  ListExploder = 72 –  CaseChanger = 21 –  ListElementCounter = 18 –  AttributeSplitter = 12 –  AttributeSetter = 10 –  ListIndexer = 9 –  AttributeCopier = 8
  • 12. What is a ‘Test Harness’? 12   In software testing, a test harness or automated test framework is a collection of software and test data configured to test a program unit by running it under varying conditions and monitoring its behaviour and outputs. Wikipedia
  • 13. Using FME as a ‘Test Harness’ 13   •  The process had to change but the data must not! •  FME to check the old process against the new •  Controlled via a spreadsheet, a WorkspaceRunner and Published Parameters GML   PGDB   OLD PGDB   NEW Detect Change Failures: Spreadsheets and Geometry *
  • 14. 14  
  • 15. Dynamic Schema 15   •  Introduced around FME 2009 –  Existing process didn’t use it •  Enable ‘Dynamic’ schema mode –  Whatever schema is read, gets written –  Decouple schema from format •  http://blog.safe.com/2010/02/fmeevangelist54/
  • 16. Dynamic Schema 16   •  96 input layers can be reduced to 1! –  Magic Transformer = FeatureTypeExtractor –  Workspace infinitely less daunting
  • 17. Reduce Transformer Duplication 17   •  Helped by Dynamic Schema Mode •  Try not to duplicate operations
  • 18. Reduce Transformer Duplication 18   •  ‘Like’ operations carried out on all features –  Filter features off to unique processes when needed •  20% of data had a ‘Level’ –  21 CaseChangers used to apply UPPERCASE –  Replaced with 1 StringCaseChanger •  69 Custom Transformers with embedded Python used to format Date attributes –  All features passed through a StringReplacer to remove hyphens •  2013-01-01 to 20130101
  • 20. Custom Transformers 20   •  What? •  A container for many regular transformers •  Allows a common set of tasks to be reused in 1 or many workspaces •  When exported becomes an *.FMX file for sharing
  • 21. •  The FME Store was introduced in 2012 –  2014 FME Store mature with 130+ transformers (and other resources) •  http://fmestore.safe.com •  http://fmepedia.safe.com/articles/Samples_and_Demos/Custom-Transformer- KMLDiagrammer •  It’s increasingly likely your workspaces will contain Store resources •  FME now auto connects & downloads any resources required Custom Transformers 21  
  • 22. •  Support for versioning •  Ports are not disconnected when renamed –  http://blog.safe.com/2013/12/fmeevangelist121/ •  Embed/link all instances of a given transformer •  Manage input and output schema on Custom Transformers Custom Transformers 2014 22  
  • 23. •  14 unique custom transformers used 255 times •  PGDB had constraints, many tables did not allow null values –  Custom transformers tested and removed null attributes –  Thanks to Generic mode expose constrained attributes and pass through a PythonCaller to remove the null attributes •  FME 2014 Use Custom Transformers Effectively 23  
  • 24. Schema Mapping 24   •  Attribute names are hardcoded into 211 AttributeRenamers in the workspace –  Changes to target schema means attribute hunting! –  Biggest challenge for ongoing maintenance •  1x SchemaMapper replaces all AttributeRenamers –  Non-FME user can alter the process by editing AttributeMapping.csv
  • 25. Documentation 25   •  Always document your Workspace •  The OEA process was documented –  But didn’t include detailed explanations ‘why’ •  You should be able to read a Workspace and understand it –  Highlight dependencies and use XML notation for naming
  • 26. •  In 2014 canvas annotations taken to the next level Documentation – Self contained 26  
  • 28. Benefits 28   Before After Improvement Time to open (from local disk) 2mins 12secs 31secs 1min 41secs File size 56mb 13.8mb 75% reduction Lines of machine written code 450,332 111,334 75% reduction Number of transformers 943 336 64% fewer Sample run time 1hr 7mins 48mins 19mins •  Current, documented and ‘owned’ by the Ordnance Survey •  Robust production extraction routine •  Simpler to maintain and change –  Some schema changes possible without opening FME!
  • 29. 29   [email protected] Principal Consultant FME Certified Professional & Trainer 1Spatial