Shapefile vs. Geodatabase

18754
26
10-16-2014 09:37 AM
ThomasDowling
New Contributor

     I am considering building a geodatabase that would contain a series of polygon shapefiles. I was curious about the advantages of storing polygon data in a geodatabase vs a shapefile? Also where would I begin in building this database? Something to keep in mind is that all the shapefiles are constantly being edited individually and some may not relate or have different parameters than others. Thoughts on this process and is it worth doing?

26 Replies
TimWitt2
MVP Alum

Thomas,

One difference from to top of my head is, field headers can only have a size of 10 characters in a shapefile and more in a geodatabase.

check this out: http://help.arcgis.com/en/arcgisdesktop/10.0/pdf/building-a-geodatabase-tutorial.pdf

Tim

MichaelVolz
Esteemed Contributor

If the polygons need to be represented by true curves, you need to use a geodatabase as true curves are not supported in a shapefile.

JoeBorgione
MVP Emeritus

How about it's 2014 and not 1997?   Shapefiles were the rage back then; not so much today. 

Did you have have a rotary telephone?  They worked back in their day too....

That should just about do it....
0 Kudos
DanPatterson_Retired
MVP Emeritus

Come on...They still work...especially if you need to work with other software packages including FOSS GIS.  The need really depends upon what you do.  So unless you need a specific feature of a geodatabase...you can use either

VinceAngelo
Esri Esteemed Contributor

Or unless you need higher resolution than day in date fields.

Or unless you need international characters (UTF-16)

Or unless you need BLOB type columns

Or unless you need numeric null values

Or unless you need strings wider than 254 characters (50 in some UTF-8 languages)

Or unless you need UTF-8 column names wider than 3-5 characters

Or unless you need more than 2Gb of attributes or geometries in a single table

There's a lot wrong with shapefiles that couldn't be done better at the infancy of desktop GIS 20 year ago.  At some point, "Well, they still work (sort of)" is no longer going to be true.

Personally, I use ASCII before shapefile -- it's just too difficult to undo all of the defects.

- V

DanPatterson_Retired
MVP Emeritus

Vince...I have no need for any of your Or's...which is why I continue to use shapefiles and numpy and I have learned to partition large problems into manageable parts to speed up processing and assemble the results at the end.  I suppose the choice of one format over another depends upon what you need to do and how you go about doing it.  Also, as you point out, the shapefile could have been done better...perhaps the geodatabase's replacement will provide something that will be useful for me that I can't live without.

0 Kudos
VinceAngelo
Esri Esteemed Contributor

Dan, you at least are familiar with the limitations, and know the cost of your choice.  Folks who haven't yet had the joy starting over  because dBase couldn't be bent to their requirements should have at least heard the warning once before it costs them days of effort.

Frankly, I don't know how shapefiles could have been done better, not before 32-bit became the default "int" representation on compilers for Microsoft operating systems.  Their primary weakness (dBase) was their primary strength, and the door to the GIS cave of wonders was opened.  But with modern databases as an expectation for datatype management, trying to crawl back into that itty-bitty living space isn't going to work.

DanPatterson_Retired
MVP Emeritus

Points taken...however too many people buy a sprawling rural estate when all they really need is a 500 sq ft condo just because everyone else is doing it...   ...so user beware as Vince says...think before you leap...you may save your investments (aka time in learning gdb ins and outs) for the finer things in life

0 Kudos
VinceAngelo
Esri Esteemed Contributor

I'm all for downsizing, but the more I work with file geodatabase (both with the FGDB API, and from ArcObjects), the more shapefiles resemble an unheated cabin in the woods.