728x90
- 데이터베이스
- 데이터베이스를 사용하는 이유
- 데이터베이스가 등장하기 전에는 파일시스템으로 데이터를 관리해 왔는데
- 파일시스템은 파일마다 같은 내용이 있는 '중복'이나
- 데이터를 변경하면 변경한 데이터와 연관되어있는 데이터를 모두 수정해야하는 '비일관성' 등
- 여러가지의 문제점이 있었습니다
- 이것을 해결하기 위해 데이터베이스가 등장했습니다
- 데이터베이스 성능
- 데이터베이스는 하나의 데이터베이스에 여러 응용프로그램이 접근이 가능하기 때문에 데이터의 중복을 최소화할 수 있습니다
- 또한, 데이터베이스는 한 군데에서 데이터를 관리할 수 있기 때문에 보안성이 향상되고 보안 비용이 절감됩니다
- 데이터의 무결성?
- https://yang1650.tistory.com/28
- 데이터베이스를 사용하는 이유
- Index
- Index 란 무엇인가 :
- 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조입니다
- Index 의 자료구조
- 컬럼의 값으로 생성된 해시를 기반으로 인덱스를 구현하는 '해시 테이블'과
- 자식 노드가 2개 이상인 B-Tree를 개선시킨 자료구조인 'B+Tree'가 있습니다(https://potatoggg.tistory.com/174)
- Primary index vs Secondary index
- Primary index :
- 키 값에 대한 테이블의 데이터 행을 정렬하는 인덱스의 한 유형
- 테이블의 데이터를 정렬해서 저장되는 순서를 정의
- Secondary index :
- 데이터와 인덱스를 각각 다른 위치에 저장
- 인덱스는 해당 데이터의 위치에 대한 포인터를 포함하고 있다.
- Primary index :
- Composite index :
- 인덱스를 생성할 때 두 개 이상의 컬럼을 합쳐서 인덱스를 만드는 것을 의미한다.
- 주로 SQL 문장에서 WHERE 절의 조건 컬럼이 2개 이상이 AND로 연결되어 함께 사용이 되는 경우에 많이 사용하게 된다.
- Index 란 무엇인가 :
- https://mangkyu.tistory.com/93
- https://velog.io/@syleemk/%EB%A9%B4%EC%A0%91-%EB%8C%80%EB%B9%84-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%9D%B8%EB%8D%B1%EC%8A%A4
- https://jie0025.tistory.com/107
- https://aboutdb.tistory.com/13
- 객체무결성 도메인무결성 ...무결성
- 정규화에 대해서
- 정규화 탄생 배경
- 하나의 릴레이션에서 여러 엔티티의 attribute를 혼합하면 데이터의 중복이 일어나 저장 공간이 낭비된다.
- 또한 이러한 중복으로 인해 하나의 릴레이션에서만 변경되고 다른 릴레이션들에선 변경되지않는 데이터의 불일치 문제도 일어나 어느것이 정확한지 알 수 없게 된다.
- 이러한 문제의 해결을 위해 정규화 과정을 거치는 것.
- 정규화 탄생 배경
- 정규화란 무엇인가
- 데이터베이스의 설계를 재구성하는 테크닉으로, 이를 통해 불필요한 데이터의 중복을 없앨 수 있고,
- 데이터 저장을 논리적으로 하여 삽입/수정/삭제 시 발생하는 문제들을 방지할 수 있다.
- 정규화의 종류
- 정규화 과정을 거치면 정규형을 만족하게 되는데, 정규형에는 제1정규형, 제2정규형, 제3 정규형,..이 있다.
- 제 1 정규형 :
- 각 로우마다 컬럼의 값이 1개씩만 있어야 함
- 제 2 정규형 :
- 정규화의 장단점
- 장점
- 데이터베이스 변경시 발생하는 갱신이상 문제들을 해결해준다.
- 정규화된 테이블들과 그 테이블들간의 관계는 현실 세계에서의 개념과 그들의 관계를 반영하여 사용자에게 더 의미 있게 데이터 모델을 제공 할 수 있음.
- 단점
- 릴레이션이 분해 되기 때문에 JOIN(릴레이션간의 연산)이 많아짐
- 장점
- https://excited-hyun.tistory.com/104
- 정규화에 대해서
'항해99 3기' 카테고리의 다른 글
2021.12.17 면접 질문 준비(수정필요) - Java (0) | 2021.12.19 |
---|---|
2021.12.16 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 데이터베이스 (0) | 2021.12.19 |
2021.12.14 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 운영체제 (0) | 2021.12.17 |
2021.12.13 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 운영체제 (0) | 2021.12.17 |
2021.12.11 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 네트워크 (0) | 2021.12.17 |