본문 바로가기

CS16

ep 07-1. 정규화 정규화란? - 이상현상이 있는 릴레이션을 분해하여 이상현상을 없애는 과정 - 이상현상이 존재하는 릴레이션을 분해하여 여러개의 릴레이션을 생성하게 됨 👉 이를 단계별로 구분, 정규형이 높아질수록 이상현상은 줄어듦 장점과 단점 - 장점 데이터베이스 변경 시 이상 현상 제거할 수 있음 정규화된 데이터베이스 구조에서 새로운 데이터 형의 추가로 인한 확장 시, 그 구조를 변경하지 않아도 되거나 일부만 변경해도 됨 데이터베이스와 연동된 응용 프로그램에서 최소한의 영향만을 미치게 돼 응용 프로그램의 생명을 연장시킴 - 단점 릴레이션의 분해로 인해 릴레이션 간의 JOIN 연산이 많아짐 질의에 대한 응답 시간이 느려질 수도 있음 -데이터 중복 속성을 제거하고 결정자에 의해 동일한 의미의 일반 속성이 하나의 테이블로 집약.. 2023. 1. 1.
ep 06-1.Hash Hash와 Hash function Hash - 데이터를 다루는 기법 중 하나 - 다양한 길이를 가진 데이터를 고정된 길이를 가진 데이터로 매핑(즉, 변환)한 값. - 데이터를 검색할 때 사용할 key 와 실제 데이터의 값 value가 한 쌍으로 존재 - key값이 배열의 인덱스로 변한돼 검색과 저장의 평균적 시간 복잡도가 1에 수렴 Hash function - 해시를 진행하는 함수 Why? - 검색과 저장이 아주 빠르게 진행됨 👉 즉, 효율적으로 데이터를 찾기 위함 특징 무결성 - 데이터가 조금만 달라져도 확연히 달라지기에 무결성을 지키는데 많은 도움을 줌 ex) aA, aB 둘은 해시 결과 값이 완전히 다른 문자열이 나오게 됨 보안성 - 복호화가 불가능함 비둘기집 원리 -해시는 항상 고정된 길이의 문.. 2022. 12. 18.
ep 05-2. Primary index vs Secondary index /Composite Primary index(기본 인덱스) - 데이터 블록 안의 행들의 조직과 저장소에 영향을 미침 {데이터 블록: 실제 행 데이터를 저장하는 디스크 블록(다중칼럼)} - 데이터 블록안의 행들을 통해 인덱스 키를 정렬 👉비교적 범위로 질의하는 것이 유리, 동작이 빠름 - 키와 키비 칼럼에서 생성됨 - 기본 키만 사용 가능 X, but) 대게 기본 키를 기반으로 생성됨 - 하나의 테이블에 하나의 기본 인덱스만 가질 수 있음 Secondary index(보조 인덱스) - 데이터 블록에서 실제 조직화된 행들에 영향 X - 순서를 가지지 않음(정렬 또한) - 인덱스 블록의 인덱스 키만 정렬돼야 함 - 하나의 테이블에 여러개의 보조 인덱스를 가질수 있음 Composite Index(결합 인덱스) - 인덱스 생성시 두.. 2022. 12. 3.
ep 05-1. index 인덱스(index) - 사전적 의미: 색인. - 데이터를 기록할 경우 그 데이터의 속성과 장소를 표로 표시하는 것 의의 - 추가적인 쓰기 작업과 저장공간을 활용해 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조 👉 빠르게 데이터를 조회할 수 있도록 도움 사용 - INSERT : 데이터 인덱스 추가 - DELETE: 데이터 인덱스 삭제 - UPDATE: 기존 인덱스 사용 X, 바뀐 데이터 인덱스 추가 이런 곳들에 사용하면 좋음 규모가 작지 않은 테이블 위의 작업들이 자주 발생하지 않는 컬럼 JOIN, WHERE or ORDER BY에 자주 사용되는 컬럼 데이터 중복도가 낮은 컬럼 장점 테이블 조회 속도, 성능 향상 ⬆️ 시스템 부하 ⬇️ 단점 DB의 10% 해당하는 저장 공간 필요 관리를 위한 .. 2022. 12. 2.