ArcGIS Server Banner

Types of geodatabases

Types of geodatabases

Release 9.3 E-mail This TopicPrintable VersionGive Us feedback
The geodatabase is a "container" used to hold a collection of datasets. There are three types:

  1. File Geodatabases—Stored as folders in a file system. Each dataset is held as a file that can scale up to 1 TB in size. The file geodatabase is recommended over personal geodatabases.
  2. Personal Geodatabases—All datasets are stored within a Microsoft Access data file, which is limited in size to 2 GB.
  3. ArcSDE Geodatabases—Stored in a relational database using Oracle, Microsoft SQL Server, IBM DB2, IBM Informix, or PostgreSQL. These multiuser geodatabases require the use of ArcSDE and can be unlimited in size and numbers of users.

Comparing the three types of geodatabases
Key characteristics ArcSDE geodatabase File geodatabase Personal geodatabase
Description A collection of various types of GIS datasets held as tables in a relational database

The recommended native data format for ArcGIS stored and managed in a relational database
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.

Number of Users Multiuser

Many readers and many writers

Single user and small workgroups.

Many readers or one writer per feature dataset, stand-alone feature class, or table.

Concurrent use of any specific file eventually degrades for large numbers of readers.

Single user and small workgroups with smaller datasets.

Some readers and one writer.

Concurrent use eventually degrades for large numbers of readers.
Storage Format
  • Oracle
  • Microsoft SQL Server
  • IBM DB2
  • IBM Informix
  • PostgreSQL
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

Up to DBMS 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.

Effective limit before performance degrades is typically between 250 and 500 MB per Access database file.
Versioning Support Fully supported across all DBMSs; includes cross-database replication, updates using checkout and check-in, and historical archiving Only supported as a geodatabase for clients who post updates using checkout and check-in and as a client to which updates can be sent using one-way replication. Only supported as a geodatabase for clients who post updates using checkout and check-in and as a client to which updates can be sent using one-way replication.
Platforms Windows, UNIX, Linux, and direct connections to DBMSs that can potentially run on any platform on the user's local network

Cross-platform. Windows only.
Security and Permissions Provided by DBMS

Operating file system security.

Windows file system security.
Database Administration Tools Full DBMS functions for backup, recovery, replication, SQL support, security, and so on

File system management. Windows file system management.

Requires the use of ArcSDE technology

ArcSDE for SQL Server Express included with

  • ArcEditor and ArcInfo
  • ArcGIS Engine
  • ArcGIS Server for workgroups

ArcSDE for all other DBMSs included with ArcGIS Server for enterprises
Allows you to optionally store data in a read-only compressed format to reduce storage requirements.

Often used as an attribute table manager (via Microsoft Access).

Users like the string handling for text attributes.

Learn about creating geodatabases.

File geodatabases and personal geodatabases

File and personal geodatabases, which are freely available to all users of ArcView, ArcEditor, and ArcInfo, are designed to support the full information model of the geodatabase. This includes topologies, raster catalogs, network datasets, terrain datasets, address locators, and so on. File and personal geodatabases are designed to be edited by a single user and do not support geodatabase versioning. With a file geodatabase, it is possible to have more than one editor at the same time, provided they are editing in different feature datasets, stand-alone feature classes, or tables.

The file geodatabase was a new geodatabase type released in version 9.2. Its goals are to

Personal geodatabases have been used in ArcGIS since their initial release in Version 8.0 and have used the Microsoft Access data file structure (the .mdb file). They support geodatabases that are limited in size to 2 GB or less. However, the effective database size is smaller, somewhere between 250 and 500 MB, before the database performance starts to slow down. Personal geodatabases are also only supported on the Microsoft Windows operating system. Users like the table operations they can perform using Microsoft Access on personal geodatabases. Many users really like the text handling capabilities in Microsoft Access for working with attribute values.

ArcGIS will continue to support personal geodatabases for numerous purposes. However, in most cases, we recommend using file geodatabases for their scalability in size, significantly faster performance, and cross-platform use. The file geodatabase is ideal for working with file-based datasets for GIS projects, for personal use, and for use in small workgroups. It has strong performance and scales well to hold extremely large data volumes without requiring the use of a DBMS. Plus, it is portable across operating systems.

Typically, users will employ multiple file or personal geodatabases for their data collections and access these simultaneously for their GIS work.

ArcSDE geodatabases

When you need a large multiuser geodatabase that can be edited and used simultaneously by many users, the ArcSDE geodatabase provides a good solution. It adds the ability to manage a shared, multiuser geodatabase as well as support for a number of critical version-based GIS workflows. The ability to leverage your organization's enterprise relational databases is a key advantage of the ArcSDE geodatabase.

