ESRI gave us two types of file GeoDatabases: File GeoDatabase and Personal GeoDatabase.
So far at all the companies I worked at we used them for upgrading the real database (SQL Server) or as a backup for the Geographic data. Until today Personal GeoDatabase was the best choice for that purpose (we even backed up the file on the TFS).
I have decided to compare the two types:
File GeoDatabase | Personal GeoDatabase | |
ESRI Description | “A collection of various types of GIS datasets held in a file system folder.(This is the recommended native data format for ArcGIS stored and managed in a file system folder.)” | “Original data format for ArcGIS geodatabases stored and managed in Microsoft Access data files.(This is limited in size and tied to the Windows operating system.)” |
Storage Format | “Each dataset is a separate file on disk. A file geodatabase is a file folder that holds its dataset files.” | “All the contents in each personal geodatabase are held in a single Microsoft Access file (.mdb).” |
Size Limits | “One TB for each dataset. Each file geodatabase can hold many datasets. The 1 TB limit can be raised to 256 TB for extremely large image datasets. Each feature class can scale up to hundreds of millions of vector features per dataset.” | “Two GB per Access database. The effective limit before performance degrades is typically between 250 and 500 MB per Access database file.” |
Structure | a file + a folder full of files | one file in access format |
adding/removing a feature | the files in the folder change (added or deleted) | change in the access data |
editing the geographic data | change in the files | change in the access data |
Performance | better then personal but worse from SDE | not good but better than shape |
Storage in TFS (or any other source control system) | difficult, for each change you should delete the folder and add it again to the TFS (the files in the folder may be deleted or created when changes occur) | easy, simply check out the mdb file (be sure not to check in the lock file) |
Getting IWorkspace for the GeoDatabase | fileGDBWorkspaceFactory.Create(path, "Sample.gdb", null, 0); | accessWorkspaceFactory.Create(path, "Sample.mdb", null, 0); |
Quotes come from the ESRI site. ESRI compared some more things like number of users, versioning, platform and security but I consider it an overkill for a file GeoDatabase.
Today I am working on a bigger project (something a bit worldwide with a lot of data) and 2GB is just not enough. The good thing is that we probably won’t use the TFS to backup the data but actual IT systems.
Resources:
Keywords: file, GeoDatabase, database, access, mdb, source control, IWorkspace, ESRI, Sde