This is the second part in a three part series on MapIt. In the first post I covered the features of MapIt. Now that we have the background on what MapIt contains, let’s answer another pivotal question: is it designed to replace any existing ESRI products? I’ll tackle the most common product comparisons to date.
Question: Does MapIt replace ArcGIS Server?
No. From the server-side perspective they share one operation: query. The query operation on a table using the SDS and the query operation on a feature layer in an ArcGIS Server map service accepts similar inputs and generates the same output format (as discussed in the SDS section in the first post). Here are a couple urls to compare the query experience in Services Directory:
ArcGIS Server:
http://serverapps.esri.com/ArcGIS/rest/services/SamplesNET/USA/MapServer/0/query
MapIt:
http://serverapps.esri.com/SDS/databases/Demo/dbo.USCities_Geographic/query
All other comparisons illustrate the significant difference between the two. Here are a few examples:
ArcGIS Server is a complete enterprise GIS solution built around the extensive capabilities of ArcObjects. MapIt features simply enable quick and easy access to spatial data in SQL Server and do not require ArcObjects in any way.
MapIt does not include a SOM or SOC, that functionality is handled by SQL Server.
MapIt does not include an administrative interface like ArcCatalog or Manager and does not use service configuration files like mxds, msds, tbxs, etc. As a result, MapIt does not include an application to create and modify configuration files such as ArcMap. Instead you organize and manage your data in SQL Server using standard database techniques and capabilities. You may use SQL Server Management Studio to do this, but again that's available completely outside of MapIt.
ArcGIS Server includes numerous service types and core APIs (e.g. SOAP, REST, WMS). The MapIt Spatial Data Service does not maintain any service types and has one API, REST. You may consider a SQL Server database analogous to an ArcGIS Server map service; a database schema similar to a data frame; and a table to a feature layer; but the relationships between tables in a SQL Server database are arbitrary whereas layers in a map service are implied.
No component in the MapIt-SQL Server solution generates map images on the server. Instead, spatial data must be streamed to the client as features and rendered by the client. ArcGIS Server has the ability to generate map images on the server which has definite benefits when rendering a large number of highly complex features.
MapIt does not include an application builder as is packaged with ArcGIS Server in the Manager Web application. Instead, you slip on your developer hat and create a slick lightweight Silverlight or WPF client. Or you slide into your SharePoint nook and configure a Map Web Part.
MapIt features are pure managed solutions supported natively in 32 and 64-bit environments. Core ArcGIS Server components are predominately unmanaged native 32 bit applications and processes supported in 32 and 64-bit environments.
Question: Does MapIt replace ArcIMS?
No. From the server-side perspective the comparison is similar to ArcGIS Server. In ArcIMS, you can query a layer in a map configuration file served up in an image or feature service. However if using the standard servlet connector, you post an HTTP request that contains an ArcXML GET_FEATURES request and returns an ArcXML FEATURES response. ArcIMS does not include an REST API... unless you build it yourself.
ArcIMS is a simple Web GIS solution composed of Java and C++ components, with limited ArcObjects support via the ArcMap Image Server. MapIt features are built as pure managed .NET solutions.
MapIt does not include a spatial server, monitor, or application server - again that functionality is handled by SQL Server.
MapIt does not include an administrative interface like ArcIMS Administrator and does not require configuration files like axls or mxds. As a result, MapIt does not need to include an application to create and modify configuration files such as ArcIMS Author.
ArcIMS can generate map images on the server, MapIt and SQL Server do not.
MapIt does not include an application builder like ArcIMS Designer. Again, use the developer hat or SharePoint nook.
Question: Is MapIt the new MapObjects-Windows or MapObjects IMS?
As a whole, no. Keep in mind MO-Windows and MOIMS are no longer available - but this has not stopped the attempt at a comparison - which is why I mention it here. From the server-side perspective MOIMS provided a light-weight Web mapping solution but you still had to create the server-side application to work with directly with data (e.g. shapefiles, ArcSDE) - plus you generate map images on the server. The MapIt SDS correlates with the MOIMS esrimap dll but like with the ArcIMS servlet connector, the format is different. You also had to build the MOIMS client, usually a limited mish-mash of HTML, JavaScript, and ASP.
One notable similarity exists in the desktop development arena. Part of MapIt, the WPF portion of the ArcGIS API for Microsoft Silverlight/WPF, may accurately be billed as ESRI's current light-weight mapping solution for Microsoft developers on the desktop. This position was occupied the MO-Windows in the past. Granted the ArcGIS WPF API is a service client and doesn't work with local data out of the box, it fits the current model promoting rich, light-weight, interactive desktop clients that consume services to access data and functionality.
Question: How do you compare MapIt to other products?
Remember to consider that the features of MapIt are loosely coupled whereas ArcGIS Server and ArcIMS components are tightly integrated. In the author, serve, use paradigm of ArcGIS Server or ArcIMS, ESRI products are integrally involved every step of the way. For example, you author configuration files in ArcMap or ArcCatalog, host them as services in ArcGIS Server, administer them using ArcCatalog or Manager, and build applications using a number of ArcGIS APIs or frameworks. For an apples-to- apples comparison, you need to evaulate each piece of MapIt individually.
For the SDA, is there another application that geocodes addresses in a SQL Server table or loads shapefiles into SQL Server, adds constraints, indexes, and stores features in native SQL Server spatial format? If so, compare it.
For the SDS, is there another Web service that enables direct access to SQL Server tables (spatial and non-spatial) via REST that performs as well as the SDS? If so, compare it.
For the ArcGIS API for Microsoft Silverlight\WPF, is there another Silverlight\WPF API that includes full featured, rich interactive mapping components and integrates with data from ArcGIS Server, Bing, and SQL Server spatial (SDS)? If so, compare it.
For the ESRI Map Web Part for Microsoft SharePoint, is there another out of the box SharePoint solution that includes a configurable component that leverages the latest Microsoft Web technology (Silverlight)? If so, compare it.
From what we can see by the ESRI product comparisons (above) and the features of MapIt, it is not a comprehensive enterprise GIS solution. It's designed to be a simple, straight-forward, non-intrusive set of features that build on the existing Microsoft stack of database, service, and client solutions.
In the next and final part to this series I'll discuss pricing and who should be interested in MapIt.
Rex Hansen
Senior Product Engineer\Evangelist
ArcGIS Server .NET, Silverlight/WPF, MapIt