SONG's 개발새발

DB(데이터베이스)

2019-05-30

DB (DataBase)


1. DataBase 란

1. 데이터의 저장소

2. 특징

  1. 사용자의 질의에 대한 즉각적인 처리와 응답
  2. 생성, 수정, 삭제를 통해 항상 최신의 데이터 유지
  3. 사용자들이 원하는 데이터를 주소가 아닌 내용에 따라 참조 가능
  4. 응용프로그램과 데이터베이스는 독립되어 있어, 데이터의 논리적 구조와 응용프로그램은 별개로 동작

2. DataBase의 종류

  1. 계층형 데이터베이스

    • 데이터 관계 : 트리 구조 (부모, 자식 형태)
    • 데이터 중복 문제
  2. 네트워크형 데이터베이스

    • 데이터 관계 : 그물형 구조
    • 데이터 중복 문제 해소, 데이터 간 다양한 관계를 갖음
    • 복잡한 구조로 인한 수정의 어려움
  3. 관계형 데이터베이스 ( RDBMS )

  • 데이터 관계 : Table 관계
  • SQL을 사용해 데이터 관리 및 접근
  1. NoSQL 데이터베이스
  • 데이터 관계 : key, value의 형태 ( 일관성 모델 )
  • 관계형 DB보다 덜 제한적
  • 키를 사용해 데이터 관리 및 접근

_ SQL NoSQL
특징 1. 데이터 사이 관계가 있다.
2. Table 구조
1. 데이터 관계가 필요치 않다. (SQL 개선/ 보완)
2. key, value로 정의
장점 1. 범용적, 고성능
2. 데이터의 일관성
3. 정규화에 따른 갱신 비용 최소화
1. 대용량 데이터에 적합
2. 데이터 분산 처리
3. cloud computing
4. 빠른 읽기 / 쓰기
5. 유연한 데이터 모델링
단점 1. 대량의 데이터 입력 처리
2. 갱신이 발생한 테이블의 인댁스 생성 및 스키마 변경
3. 컬럼의 확장 어려움
4. 단순히 빠른 결과
1. 데이터 중복 발생이 쉬움
2. 불필요한 중복으로 인한 비용 발생
종류 Oracle, MySQL, SQLite, Apache .. MongoDB, Flare ..
Tags: db