Database :
A Collection of
Integrated,
Stored,
Operational,
Shared Data
for Multiply Application Systems(Programs) of an Organization
줄여서 CISOSDaMASO
이러한 Database를 관리하는 프로그램을 DBMS(Database Management System)라고 하며,
Database와 DBMS 등 모두 합쳐서 Database System이라고 합니다.
데이터베이스에서 특정 레코드를 대표하는 값을 식별자라고 합니다.
1, 2세대 DBMS에서는 주소(Pointer)를 식별자로 사용했습니다.
하지만, 데이터의 추가와 삭제가 자주 일어나게 되면 해당 데이터의 위치가 바뀌어 주소값이 지속적으로 바뀌게 됩니다.
따라서 3세대 DBMS부터는 기본 키(Primary Key)를 식별자로 이용합니다.
Pointer의 경우, 해당 주소값에 직접 접근을 하면 되었기 때문에 찾는 속도가 빨랐습니다.
기본 키의 경우 데이터를 찾아야 하기 때문에 Pointer보다 속도가 떨어질 수 밖에 없습니다.
따라서 데이터베이스의 일부분에 index(찾아보기)를 저장해 속도를 보완합니다.
데이터베이스의 특징은 다음과 같습니다.
1. 자기기술성
- Metadata(Schema), Data(Instance)
- 여기서 Schema는 Instance를 설명하는 데이터입니다.
- Instance는 DB에 저장된 실제 데이터입니다.
2. 프로그램과 데이터의 분리
- DB의 구조가 변경되어도 프로그램 운영에는 지장이 없는, 응용프로그램과 데이터베이스의 독립성을 보장합니다.
3. 데이터 추상화
- 데이터의 자세한 정보는 숨기고, 사용자가 원하는 요소들을 골라 View 형태로 제공합니다.
4. 다양한 뷰(View) 제공
- 한 DB에 사용자가 원하는 요소들을 이용해 다양한 뷰를 제공합니다.
5. 데이터 공유와 다수 사용자 트랜잭션 처리
- 한 DB를 여러 사용자가 이용할 수 있습니다.
- 여러 사용자가 같은 데이터를 수정하더라도, 해당 데이터는 일관된 정보를 유지해야 합니다.
ex) 비행기 좌석을 예매할 경우, 여러 플랫폼(Skyscanner, Expedia, Kakao T 항공, 네이버 항공 등)에서 같은 좌석을 예매해도 한 명의 승객에게만 좌석을 배정해야 합니다.
데이터베이스 사용자는 다음과 같이 분류합니다.
1. 데이터베이스 관리자 (Database Administrator, DBA)
- DB 관리를 책임지는 사람
2. 데이터베이스 설계자 (Database Designer)
- DB 설계를 책임지는 사람
3. 최종 사용자 (End User)
- 캐주얼 사용자 : 고객
- 초보 사용자 : 정해진 작업을 수행하는 사람 (ex: 은행원, 여행사 예약 담당자 등)
- 전문 사용자 : DBMS를 사용하는 전문가
4. 시스템 분석가 / 응용 프로그래머
데이터베이스가 작동될 수 있도록 하는 사람들, 일명 '무대 뒤의 사람들' 입니다.
1. DBMS 설계 및 구현자
2. 도구 개발자
3. 운영, 유지보수 요원 (HW 관리 등)
DBMS의 장점은 다음과 같습니다.
1. 중복성 방지
- 중복된 DB를 합쳐서 데이터 일치성을 보장하며, 메모리 낭비를 방지합니다.
모든 상황에서 DBMS가 필요한 것은 아닙니다.
DB의 응용이 단순하고 잘 정의된 경우, DB가 변경될 가능성이 적은 경우는
맞춤형 데이터베이스 프로그램을 개발하는 게 더 나을 수도 있습니다.
'Database' 카테고리의 다른 글
[Database] 데이터베이스 시스템 (0) | 2023.04.18 |
---|
댓글