대학원 1학기에 데이터베이스 수업의 조교를 맡으며 sqld취득 후, 오랜만에 sql공부를 해본다.
조교인 내가 학생들보다 못할 수는 없으니,,, 틈틈이 시간을 쪼개며 공부한 내용들을 기록해보겠다.
<데이터베이스 시스템>
정보를 저장하고 사용자로 하여금 필요한 정보를 검색 또는 변경할 수 있도록 해주고, 데이터를 관리 보호하는 시스템.
데이터베이스, DBMS, 사용자, SW를 운용할 컴퓨터로 구성
<데이터베이스>
테이블의 집합이며, 각 테이블을 relation 또는 relation table이라 부름.
테이블의 row를 record, 테이블의 column을 field 또는 attribute라 부름.
MySQL에서 테이블을 정의할 때 primary key를 지정.
이때 primary key로 지정되는 attribute는 중복이 없고 null 값을 갖지 않아야 함.
저장된 상태가 지속되는 persistent 데이터임(<-> transient 데이터 ex>입력데이터, 출력데이터, 중간검색결과 등)
DBMS에 의해서만 입력 및 삭제가 가능
<DBMS>
사용자들에게 데이터베이스를 저장, 관리, 질의 서비스를 제공하는 소프트웨어로서 사용자의 모든 요청을 받아 데이터베이스를 접근 처리하여 주는 역할
즉, DBMS는 DB사용자에게 복잡한 file 작업이나 프로그래밍 작업을 하지 않아도 편리하게 데이터베이스를 이용할 수 있게 해주는 소프트웨어
사용자들은 DBMS를 통하지 않고 데이터베이스를 접근할 수 없음.
사용자에게 데이터베이스가 테이블처럼 보이게 하는 relation 관점을 제공
이를 통해 사용자는 테이블에 대한 연산을 SQL로 처리할 수 있음.
결국 데이터베이스 시스템 안에 데이터베이스가 포함되는 것.
그렇다면 동시접근이란 무엇일까?
<동시접근>
데이터베이스 시스템의 데이터베이스는 응용에 필요한 모든 운영 데이터를 저장하므로 통합되고, 사용자들이 공유.
(여기서 통합된 데이터는 여러 응용들에서 필요한 테이블들을 모은 것이므로 중복의 최소화가 필수)
데이터베이스의 공유는 사용자들 또는 응용 프로그램들에 의해 이루어짐.
상이한 사용자는 상이한 목적으로 데이터를 사용하는데 같은 데이터를 사용할 수도 있게됨.
즉, 상이한 사용자들이 동시에 같은 데이터를 접근 및 사용하게 될 수도 있음
이런 경우를 트랜젝션(transaction)처리를 위한 동시 접근(concurrency access)라고 함.
'대학원 공부 > 데이터베이스' 카테고리의 다른 글
[DB] 분산 데이터베이스 처리 (0) | 2022.11.02 |
---|---|
[DB] 데이터베이스 시스템 구조Ⅱ(Database System Architecture Ⅱ) (0) | 2022.11.02 |
[DB] 데이터베이스 시스템 구조(Database System Architecture) (0) | 2022.11.01 |
[DB] 데이터 독립성(Data Independence) (0) | 2022.10.31 |
[DB] 데이터베이스 시스템 (0) | 2022.10.31 |