데이터베이스가 등장하기 이전에는 모든 데이터를 파일 시스템으로 관리하였다. 파일 시스템은 데이터를 파일 단위로 저장하고 처리하기 때문에 데이터의 변경이나 삽입, 삭제와 같은 과정에서 데이터 종속성, 중복성, 무결성 침해와 같은 문제가 발생하기 쉽다. 데이터 베이스는 데이터 베이스 자체에서 이러한 문제가 발생하기 전에 실행을 거부하는 등의 액션으로 데이터를 보호한다.
여러 경로를 통해 잘못된 데이터가 발생하는 경우를 방지하는 기능으로 데이터의 유효성 검사를 통해 데이터 무결성을 구현한다. 보통 무결성은 외래키를 설정한 이후에 깨지는 경우가 발생하고, 이 경우 무결성을 지키기 위한 제약 조건을 정해줄 수 있고, 그 제약 조건들은 다음과 같다.
권한을 부여받은 사용자만이 데이터베이스나 데이터베이스 내의 자원에 접근할 수 있도록 계정 관리, 접근 권한 설정하여 모든 데이터에 대한 보안을 구현한다.
연관된 정보를 논리적인 구조로 관리하여 어떤 하나의 데이터만 변경하였을 경우 발생할 수 있는 데이터의 불일치성을 배제할 수 있다.
데이터베이스는 여러 데이터를 통합 관리하여 데이터의 중복을 최소화한다.
데이터베이스의 성능은 디스크 I/O의 양에 따라 결정된다. 디스크 I/O는 디스크 드라이브의 플레터를 돌려 읽어야 할 데이터가 저장된 위치로 디스크 헤더를 이동 시킨 후 데이터를 읽는 것이다. 이를 효율적으로 처리하기 위해서는 디스크 헤더의 이동이 최소화되어야 한다. 이 때문에 순차적 I/O가 랜덤 I/O보다 빠르다. 그러나 현실에서는 대부분이 랜덤 I/O이다. 이 랜덤 I/O들을 순차적 I/O로 바꾸는 것이 데이터베이스 쿼리 튜닝이다.