데이터베이스는 어떤 필요에 의해서 만들어졌을까요?
그 필요에 따른 몇가지 특징들이 있습니다. 관계형 데이터베이스 시스템( RDBMS)의 역사는 1970년대로 거슬러 올라갑니다. 데이터 관리의 새로운 접근 방식으로 처음 소개었죠. 데이터베이스가 나오기 전에는 어떻게 관리했을지 생각해 보신 적 있으신가요? 데이터베이스란 무엇인지 보면서 한번 같이 생각해 보시죠.
데이터베이스란
데이터베이스는 회사 내에서 다수의 사용자들이 데이터를 공유해 사용할 수 있도록 통합해서 저장한 데이터의 집합체라고 할 수 있습니다. 아마도 데이터베이스가 없었을 당시에는 그냥 서류나 문서로 데이터를 관리했을 것입니다. 캐비닛에는 서류를 모아 수많은 파일 박스에 담아 놓았기 때문에 찾기도 어려웠을 것이라는 생각이 되는데요.
사람들은 어떻게 하면 효율적으로 데이터를 관리하고 또 찾아올 수 있을까를 고민하게 됩니다. DBMS가 만들어지면서 데이터를 생성하고 관리하는 일을 데이터베이스 관리 시스템에서 모두 하게 됩니다. 결론적으로 Database는 안정적이고 효율적으로 운영하는 데 필요한 기능들을 제공하는 소프트웨어입니다.
DBMS 특징
1. 데이터의 중복성을 최소화
- 데이터베이스를 이용하면 업무의 흐름에 따라 데이터를 통합 및 분리하여 관리할 수 있게 되므로 중복성을 줄일 수 있습니다.
- 예를 들어 1번 홍길동을 입력 후 2번 홍길동과 같이 동일 인물을 두번 입력하는 것을 방지해 줍니다.
- 이 부분은 모델링의 정규화에 해당 됩니다.
2. 데이터의 일관성을 유지
- 데이터의 불일치성(Inconsistency)을 미리 방지하여 데이터를 정확하게 만들어서 사용자에게 신뢰할 만한 정보를 제공할 수 있습니다.
- 데이터베이스 트랜잭션이라는 개념으로 일관성을 유지합니다.
3. 데이터의 무결성을 유지
- 무결성(Integrity)이란 데이터베이스에 정확한 데이터가 유지되고 있음을 보장하는 것을 말합니다.
- 제약조건에 맞지 않는 데이터는 아예 입력되지 않도록 방지하는 기능을 제공해 데이터베이스의 무결성을 유지하는 방식입니다.
- 기능적으로는 참조 무결성, 도메인 무결성 등이 있습니다.
4. 데이터의 독립성을 유지
- 데이터의 표현 방법이나 저장 위치가 변하더라도 응용 프로그램에는 아무런 영향을 미치지 않는 것을 독립성이라고 합니다.
- 관계형 데이터베이스의 경우 데이터를 테이블 구조로 관리하기 때문에 독립성을 더욱 강화할 수 있습니다.
5. 데이터의 공유성을 최대화
- 데이터베이스는 공동작업에 맞게 구조적으로 설계되며 통합된 체계에 의해 저장된 값들이 유지· 관리되어야 합니다.
- 조직의 구성원들은 응용 프로그램을 통해 데이터베이스에 저장된 공유 데이터들로부터 각자의 업무에 필요한 정보를 생성할 수 있습니다.
6. 데이터의 보안성을 보장할 수 있음
- 데이터베이스 시스템의 성능을 평가하는 중요한 요소로, 최근 대부분의 데이터베이스 시스템은 이러한 보안 기능을 제공합니다.
7. 데이터를 표준화하여 관리
8. 데이터의 목적에 따른 형식 및 관리
- 데이터를 사용 목적 등의 유형별로 분류해 데이터의 형식이나 길이, 이름 등을 설정할 수 있습니다.
마무리
위에서 설명한 것처럼 DBMS는 8가지의 특징을 가지고 있습니다. 또 RDBMS는 여러 테이블 간의 관계를 정의하고 이를 활용하여 복잡한 데이터 검색 및 분석을 수행할 수 있게 설계되어야 합니다. 그리고 RDBMS는 ACID(Atomicity, Consistency, Isolation, Durability) 트랜잭션을 지원하여 데이터 일관성과 안정성을 보장합니다.
'데이터베이스' 카테고리의 다른 글
데이터베이스(Database) 종류, DB 역사는 어떻게 달라졌나? (1) | 2023.11.06 |
---|---|
데이터베이스 아키텍처 구성 요소 및 작동 원리 (0) | 2023.11.03 |
데이터 표준화 - 표준 코드, 코드 유형, 코드 에러 사례 (0) | 2023.10.31 |
데이터 표준화 - 표준단어, 도메인, 표준용어 (0) | 2023.10.30 |
데이터 표준화 필요성 및 기대효과 (1) | 2023.10.30 |