ArcSDE geodatabases work with a variety of DBMS storage models (IBM DB2, Informix, Oracle, PostgreSQL, and SQL Server). ArcSDE geodatabases are primarily used in a wide range of individual, workgroup, department, and enterprise settings. They take full advantage of underlying DBMS architectures to support

Through many large geodatabase implementations, it has been found that DBMSs are efficient at moving in and out of tables the type of large binary objects required for GIS data. In addition, GIS database sizes and the number of supported users can be much larger than with file-based GIS datasets.

For information about the ArcSDE geodatabase architecture and how ArcSDE geodatabases leverage relational database technology, see Architecture of the geodatabase.

ArcSDE provides long and short transaction management on the DBMS transaction framework

One of the primary roles for ArcSDE is to support the geodatabase versioning framework in each DBMS.

Quite frequently, an individual editing transaction in a GIS can involve changes to multiple rows in multiple tables. For example, updating a parcel may require that you change the polygon's representation along with changing the corresponding boundary lines and parcel corners. In addition, attribute records for each of these features must be updated as well. This edit involves making changes to multiple records in many tables. In these cases, users want to treat this collection of edits as a single transaction. When the changes are committed or rolled back, they are managed together as a unified operation.

At the same time, users want the ability to undo and redo individual edit operations within an edit session. To further complicate this situation, the edits may need to be performed in a system that is disconnected from the central, shared database.

Furthermore, during these specialized GIS data maintenance processes, the GIS database must remain continuously available for daily operations, where each user might have a personal view or state of the shared GIS database.

The ArcSDE geodatabase supports the management and updates for these and many other data management scenarios in a multiuser environment by using a method called versioning. Versioning is a mechanism in which all database changes are recorded as rows in tables. For example, each time you update a value in a row, the old row is "retired" and a new, updated row is added.

In this way, ArcSDE technology manages such high-level, complex GIS transactions on the simple DBMS transaction framework by storing change information as delta records in the database.

NOTE: This mechanism for maintaining records of all changes along with their metadata is the genesis of the term versioning.

ArcSDE uses metadata about versions to isolate multiple edit sessions, support complex transactions, share replicas, synchronize contents across multiple databases, perform automatic archiving, and support historical queries.

See An overview of editing and maintaining data for more information.

How is ArcSDE technology included in ArcGIS?

In the past, ArcSDE was sold as a separate ESRI product. Starting with ArcGIS 9.2, ArcSDE technology has been included as capabilities within ArcGIS rather than being offered as a separate product. ArcSDE technology has been integrated into ArcGIS Desktop, ArcGIS Engine, and ArcGIS Server so that users can scale their DBMS-based geodatabases across their organizations.

ArcSDE geodatabases scale from small, personal systems up to workgroups and very large enterprises.

Beginning at ArcGIS 9.2, ArcEditor and ArcInfo have included the Microsoft SQL Server Express database free of charge. These software products also include ArcSDE capabilities to support ArcSDE geodatabases in SQL Server Express for up to three simultaneous desktop users.

Beginning with ArcGIS 9.3, ArcGIS Engine includes support for SQL Server Express free of charge. The optional Geodatabase Update extension for ArcGIS Engine is required for ArcGIS Engine applications that edit geodatabases. You can learn more about ArcGIS Engine in the book named What is ArcGIS 9.3?

Microsoft limits the use of SQL Server Express to one CPU (or Core within a Socket) and to utilize 1 GB of RAM. The maximum database size for SQL Server Express is limited to 4 GB.

Within ArcEditor and ArcInfo, the ArcCatalog application provides the ability for you to fully administer and manage ArcSDE geodatabases using SQL Server Express. This provides full ArcSDE geodatabase capabilities for up to a few users at a time. You set up and manage these ArcSDE geodatabases within ArcCatalog. No extra software or database administration expertise is required.

ArcGIS Server Workgroup also includes ArcSDE support for SQL Server Express. With this level of ArcSDE, you can use SQL Server Express for up to 10 simultaneous Windows desktop users and editors (users of ArcView, ArcEditor, ArcInfo, a custom ArcGIS Engine application, AutoCAD, MicroStation, and so on) plus any number of additional server connections from Web applications. (Consult your license agreement for specific information on the number of connections for your implementation.)

For the workgroup server, you can use ArcEditor or ArcInfo to create, administer, and manage ArcSDE geodatabases for SQL Server Express within ArcCatalog. No extra database administration expertise is required.

The ArcGIS Server Enterprise includes full enterprise ArcSDE technology with no limits. You can still run the traditional ArcSDE technology for Oracle, SQL Server, PostgreSQL, IBM DB2, and IBM Informix. ArcSDE support in the Enterprise Server level can scale to databases of any size and number of users and runs on computers of any size and configuration. With ArcGIS Server Enterprise, you provide your own DBMS license for this level of ArcSDE use. Choices include

The DBMS is typically administered and managed by a database administrator (DBA).

Summary points