The GIS Database

I’ve been thinking about GIS data a bit lately, mostly because I’m cleaning off old hard drives I’ve had in my possession to try and consolidate my data (or not lose the data off of old hard drives). Typically GIS data was accessed one of two ways, either from a server through some endpoint or via a local file store. I can’t look at these old ArcGIS Desktop MXDs anymore but I recall most of the work we did was local file store. You know, sitting on the “P drive” and referenced via a file path. We all remember opening up projects and seeing those red exclamation points telling us that data was moved (or the project file was).

It is very easy in retrospect to go back and call yourself batshit crazy for storing data this way (back up hopefully every night on a DLT tape). I mean think about this for a minute, nothing was versioned. We live in this world of git where everything I do (including this blog) is stored in a database where I can track changes and revert if need be. Now I’m not using this post to talk about the need of GeoGig or whatever that project is called these days (I’m not even sure it still exists), but the realization that GIS over the years is such a workgroup discipline.

I worked for AECOM, the largest AEC in the world. We did some amazing enterprise projects but GIS was never one of them. It was a small group of GIS “pros”, “doing” GIS to support some enterprise project that changed the world. Tacked on if you will, and it’s not just AECOM that worked that way. Every organization views GIS this way, like “graphics”. Why is this? Because GIS “pros” have let it be this way.

I’m not trying to come up with a solution here because I don’t think there is one. GIS is just very small minded compared to other professions in the tech space. Even the word “enterprise” has been appropriated to mean something totally different. Just having a web map does not make GIS “enterprise”, in fact all you’re doing is taking workgroup and making it worse. It is easy to pick on Esri (as I did above) but they’re not the big problem. It’s the implementations which make Esri have such terminology. That is, it is the GIS “pros” who cause these problems on themselves. Who is to fault Esri for trying to make a buck?

I have made it my professional career to fix broken GIS systems. People always ask me, “What madness you must see trying to undo broken GIS systems” but the reality is I see some amazing work. Just small minded implementations. It is easy to make fun of ArcObjects or GML but they are just libraries that people use to create tools.

This isn’t a call to arms or a reminder that you’re doing GIS wrong, it’s just thoughts on a plane headed across the country where I’m looking at data that I created as a workgroup project. I’m sure there are people cleaning up my work that I implemented in the past, I can tell you there is some bad choices in that work. Technology has caused many of us to lose being humble. And that results in only one thing, bad choices. In the end this is my reminder to be humble. The good thing is I have no shapefiles anywhere on this laptop. That’s a start.

Esri Geodatabase Archive Updated

Something I started in 2006 is still widely used.  I created it originally as I was trying to create ArcGIS 9.1 Personal Geodatabases with ArcGIS 9.2.  It wasn’t possible then to create older Geodatabases but Esri eventually added in functionality to create older versions.  The reason we need these is that you can use older Geodatases in newer versions of ArcGIS but not the other way around.  So if you are on ArcGIS 10.2 and your client is on ArcGIS 9.3, you’ll have a problem sharing data.  But if you have a 9.3 version Geodatabase, then you can save your data to that version and share away.

I like this archive because each one of these Geodatabases was created with that version of the software.  They will work perfectly since they are natively created. So next time you need to have a 8.3 Geodatabase (You totally know that day will come), you’ll have a native Geodatabase to work with.  Bookmark and use!

Special thanks to @GIS_katie for providing the updated blank ArcGIS 10.3 File and Personal Geodatabases.

SpatialTau v2.9 – Geodatabase vs geodatabase

SpatialTau is my weekly newsletter that goes out every Wednesday. The archive shows up in my blog a month after the newsletter is published. If you’d like to subscribe, please do so here.


What does the word “geodatabase” mean to you?  I’m sure most of you answer that it’s Esri’s proprietary spatial data format, either the classic Microsoft Access Personal Geodatabase or the newer folder based File Geodatabase.  But really it also applies to any spatial database, Esri or not.  Spatialite is a geodatabase.  PostGIS is a geodatabase. CouchDB is a geodatabase.  I could go on of course.  But when we talk about geodatabases we sometimes get our wires crossed.

Just last week I was talking with a client and they were using the word geodatabase to describe both File Geodatabases and PostGIS.  Internally they knew what they were talking about but I went back and forth between understanding what exactly we were discussing.  After a good laugh we talked about the concept of spatial databases abstractly and wondered if the word “geodatabase” was the right one to use.  When I search with the term “geodatabase” with Google, my first 3 results are Esri, and then we see a Wikipedia article on spatial database.  Google image search is littered with Esri examples of their Geodatabase with almost no other database being described.  You can see above I refer to Esri’s product at “Geodatabase” (big G) and the generic term as “geodatabase” (little G) but when we talk it is very hard to see the difference.

So what right?  Does it really matter?  I’ve gone over this the past week since my discussion with the client and I’m of the mindset that Esri “owns” the geodatabase term.  If you search my blog you’ll notice I’m pretty good about making sure I use “Geodatabase” and “geodatabase” correctly but honestly I don’t see why I should.  Saying “spatial database” is so much more descriptive than geodatabase and honestly more understandable to non-GIS users.  I think in the bigger picture of Spatial IT, referring to something correctly generically matters.  I’m going to use Geodatabase (big G) to refer to Esri’s spatial formats and spatial database to describe spatial databases.  I think the clarification matters and defines the difference between a file format and an actual spatial database.  Heck I can even say a Geodatabase is a spatial database and sleep well all night.

Just try and make me start using ArcGIS!

I ran into an interesting discussion today with some users at a client site today. It seems while the GIS manager would just love to migrate everyone to ArcGIS 9.1, he just can’t seem to get people to move off of ArcView 3.x. I did a little demo to show them how much easier it was to work with files as well as the model builder to help them perform data analysis, but it didn’t seem to sink in. I also explained how they were moving to Geodatabases and ArcSDE and how ArcView 3.x wouldn’t be able to interact with those formats. The response? Let the GIS manager convert them to shapefile for us. Lets just say that GIS manager wasn’t too thrilled about that response. Looks like I might have to do some Avenue programming for this client.

ArcView 3.x is the program that just won’t die.

Email Shapefiles or Geodatabases? Nah, give me e00!

I’ve grown to really dislike emailing datasets to people. Shapefiles have always been a pain as you either have to attach at least 3 files to an email or “zip” it up to ensure that the files are readable on the other end. The Geodatabase did better as it was one file containing one or more datasets, but alas these days emailing a Microsoft Access file is just about worthless as most email systems (and even Outlook to an extent) strip out anything with a *.mdb extension. Yea, one could always use FTP or some other web based system, but email is still the easiest and quickest way to send files.

One format that was never difficult to send (though half the time people didn’t know what to do with it) was the ESRI Export Interchange file (what we mostly now call e00). This single ASCII file was almost always accepted with email systems and could store many different dataset types. Why is it we always take a couple steps back as we move forward. I just can’t stand having to change a Geodatabase extension to _.txt or something else just to get an email system to accept it, or remind people that the need to at least include the _.shx and *.dbf with that shapefile they sent. I’d love to see a new interchange format from ESRI, or just update the existing Export Interchange format to handle the newer data types the ESRI is supporting. In retrospect, using a Microsoft Access file format probably wasn’t the best idea for many reasons, but if we had an up to date interchange format, that wouldn’t matter at all.