Start working with a database (RDBMS – Oracle/DB2/Informix/MS SQL Server/My SQL/PostgreSQL/sqlite/…) for your spatial data and for free that will improve your analysis time and accuracy, and reducing time and costs.
Shapefiles and Coverages are old file formats for storing spatial data. Unfortunately, many people are still using them. They haven’t noticed the technology has changed over the last 10 years in GIS.
The purpose of the shapefile was to store spatial data in a very simple way. A shapefile contains a DBF for the attributes and a SHP file for the actual shape or geometry. For a small, quick and dirty project, it’s OK to use it, but it’s not adequate for enterprise level. Or what about for a GIS product that needs to be updated frequently, and it will require highly maintenance; a shapefile is not going to work. They were good at their time, where there was nothing better, and spatial databases were limited too.
The purpose here is not to explain the limitations of Shapefiles or Coverages, that’s something that you might already know. It is to explain how you can get rid of them and start using something way better.
Esri came out with ArcSDE a long time ago which is good, but it still lacks of fully SQL support. The main problem of SDE is that you have to continue using the Geoprocessing tools, ArcMap or ArcObjects to manipulate the data. SDE is a tier of complexity to the database. Only copying data from one database to another it’s complicated and very slow.
The solution in this case is to use your current RDBMS that will support spatial capabilities natively.
This is what you have to do:
- Planning your work. What kind of GIS products do you want to do, what kind of analysis. This is key for the entire project.
- Designing your spatial database
- What is your current RDBMS in your organization? Oracle, MS SQL Server, DB2, …Nowadays, ALL databases have spatial capabilities
- Enabling the spatial capabilities (I will describe this section in another blog). If your organization is already using Oracle, MS SQL or MySQL you can enable the spatial capabilities. Your current RDBMS is more secure, robust and scalable. The cool part is that it’s free.
- Loading the shapefiles/coverages in your new database.All databases come with a loader utility or ETL to do that.
- Visualizing your data
- You’ll be able to share and edit your data among the entire organization easily
- Multiple data editors for your data
- Easier to make applications on top of your new database
- Simpler, you don’t have to manage many data sources, everything now is in the same repository
- SQL support. You can directly hit the data and make spatial operations (selection, clip, buffer,…) directly in the database making it faster
- Be able to relate and join your spatial data with other businesses data, other databases and 3rd party systems such as SAP, Customers, Invoice, …
Shapefile and Coverages: