본문 바로가기

IT Basic/Data19

[DB] DB 성능 개선 방법 데이터베이스 성능 개선을 위한 기법 1. 데이터베이스 인덱스(Index) 2. 옵티마이저(Optimizer) 3. 클러스터링(Clustering) 4. 레플리케이션(Replication) 5. 샤딩(Sharding) + 성능 개선 팁 1. 데이터베이스 인덱스(Index) 저장한 컬럼을 기준으로 메모리 영역에 일종의 색인을 생성하는 것. 검색 속도는 빨라지고 삽입, 삭제, 갱신 속도는 느려진다. 추가적인 오버헤드 - INSERT 시 : 새로운 데이터에 대한 인덱스를 추가함 - DELETE 시 : 삭제하는 데이터의 인덱스를 사용하지 않는다는 작업을 진행함 - UPDATE 시 : 기존의 인덱스를 사용하지 않음 처리하고, 갱신된 데이터의 인덱스를 추가함 장점 : 테이블 조회 속도 및 성능 향상, 전반적인 시스템.. 2022. 2. 8.
[DB] 데이터베이스 개론 - 11장 보안과 권한 관리 11장, 보안과 권한 관리 데이터베이스 보안 물리적 환경에 대한 보안 : 자연재해 등으로부터 보호 권한 관리를 통한 보안 : 권한이 없는 사용자로부터 보호 운영 관리를 통한 보안 : 권한이 있는 사용자로부터 보호 접근 제어(access control) : 계정이 발급된 사용자가 로그인에 성공했을 경우에만 데이터베이스에 접근이 가능하도록 하는 것 권한의 부여 GRANT 권한 ON 객체 TO 사용자 [WITH GRANT OPTION]; 객체 권한의 부여 객체의 소유자가 부여할 수 있다. 부여할 수 있는 주요 권한 : INSERT, DELETE, UPDATE, SELECT, REFERENCES UPDATE와 SELECT권한은 테이블의 일부 속성에만 권한을 줄 수도 있다. WITH GRANT OPTION을 포함.. 2022. 2. 7.
[DB] 데이터베이스 개론 - 10장 회복과 병행 제어 10장, 회복과 병행 제어 트랜잭션(Transaction) : 하나의 작업을 수행하는 데 필요한 데이터베이스의 연산들을 모아놓은 것, 데이터베이스에서 논리적인 작업의 단위 트랜잭션의 모든 명령문이 완벽하게 처리되거나, 하나도 처리되지 않아야 데이터베이스가 모순이 없는 일관된 상태를 유지할 수 있다. 트랜잭션의 특성 : ACID 원자성(Atomicity) 트랜잭션을 구성하는 연산들이 모두 정상적으로 실행되거나 하나도 실행되지 않아야 한다는 all-or-nothing 방식 트랜잭션을 수행하다가 장애가 발생하여 작업을 완료하지 못했다면, 지금까지의 실행 연산을 모두 취소하고 트랜잭션 작업 전의 상태로 되돌려 트랜잭션의 원자성을 보장해야 한다. 일관성(Consistency) 트랜잭션이 성공적으로 수행된 후에도 .. 2022. 2. 7.
[DB] 데이터베이스 개론 - 9장 정규화 9장, 정규화 정규화(normalization) : 이상(anomaly) 현상을 제거하면서 데이터베이스를 올바르게 설계해나가는 과정 이상(anomaly) 현상 : 불필요한 데이터 중복이 발생하여 릴레이션에 대한 데이터의 삽입·수정·삭제 연산을 수행할 때 발생하는 부작용 이상 현상의 종류 삽입 이상(insertion anomaly) : 새 데이터를 삽입하기 위해 불필요한 데이터도 함께 삽입해야 하는 문제 갱신 이상(update anomaly) : 중복 튜플 중 일부만 변경하여 데이터가 불일치하게 되는 모순의 문제 삭제 이상(deletion anomaly) : 튜플을 삭제하면 꼭 필요한 데이터까지 함께 삭제되는 데이터 손실의 문제 이상현상의 발생 이유 ? 관련이 없는 데이터, 관련이 없는 속성들을 하나의 릴.. 2022. 2. 7.
[DB] 데이터베이스 개론 - 8장 데이터베이스 설계 8장, 데이터베이스 설계 데이터베이스 설계 : 사용자들의 요구 사항을 고려하여 데이터베이스를 생성하는 과정 데이터베이스 품질 평가에 중요한 기준 - 구성원들의 요구 사항을 만족하는지 - 데이터의 일관성과 무결성을 유지하면서 사용자가 이해하기 쉽고 접근하기 편한지 데이터베이스 설계 방법 1. E-R 모델과 릴레이션 변환 규칙을 이용한 설계 2. 정규화를 이용한 설계 E-R 모델과 릴레이션 변환 규칙을 이용한 데이터베이스 설계 1단계 : 요구 사항 분석 데이터 베이스를 사용하는 용도 파악 필요한 데이터의 종류와 처리 방법 같은 다양한 요구 사항 수집 및 분석 요구사항 명세서 작성 2단계 : 개념적 설계 요구사항 명세서를 바탕으로 사용자의 요구 사항을 개념적 데이터 모델로 표현(개념적 모델링) 주로 E-R 모.. 2022. 2. 7.
[DB] 무결성(Integrity)과 보안(security) 무결성(Integrity)과 보안(security)의 차이 더보기 보안은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이고, 무결성은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이다 무결성(Integrity) 무결성은 데이터가 정확하고 유효한 상태로 유지되는 것을 의미한다. 무결성의 종류 개체 무결성(Entity Integrity) 모든 인스턴스는 고유한 값이어야 하며, 기본키를 구성하는 속성은 널 값을 가질 수 없다. 참조 무결성(Referential Integrity) 외래키는 참조할 수 없는 값을 가질 수 없다. 도메인 무결성(Domain Integrity) 속성 값은 그 속성에 정의된 도메인에 속한 값이어야 한다. 사용자 정의 무결성(User-Defined Integrity) NULL.. 2022. 1. 25.
반응형