Posts Tagged ‘internet map server’

MapGuide, ArcGIS Server, and Manifold – First thoughts

April 16th, 2009 7 comments

In this article I'll give a brief overview of three Internet Map Servers (IMS): ArcGIS Server 9.3, MapGuide Open Source, and Manifold. I have scoured the web for information and also talked to consultants for each tool. Please keep in mind that my viewpoint is that of a person who has only acted as an end-user of each product, not a developer.

First, why am I looking for an IMS? Well I'm glad you asked! We are nearing completion of our first "for sale" software product, Landboss. Landboss is a SaaS app that provides lease acquistion and administration functionality to the oil and gas industry. Most of my functionality gathering missions took place in our homestate of Oklahoma. Our initial plan was to support only states that use the Public Land Survey System, but after talking to some folks in TX we realized we could support them (and other non-PLSS states such as the New England area) without too much extra work.

There was a catch, as always. Because tracts of land in non-PLSS states come in all shapes and sizes, mapping is extremely important. The main reason is because users need to visualize their prospect and tracts within it. In a PLSS state you can fake this because most tracts are rectangular in nature. Thus, our potential TX clients want/need mapping in the system as soon as possible.

ArcGIS Server
ESRI is the standard in GIS, there is no arguing that point at all. The ArcGIS Server product seems snappy in all demos that I have used and has a nice look to the maps. The big advantage to ArcGIS Server is that there is a large community and a lot of support for the product and it has been tested heavily in production.

The two downsides of ArcGIS are price and multi-threading performance. ArcGIS Server is expensive for a server license if you want to open it up to the world, more than I want to pay. That problem is compounded by the fact that the ArcGIS engine product is not multi-threaded. The server itself is multi-threaded to handle requests, but once a request gets to the engine, it will not take advantage of a multi-core processor. ArcGIS server has announced native 64-bit support, but I'm not sure if it's available yet or not.

ArcGIS Server will run on Windows, Linux, or Sun Solaris.

MapGuide OS
MapGuide OS is backed by AutoDesk. They open-sourced MapGuide, I assume, to combat ESRI's stranglehold on the marketplace. AutoDesk still sells a licensed enterprise version that is built around MapGuide OS.

MapGuide's interface is nice and response time was quick. The quality of the rendering was good as well, although I don't think there is a significant difference between ArcGIS and MapGuide. The huge benefit with MapGuide is that it is open source and free to use. For what I want to do, the work is fairly straightforward and I'm looking at spending less on a consultant than I would spend on one license of ArcGIS Server!

The main reason the consultant's time would be less is because MapGuide comes with quite a bit of functionality out of the box, like tiling, AJAX, and more. It also has support for all major spatial databases.

MapGuide OS will run on Linux or Windows.

Manifold is a very interesting product. It claims huge performance benefits on it's website and shamelessly bashes ESRI. I have no reason to believe that those performance benefits are false and from reading and discussing with a consultant I have reason to believe they are true. I was very intrigued by their support for NVIDIA CUDA and in future versions they plan to move more function calls to CUDA (currently it's a limited number of functions that can run in CUDA).

The maps themselves are good quality and the rendering speed was good. It would be hard to compare the three products on performance without doing a formal benchmark of each under various loads.

As a desktop GIS product I think Manifold is extremely competitive because of it's pricing and capabilities when compared to ESRI. The IMS falls down short though because the out of the box implementation is horrible. To get to a nice feature set that MapGuide has out of the box would take you hundreds of hours of developer time. The performance benefits are simply not good enough to overcome the extra cost of development time. Manifold does not seem to have any interest in building out the server product, they seem content to focus their time on the engine.

Manifold proudly flies the Microsoft flag and even suggests that supporting only one platform is a benefit because it makes their job simpler.

And the winner is...
If you haven't already guessed it, MapGuide OS is the direction we have chosen. For the quality and features of the software you simply can't beat it when it is free and open source. You can interface with the product using multiple languages (we prefer C#) so it fits into most development environments easily. AutoDesk still supports MapGuide heavily so it is far from a dead product and there is a large support community around the product in case you need help developing your map application.

Once we put MapGuide into production I will post a follow-up and let everyone know how it goes.