1. 실세계와 그 표현
자료나 정보를 표현할 때 우리는 실세계의 일부를 가능한한 현실세계에 존재할 것으로 예상하는 형태에 가깝게 표현한다. 컴퓨터 시스템을 이용하여 그러한 표현을 쉽게 저장할 수 있다. 실세계의 일부를 표현한다고 한 이유는 실세계를 완벽하게 표현하는 것이 불가능하기 때문이다. 실세계의 어떠한 부분을 표현해야 하는가는 구성하고자 하는 컴퓨터 시스템과 목적의 관련성을 통해 알 수 있다. 실세계의 일부만 표현할 수 있다는 사실을 통해 시스템에 대한 기대치를 낮추어야 함을 알 수 있다. 미래에 생성될 모든 자료는 처음에 입력한 자료로부터 추출되기 때문이다. 일반적으로 실세계의 일부분을 적절하게 컴퓨터로 표현하면 자료를 입력하거나 저장하고 다른 사람이나 시스템에 전송할 수 있다.
2. 모델링
모델링(Modeling)이란 단어는 여러 분야에서 다양한 의미로 사용된다. 실세계의 일부를 표현하는 것도 일종의 모델링이라 할 수 있는데, 이는 실세계와 어떠한 공통된 특징이 있기 때문이다. 즉, 실세계 그 자체가 아닌 실세계를 표현한 모델을 대상으로 연구를 수행할 수도 있다. 모델은 사용하여 현상을 연구하면 여러 가지 다른 시나리오를 자유롭게 적용할 수 있다. 모델에서 자료값을 변경함으로써 변화에 대한 효과를 추측할 수 있다.
GIS 환경에서 가장 친숙한 모델은 지도(map)이다. 지도는 실세계의 일부를 축소하여 표현한 것이다. 지도의 종류에는 종이지도, 수치지도 등이 존재한다. 또 다른 중요한 모델 중에 하나는 데이터베이스(Database)이다. 데이터베이스는 많은 양의 자료를 저장하고 저장된 자료를 처리할 수 있는 여러 가지 기능을 제공한다. 특히 공간정보를 포함하는 데이터베이스를 가리켜 공간 데이터베이스라 부른다.
데이터 모델링은 데이터베이스를 설계하는 작업을 수행하면서 많이 사용된다. 데이터베이스에 저장할 유사한 자료들을 구분하고 이러한 자료들간의 관계를 설정하는 작업을 데이터 모델링이라 한다. 공간 데이터 모델은 공간 자료에 대한 데이터 모델링을 말한다.
지도와 데이터베이스는 어느 특정시점에서 어떠한 사건들의 한 상태만을 표현하는 정적인(static) 모델이다. 이러한 모델만으로는 대부분 실세계의 개발 혹은 변화 등을 쉽게 알아내기 어렵다. 동적(dynamic) 모델을 사용하면 이러한 변화를 보다 정확하게 표현할 수 있다. 동적 모델은 과거, 현재 또는 미래에 발생할 변화를 강조하는 모델이다. 동적 모델은 본질적으로 정적 모델보다 복잡하고 직관적인 표현을 획득하기 위해 보다 많은 계산을 필요로 한다. 시뮬레이션 모델(Simulation model)은 실세계에서 발생하는 일을 표현할 수 있는 동적 모델의 한 형태라 할 수 있다.
3. 지도
실세계를 표현하는 데에 가장 널리 사용되는 전통적인 모델은 지도이다. 지도에 대한 구상 및 설계 방법등은 복잡한 기술로 발전되어 왔으며 다양한 분야의 많은 응용에서 효율적으로 인정되어 왔다.
지도의 단점은, 2차원의 정적인 모델로 표현된다는 점과 정해진 축척으로 고정되어 표현된다는 점이 있다. 지도의 축척이 결정되면 공간 객체를 표현할 수 있는 공간 해상도가 결정된다. 축척이 작아지면 지도의 세세한 부분에 대한 표현이 줄어든다. 지도는 항상 표현하고자 하는 대상의 세밀한 정도에 따라 축척이 결정된다. 지도는 물리적인 경계가 존재하므로 두 장의 지도에 걸쳐있는 지형지물은 나누어서 그려진다.
컴퓨터 시스템이 발전함에 따라 종이에 그려지는 아날로그 지도들은 디지털 지도, 수치지도로 바뀌게 되었다. 현대에 들어서 지도에 대해 언급할 경우 암묵적으로 수치지도를 의미한다. 지도제작에서 컴퓨터를 사용하는 것은 현대에선 당연한 사실이 되었으며 이에 따라 지도의 역할도 바뀌고 있다. 지도의 역할 중 저장하는 역할은 점점 사라지고 있으며 자료를 저장하는 역할은 공간 데이터베이스가 담당하고 있다.
4. 데이터베이스
데이터베이스는 다량의 자료를 저장할 수 있는 저장창고이다. 데이터베이스의 유용한 기능으로는 다음과 같은 것들이 있다. 우선, 데이터베이스는 여러 사람이 동시에 사용할 수 있다. 이를 데이터베이스의 동시사용성이라 한다. 또한 자료를 효율적으로 저장하고 효과적으로 사용할 수 있는 기법을 제공한다. 저장하고자 하는 데이터에 일정한 규칙을 부여함으로써 데이터 갱신 시 자동적으로 점검할 수 있는데, 이를 데이터베이스의 자료무결성이라 한다. 데이터베이스의 검색 기능을 통해 자료처리 언어를 사용하여 쉽게 데이터를 추출하거나 갱신할 수 있다. 마지막으로 데이터베이스는 검색에 최적화되어 각각의 자료처리에 대한 검색을 가장 효율적인 방식으로 수행한다는 특징이 있다.
데이터베이스는 거의 모든 종류의 자료의 저장이 가능하다. 현대의 데이터베이스 시스템은 테이블 형태로 자료를 저장한다. 데이터베이스는 이러한 테이블이 여러 개 있을 수 있으며 각 테이블은 비슷한 종류의 자료를 저장한다.
데이터베이스 설계는 어떠한 테이블이 존재하며, 각 테이블에는 어떠한 속성이 존재하는가를 결정하는 작업이라 할 수 있다. 데이터베이스의 설계가 완료되면 데이터베이스 스키마(Database schema)가 작성되는데 이때 데이터베이스 스키마는 데이터 모델이라는 언어를 사용한다. 데이터 모델은 어떠한 종류의 모델이 아니라 모델을 정의하기 위해 사용하는 일종의 언어이다. 이 언어를 사용하여 모델을 정의하는 것을 데이터 모델링이라 하고 그 결과로 인해 스키마가 작성된다.