incastle의 콩나물
Database Concepts Chapter 1. Getting Started 본문
데이터베이스 이론 및 실습 정재윤 교수님 수업 (19-1)
Purpose of a database
- to keep track of things
- spreadsheet나 list와 다르게 database는 좀 더 복잡하다.
Problems with lists : Redundancy
- list는 중복된 데이터가 들어갈 수 있다.
- 특정 사람이 project 10개를 관리하고, 각 row마다 모든 정보 때려 박아
- 특정 사람의 신상 정보도 계속 중복해서 들어감
Problems with lists : Multiple Themes
- list는 하나의 table에 하나의 theme이 담김
- database는 목적에 따라서 table 분리할 수 있음
- 왜냐면 table마다 연결이 됐으니까
List Modification Issues
- Deletion problems : 진행중인 프로젝트만 남기고 싶어서 지음 -> 프로젝트 매니저 정보도 날라감
- Update problems : 매니저 신상 정보가 변경되면 모든 매니저 신상 정보를 변경해야 함
- Insertion problems : 매니저 정보만 추가하고 싶은데 진행한 프로젝트가 없음
Relational Database
- 하나의 table에는 하나의 topic이 담긴다.
- 그렇게 하기 위해서 list를 뽀갠다.
- 하지만 어떠한 방법으로 다시 join 할 수 있음(Primary key, foreign key)
- 기존 list보다 복잡하지만 solid foundation을 제공한다.
What is a Database System?
- Database : 관계형 테이블의 집합체
- Database Management System(DBMS) : create, process, administer the database를 하는데 사용하는 컴퓨터 프로그램(access), SQL을 받아서 action을 취함다.
- Database Application : user와 DBMS 사이에서 작동하는 컴퓨터 프로그램
- User : database application을 사용하는 사람(to keep track of things), 입력, 출력, 삭제하기 위한 form을 사용하고 report를 만든다.
Database
- Self-describing한 관계형 데이터들의 집합
- Self-describing
>> database 자체가 해당 구조를 정의 하고 있다는 것
>> Metadata가 database의 구조에 관한 데이터다.
>> Metadata : table의 이름, column의 이름, 속성 등
Database Management System(DMBS)
- Database와 Database Application 중간에서 작동
- database activities를 관리-조정한다.
- ex) ms sql, oracle MySQL, IBM DB2
Functions of a DMBS
- Create database, table
- Read database data
- Modify database data(insert, update, delete)
-->CRUD
- Maintain database structures
- Enforce rules
- Control concurrency(한 명이 작업한다고 다른 사람 방해 ㄴㄴ)
- Provide security(보안은 생명입니다!)
- backup and recovery (백업할 수 있어야지)
Database Applications
- 4가지 기능
>> Execute(실행하다) application logics
>> Control database applications
>> Process user queries
>> Create and Process forms
>> Create and Process reports
Personal Database Systems
- one application >> 하나의 application을 갖는다.
- only a few tables >> 당연히 table은 적겠지
- simple design >> 혼자하니까 design이 간단하지
- involve only one computer
- support one user at a time (하지만 DBMS는 concurrency를 보장한다)
- MS의 Access는 이러한 목적성을 위한 도구! DBMS와 Database application의 역할을 동시에 수행한다.
Enterprise-Class Database Systems
- 여러명의 유저가 동시에 작업 가능
- complex design
- many table
- many database
- involve multiple computers
'19-1 대학 수업 > 데이터베이스 이론 및 실습' 카테고리의 다른 글
Database Concepts Chapter 6. Database Administration (0) | 2019.06.01 |
---|---|
Database Concepts Chapter 5. Database Design (0) | 2019.06.01 |
Database Concepts Chapter 4. Data Modeling and the Entity-Relationship Model (0) | 2019.05.31 |
Database Concepts Chapter 3. SQL (0) | 2019.04.22 |
Database Concepts Chapter 2. The Relational Model (0) | 2019.04.21 |