Oracle Spatial 12c - new features for spatial (maybe, possibly, subject to all Oracle caveats)
Today I had the pleasure of chairing the UKOUG Oracle Spatial SIG at Oracle's London City Office. I'm on the Committee for the SIG and use the technology a lot in my day to day work, so my view is biased, but I do like the SIG as I always leave it with a better idea of the Oracle Spatial technology roadmap and invariably have at least one 'take-home' idea or tit-bit which I have gleamed from one of the other presenters, sharing their experiences of Spatial.
Happily today was no exception. Albert Godfrind (part of the Oracle Spatial development team) gave a great insight into the likely Spatial enhancements in the 12c R1 database release (the 'c' if you are wondering stands for 'cloud' which was obviously one of the key directions announced at Oracle Openworld earlier this month) all delivered in his wonderfully no-frills Gallic style. 12c is currently in 'beta 2' so will probably not hit the shelves until at least mid-2013.
In summary I noted the following likely enhancements/changes (if they all make it through beta unscathed):
- Oracle Locator 'beefed' up The entire SDO_GEOM package will now be available in Locator (rather than previously where some of the more powerful functions where only available in Spatial). This is a good move and will open up a fair bit more functionality to those without the full Spatial licence. I guess this follows an accepted model of premium features slowly becoming standard as the entire suite evolves, and as new features get added at the top of the stack.
- Performance increases Yet again lots of performance tweaks such as caching spatial metadata and generating stats on spatial indexes to improve query times and operations. More explicit performance improvements once again on the high-end Exadata platform, taking advantage of the close-coupling of hardware and database.
- New NURBS geometry type Finally spatial can now model curves using NURBS (Non-uniform rational B-splines) using new SDO_GTYPE_CURVE and SDO_GTYPE_MULTICURVE gtypes. This functionality is pretty common in CAD and engineering apps - so it is good to see these can be handled in the database now. No change to the SDO_GEOMETRY format either, just extended.
- Network modelling Of particular interest to me is the new ability to map between network node and link features in the network model and 'real' features (e.g. a network node can now be linked explicitly or designated to the substation, road junction etc it represents). As someone who has manually built such 'linkage' into previous data models manually I'm looking forward to seeing how this has been done and how much quicker it can be achieved. Other network modelling advances seem to be providing the same Java API functionality through an XML API, with simple PL/SQL wrappers. So you no longer have to use the Java API for heavy-duty network analysis.
- GeoRaster analysis The GeoRaster functionality continues to be enhanced and it looks like raster / map algebra will now be supported using a new SDO_GEOR_RA package which includes the ability to perform cell-based conditional queries, and calculate cell-based based on arithmetic operations (such as NDVI algorithms etc.). Again this is functionality which has been part of remote sensing packages and imaging packages for a long time; and is long overdue in the database. It'll be interesting though now to see whether any of the 3rd party imaging/RS/GIS tools begin to support doing these types of functions directly in the database using the native functionality. There is also now a GUI driven workflow for loading GeoRasters in to Spatial using GDAL which should make it easier to get the data into the database in the first place.
- 3D Like GeoRaster the support for 3D seems to be incrementally enhanced with each release; this time with full support for 3D geodetics, pyramid support for point clouds and TINs, and contour generation from point clouds and TINs.
- Semantic support Oracle's semantic web capabilities (e.g. LinkedData, RDF, SPARQL support) is all now covered within the 'Spatial' licence and indeed this has prompted the slightly underplayed name official name change to 'Oracle Spatial and Graph'. Now I do believe that 12c R1 will include some support for 'semantic spatial' and GeoSPARQL but I don't know too much more than that so we'll have to wait and see.
- Other highlights of the SIG for me were:
- a great presentation by Ordnance Survey and Oracle on how they used Real Application Testing (RAT) on the OS' large version-managed GDBMS database (the one they write their surveyors map edits into) to record and undertake performance testing and load testing. Anyone who has tried to simulate the load on an enterprise spatial system with multiple concurrent edits will know this can be particularly tricky (and all too often in my experience just deemed 'too difficult' and left to chance). It was good to see an approach which looked sound and most importantly repeatable. This gives the system owners and DBA's lots of confidence now when they undertake future upgrades and patches.
- eSpatial's subscription based SaaS running Oracle on AWS appears to fill a great niche for organisations who very quickly, with minimum fuss, and very little overhead want to perform analytics and map-based visualisation of their business data. A couple of things stood out here:
- 1) their target market has probably never heard of GIS or spatial;
- 2) AWS' current lack of support for Oracle Real Application Cluster may mean they need to look for another IaaS provider as the uptake of their service increases, and
- 3) lots of requests from developers for API type access to build custom workflows.
Numbers of attendees at the SIG are still less than I would like see, but it was great to see a few new faces and a few familiar ones! Hopefully we can put together another agenda in the Spring 2013 which will entice more people to return and come along to share experiences with others.