Software Options for Seeding and Tiling

Please note: Both open source and proprietary software tools and applications are rapidly changing or being upgraded.  Consequently, these comments are general in nature and may not reflect recent changes in software.

  1. Comments and Workflow: The TileMill program with a simple and well-designed graphical interface creates tiles for use in a web service.  The Python utility called MBUTIL is utilized for conversion of the MBtiles format into a less proprietary format that can be read by the OpenGeo Suite. OpenGeo does not read MBtiles—recent release of OpenGeo has an unproven community solution.
    1. Strengths: This is an open-source software which efficiently produces tiles in the proprietary MBTile format. Easy to use with significant graphics capabilities. Only limited amount of scripting code necessary with good documentation and demos.
    2. Weaknesses: Need to run file type conversion with the Python program called MBUTIL which appears to run with Linux box. New community script allows for direct input of MBTiles into Geoserver though currently buggy.
  2. Comments and Workflow: GDAL is an open source raster utilities set  in a Python wrapper.  It includes utilities to obtain information about data (gdalinfo); convert raster types (gdal_translate); create or alter projections (gdal_warp); and create tiles of many sizes and types (gdal_retile(preferred), gdal_2tiles (best used with .vrt file type)).  See documentation from FOSS4G 2013 found here.
    1. Strengths: Widely used code that has been appropriated by many applications such as QGIS so it is well tested and reliable. Good output flexibility. Appears both fast and robust. Many types of tools but gdal_retiles appears to be best single tool for creating tiles and pyramids. Used by heavy utilizers of rasters. Can be coded (e.g. Python) or used in a command line format.
    2. Weaknesses: Poorly documented and primarily command line driven so learning curve will be steep for many people. Not intuitive.  Need –configure documentation with utilities. Please see blog on GDAL tools.
  3. Comments and Workflow: GeoWebCache (GWC) is an application within the OpenGeoportal stack. It is a single turnkey suite of software for web mapping services. GWC (one of the components within the OpenGeo suite) has the potential to be the most logical solution for seeding and caching because of the tight integration with the OpenGeoportal workflow–see comments below.
    1. Strengths: Integrates with current architecture so logically best choice. One can run the application GeoWebCache as a standalone application, on a local machine, and seed tiles. Open source.
    2. Weaknesses: Still very buggy and much slower than expected.  Can’t easily handle larger rasters. Despite simple interface testing not easily run.  Java approach hard to understand for novices.
  4. Comments and Workflow: Utilizing ESRI products to prepare and create tiles with ArcGIS Server and Python geoprocessing tools
    1. Strengths: Software widely available and the GIS backbone for many operations.  Well supported automation features.  Available commands such as Split Raster and Projection tool can provide initial processing support for intermediate users. Has the ability to make caches for OpenGeo but only in the “exploded” format.
    2. Weaknesses: Expensive and locks you into ESRI architecture. Proprietary file format not fully compatible with current architecture.  Would require conversion processing.
  5. Other potentially useful tools:
    1. Windows front end exists for GDAL utilities called MapTiler.  It is freeware unless you want multithreading program.  Probably not expensive and very easy to use.  Good choice for casual processing by graduates students.
    2. QGIS. Has some, but not all of the GDAL utilities, within their suite of applications. Simple to use and robust. Good for learning about GDAL syntax.
    3. FME Workbench: RasterTile tool.  Allows batch production but not a scripting tool.  See Raster Tiler and Raster Pyramid in web based help menu.  Good file conversion flexibility. Proprietary
    4. TileCache and TileStache: Two additional Python tools for seeding and caching.  Learning curve appears higher.

Carl Zimmerman, PhD Tufts University May 1, 2014