UNDERSTANDING OF RELATIONSHIPS AMONG DATABASE OBJECTS
Understanding of Relationships among Database Objects assesses a GIS professional’s ability to model and manage logical connections between various components of a spatial database. This includes understanding how tables, feature classes, and geodatabases and relational databases. Practitioners must grasp the difference between one-to-one, one-to-many, and many-to many relationships, and understand how this effect data integrity, query performance, and the ability to perform meaningful analysis. For the GISP Exam, candidates should demonstrate both conceptual and applied understanding of how database objects interact, ensuring that data is structured in a way that supports robust, scalable GIS workflows.
KEY CONCEPTS AND TERMINOLOGY
A. Schema: structure or design of the database or database object (table, view, index, stored procedure, trigger) - defines the tables, fields in each table, relationships between fields - a schema will include information on which fields have domains and what those domains are.
B. Data dictionary: catalog or table containing information about the datasets stored in a database.
C. Domain: the range of values for a particular metadata element
D. Attribute domain: enforces data integrity, identify what values are allowed in a field in a feature class.
E. Coded value domain: attribute domain that defines a set of permissible values for an attribute in a geodatabase - it has a code and its equivalent value.
F. Range domain: type of attribute domain that defines the range of permissible values for a numeric attribute.
G. Spatial domain: allowable range for x, y coordinates and for m, z values.
H. Tables: collection of related data held in structured format within a database, contains fields and rows
I. Views: result set of a stored query on the data - users can query - virtual table computed dynamically from data when the view is accessed.
J. Sequences: ordered collection of objects in which repetitions are allowed (finite or infinite) number of elements is the length of the sequence.
K. Synonyms: Alias or alternate name for a table, view, sequence, or other object.
L. Indexes: data structure that improves the speed of data retrieval operations in a database table.
- Causes more storage space and additional writes.
- Quickly locate data in the database
- Indexes can be on multiple columns.
M. Clusters: Can either be:
- Multiple servers share one storage – this procedure is typically used to handle user load balancing.
- Databases are distributed to different servers using replication - this is typically used if you have multiple users utilizing the same data in different physical locations. There is a master database that the replica databases sync between.
N. Database Links: data stored in a different database but accessible by to the database currently being accessed.
O. Snapshot: state of a system at a particular point in time - can be a backup.
P. Procedure: sometimes referred to as a “stored procedure”, is a subroutine available to applications that access a relational database system (data validation, access control mechanisms).
Q. Trigger: procedural code automatically executed in response to certain events on a particular table or view in a database
R. Functions (subroutine): sequence of program instructions that perform a specific task.
S. Package: built from source with one of the available package management systems
T. Non-schema objects: users, roles, contexts, directory objects