반응형
T아카데미 데이터베이스 기초 강의를 요약한 내용입니다.
1. DBMS 란?
- 데이터베이스를 관리하는 시스템
- 데이터를 저장하고 유지보수하고 이를 검색하는 시스템
- 대량의 데이터를 처리하는 시스템
- 다양한 자료구조와 검색구조(소팅 , 인덱식)을 사용해 빠른 검색 가능
- 대부분의 시스템은 R (검색) >> >> CUD(업데이트)의 빈도수가 많다 (반대의 경우 NoSQL과 같은 다른 기술들이 필요하다 )
- 검색에 최적화 되어있다
정렬
- 빠른검색을 위해서는 데이터는 반드시 정렬(Sorting)되어 있어야 한다.
- 정렬 되어 잇지 않다면 평균적으로 전체 데이터의 절반의 시간이 필요하다 (최선 : 1 , 최악 : N , 평균:N/2)
- 정렬되어 있다면 데이터를 빠른 시간안에 찾을 수 있다 (O(NlogN)-ON²)
- 퀵정렬/힙정렬 계열이 주로 사용된다.
인덱스
-B-Tree 계열검색을 위해 미리 만들어 놓는 자료구조를 말한다.
검색에 사용되는 2가지 방식
이진검색 (Binary Search)
- 최대 log₂(N)번 내에 검색이 가능하다 (아래의 예로는 데이터는 10개가 존재하기때문에 2ᴺ>10 인값은 최대 검색 수는 4번)
- 데이터를 절반으로 나누며 검색한다 .
- 데이터를 나누는 특정 기준점이 되는 값들을 인덱스라 한다 (아래의 예시로는 절반이되었던 지점들)
- 데이터가 추가 / 삭제 / 변경될 대마다 인덱스 값도 변경 되어야 한다
ex) 1~10 까지가 정렬 되있다 할때 9가 찾고 싶다고 가정한다면 전체 데이터에서 한가운데에서 5을 찾고 뒤쪽에서의 절반을 나눠 8 다시 뒤쪽 절반을 나눠 9를 찾게된다.
B-Tree 계열
- 최대 log₃(N)번 내에 검색이 가능하다
- 상용 DBMS에서 가장 일반적으로 많이 사용된다.
- 이진 검색과 유사하지만 한번에 비교를 3번한다.
-
작은 값보다 작은경우 x < a 큰 값과 작은 값 사이인 경우 a < x < b 큰 값보다 큰 경우 x > b
2. DBMS의 종류
- 계층형 데이터베이스
- 네트워크형 데이터베이스
- 관계형 데이터베이스 (RDBMS)
- 객체지향 데이터베이스
- 객체관계형 데이터베이스 (ORDBMS)
- NoSQL(Not Only SQL)
3. RDBMS 란?
- 관계형 데이터베이스 시스템을 말한다.
- 테이블끼리의 중복정보는 최소화시켜야한다.(정규화 Nomarlize)
- 테이블 기반의 DBMS이다 (테이블-컬럼형태의 데이터 저장 방식 , 테이블과 테이블 간의 연관관계(주로 외래키 형태)를 이용해 필요한 정보를 구한다.)
- 모델링은 E-R(Entity Relationship) 모델을 사용한다.
- 테이블을 엔티티(기본)와 릴레이션십(유도) 테이블로 구분하는 방식이다
- 연관관계의 테이블을 join 문을 통해 필요한 정보를 뽑아낼 수 있다.
RDBMS 기본 용어
스키마(Schema) | - DB , 테이블 정의 내역 |
SQL 쿼리 | - 관계형 DBMS를 사용하는 전용 질의언어 - 대소문자를 가리지 않는다 |
기본키(Primary key) | - 테이블에서 하나의 레코드를 지정할 수 있는 하나 이상의 컬럼집합 예) 주민등록번호 , SSN(Social Security Number) |
외래키(Foreign Key) | - 어떤 테이블의 기본키가 다른 테이블의 컬럼에 들어 있을 경우 |
테이블 | - 정보들의 묶음단위 |
컬럼 | - 테이블을 구성하는 정보들 |
레코드 | - 테이블에 들어 잇는 여러가지 인스턴스 하나하나를 말한다 - 기본키로 구별가능 |
도메인 값(Domain Value) | - 각 컬럼에서 나올 수 있는 후보값 |
반응형
'RDBMS' 카테고리의 다른 글
DBMS 공부 6 - 데이터베이스 백업과 복원 , 데이터베이스 로그 (0) | 2022.03.15 |
---|---|
DBMS 공부 5 - 메타데이터 , 캐릭터셋/콜레이션 , 스토리지 엔진 (0) | 2022.03.12 |
DBMS 공부 4 - SQL의 이해와 종류 (DCL , INDEX) (0) | 2022.03.12 |
DBMS 공부 3 - SQL의 이해와 종류 (DDL) (0) | 2022.03.08 |
DBMS 공부 2 - SQL의 이해와 종류 (DML) (0) | 2022.03.01 |