Today, Haris Kurtagic over at SL-King announced the latest release of his cool fdo2fdo utility.
This application hasn’t got much attention yet, but it sure deserves some. Initially used as a test platform for Haris’ open source King.Oracle FDO provider, it has quickly evolved into a general purpose FDO data transfer and inspection toolkit.

Haris does a much better job of describing the functionality of this tool than I ever could in his flash movie. I really encourage you to have a look, but set your resolution to at least 1280×1024 for best viewing. As you’re watching, keep in mind that there is a command line utility included which can perform all of the common schema-related (ExportSchema, CreateDatastore, ApplySchema, CopyData) tasks. For usage you can just navigate to the isntallation folder and type f2fcmd from the Windows command line.
The demo shows SHP, SDF, and Oracle as datastores, but you can easily add any FDO provider to the application. These include things like MySQL, ArcSDE 9.1, and (read-only) any OGR-supported data format. The utility of this application is simply outstanding.
If you paid attention to the movie (and know where I work) you’ll be able to figure out my personal interest in this tool. It has allowed the City to set up a low cost one-click data synchronization between a remote field application and a corporate database. All this required was the judicial use of the “Filter” option, some saved XML transfer tasks, and pre-defined schemas. One cool feature (that we didn’t use) is that you can apply geometry filters, allowing you to transfer a specific area of interest.
fdo2fdo is currently only available in a windows binary download (with Oracle instant client bundled, which is why it’s so big), but Haris has assured me that after he cleans up the code he will be submitting at least the command line and API code to the FDO SVN repository under an appropriate OSI-approved license. Haris is new to the open source world, but he’s catching on really fast.
I believe that the API and command line tool were coded in standard C++, so I’m hoping that they can be ported to Linux shortly after he uploads them. I’m also hoping that the GUI portion of the application will be uploaded. It’s apparently written in MFC, so there isn’t an easy translation to Linux. However, it could act as a model to help someone else build a Linux-based GUI.
-J
1alfred on Mar 15, 2007 at 8:53 am:
Hello Jason,
I am not familiar with FDO at all. Reading some of the links on this post, it seemed to me that it might have similarities to FME. Do you have any comments on similarities/differences between FDO and FME?
Regards,
Alfred
2Jason Birch on Mar 15, 2007 at 11:01 am:
There are a couple similarities, but fdo2fdo is really more analogous to the open source ogr2ogr tool.
The main differences between fdo2fdo and ogr2ogr appear to be that fdo2fdo allows for stronger schema remappings, while ogr2ogr supports reprojection and requires less setup effort for each transfer (no XML).
http://www.gdal.org/ogr/ogr2ogr.html
Although at a base level FME can be used for simple data transfer, this isn’t where its real value is. Here are some things that FME is exceptionally great at:
- ease of use
- full transformative capabilities
- fine-grained control over input and output schemas (fdo2fdo is all abstracted)
- excellent self-documenting features
- raster support
I personally can only see using fdo2fdo for the most simple of my requirements. FME is still my main engine for spatial ETL and will continue as such into the future.
Jason