You are here:
Geodatabases and ArcSDE
An overview of the Geodatabase
The geodatabase is a "container" used to hold a collection of datasets. There are three types:
- 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. This option is recommended over personal geodatabases.
- Personal Geodatabases—All datasets are stored within a Microsoft Access data file, which is limited in size to 2 GB.
- ArcSDE Geodatabases—Stored in a relational database using Oracle, Microsoft SQL Server, IBM DB2, or IBM Informix. These multiuser geodatabases require the use of ArcSDE and can be unlimited in size and numbers of users.
Comparing the three types of Geodatabases
Learn about creating geodatabases
File geodatabases and personal geodatabases
||A collection of various types of GIS datasets held as tables in a relational database
This is 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
Many readers and many writers
ArcSDE can be licensed for use at three levels:
- Personal ArcSDE
- Workgroup ArcSDE
- Enterprise ArcSDE
|Single user and small workgroups
Some readers and one writer per feature dataset, standalone 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.
- Microsoft SQL Server
- IBM DB2
- IBM Informix
|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).
|Up to DBMS limits
||One TB for each dataset. Each file geodatabase can hold many 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.
||Fully supported across all DBMSs; includes cross-database replication and updates
||Windows, Unix, Linux, and direct connections to DBMSs that can potentially run on any platform on the user's local network
|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
|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.
File and personal geodatabases, which are freely available to all ArcGIS users (i.e., 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 providing they are editing in different feature datasets, standalone feature classes or tables.
The file geodatabase is a new geodatabase type released in version 9.2. Its goals are to
- Provide a widely available, simple, and scalable geodatabase solution for all users.
- Provide a portable geodatabase that works across operating systems.
- Scale up to handle very large datasets.
- Provide excellent performance and scalability, for example, to support individual datasets containing well over 300 million features and datasets that can scale beyond 500 GB per file with very fast performance.
- Use an efficient data structure that is optimized for performance and storage. File geodatabases use about one third of the feature geometry storage required by shapefiles and personal geodatabases. File geodatabases also allow users to compress vector data to a read-only format to reduce storage requirements even further.
- Out perform shapefiles for operations involving attributes and scale the data size limits way beyond shapefile limits.
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, it is also highly recommended to use the file geodatabase. It 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.
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 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, and SQL Server). ArcSDE geodatabases are primarily used in a wide range of workgroups, departments, and enterprise settings. They take full advantage of their underlying DBMS architectures to support
- Extremely large, continuous GIS databases
- Many simultaneous users
- Long transactions and versioned workflows
- Relational database support for GIS data management (providing the benefits of a relational database for scalability, reliability, security, backup, integrity, etc.)
- SQL Types for Spatial when the DBMS supports this capability (i.e., Oracle, Informix, and DB2).
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 GIS file bases.
For information about the ArcSDE geodatabase architecture and how ArcSDE geodatabases leverage relational database technology, see Architecture of the geodatabase
There are three levels for accessing and using ArcSDE in ArcGIS
ArcSDE geodatabases readily scale from personal, single-user geodatabases through workgroup geodatabases, and on up to extremely large enterprise geodatabases. ArcSDE geodatabase capabilities are available in the following ESRI software products:
Personal ArcSDE included with ArcEditor and ArcInfo: Beginning at Version 9.2, ArcEditor and ArcInfo include the Microsoft SQL Server Express database free of charge. These desktops also include ArcSDE capabilities to support "personal ArcSDE" geodatabases for three simultaneous users—one of whom can edit data.
SQL Server Express is limited to run on one CPU (or Core within a Socket) and utilize 1 GB RAM. The maximum database size for SQL Server Express is limited to 4 GB.
Personal ArcSDE provides the ability to fully administer and manage ArcSDE geodatabases using SQL Server Express within ArcEditor and ArcInfo. This provides full ArcSDE geodatabase capabilities for a few users and one editor at a time. You set up and manage these ArcSDE geodatabases within ArcCatalog. No extra software or database administration expertise is required.
Workgroup ArcSDE included with ArcGIS Server for Workgroups: ArcGIS Server for Workgroups 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 (for example, 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.)
SQL Server Express is limited to running on one CPU or Core with a maximum of 1 GB RAM. Database sizes are limited to a maximum of 4 GB.
As with personal ArcSDE, you use ArcEditor or ArcInfo to create, administer, and manage workgroup ArcSDE geodatabases. You set up and manage these workgroup ArcSDE geodatabases using SQL Server Express within ArcCatalog. No extra database administration expertise is required.
In this context, you can think of ArcGIS Server for Workgroups as being an extension for ArcEditor or ArcInfo to help you manage and serve workgroup ArcSDE geodatabases. Of course, ArcGIS Server can perform many more functions and tasks. See An overview of GIS services
Enterprise ArcSDE included with ArcGIS Server for Enterprises: This is the traditional ArcSDE technology that runs on Oracle, SQL Server, IBM DB2, and IBM Informix and can scale to databases of any size and number of users, running on computers of any size and configuration. Users provide their own DBMS license for this level of ArcSDE use. The DBMS is typically administered and managed by a database administrator (DBA).
To learn more about ArcGIS Server, see An overview of GIS services
|You do not need to monitor and manage the use of your memory and cpu's for SQL Server Express. The SQL Server Express software will automatically limit computer use to 1 GB RAM on a single cpu and to a database size of 4GB.
|Personal ArcSDE is included free as a part of ArcEditor and ArcInfo. If you choose to install SQL Server Express, you can administer SQL Server Express databases using ArcCatalog.
|When you install the ArcGIS Server for Workgroups, you can install and use SQL Server Express and ArcSDE. After installing SQL Server Express, you can use ArcCatalog to administer SQL Server Express databases on your computer.
|These various levels enable users to take full advantage of ArcSDE geodatabases for any number of users, large or small. It allows organizations to have one scalable data architecture that works across their single user systems up into their large enterprise systems.
ArcSDE provides long and short transaction management on the DBMS transaction framework
The ArcSDE geodatabase includes advanced support for managing edits and updates to a multiuser geodatabase. As GIS increasingly adds users and the requirement to manage data from an array of sensor networks, the need for transaction management becomes more critical. In GIS, long transactions are needed along with the more common, short database transactions that are orchestrated on the DBMS's short transaction framework.
Often, GIS users have specialized transactional requirements, one of which is the need for some transactions to span long periods of time (sometimes hours, even days and months, not just seconds or minutes).
Additionally, a single editing session in a GIS can involve changes to multiple rows in multiple tables. Users need to be able to undo and redo changes. Users want to treat each edit session as a single transaction when they commit their changes. Furthermore, the edits must often be performed in a system that is disconnected from the central, shared database.
During these specialized GIS data flow 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.
In a multiuser database, the GIS transactions must be orchestrated on the DBMS's short transaction framework. ArcSDE plays a key role during these operations by managing the high-level, complex GIS transactions on the simple DBMS transaction framework.
ArcSDE does this by storing change information as delta records in the database; isolating multiple edit sessions using versions; and supporting complex transactions, automatic archive, and historical queries.
See An overview of editing and maintaining data
for more information.