2025/05 7

권한관리

✏️ 보안데이터 베이스 보안조직에서 허가한 사용자만 데이터베이스에 접근할 수 있도록 통제하여 보안을 유지하는 것.1. 물리적 환경에 대한 보안자연 재해처럼 데이터베이스에 물리적 손실을 발생시키는 위험으로부터 데이터베이스를 보호2. 권한 관리를 통한 보안접근이 허가된 사용자만 권한 내에서 데이터베이스를 사용하도록 보호계정이 발급된 사용자만 데이터베이스에 접근할 수 있도록 통제하고, 사용자별로 사용 범위와 수행 가능한 작업 내용을 제한3. 운영 관리를 통한 보안접근이 허락된 사용자가 권한 내에서 데이터베이스를 사용하는 동안 데이터 무결성을 유지하도록 제약조건을 정의하고 위반하지 않도록 통제✏️ 권한 관리권한 관리의 개념💡 접근 제어(Access Control)계정이 발급된 사용자가 로그인에 성공했을 경우에..

회복과 병행 제어2

✏️ 병행 제어병행 수행(concurrency): 여러 사용자가 데이터베이스를 동시 공유할 수 있도록 여러 개의 트랜잭션을 동시에 수행하는 것.여러 트랜잭션이 차례로 번갈아 수행되는 인터리빙(interleaving) 방식으로 진행됨. 병행 제어(concurrency control) 또는 동시성 제어: 병행 수행 시 같은 데이터에 접근하여 연산을 실행해도 문제가 발생하지 않고 정확한 수행 결과를 얻을 수 있도록 트랜잭션의 수행을 제어하는 것을 의미 병행 수행 시 발생할 수 있는 문제점갱신 분실(lost update)하나의 트랜잭션이 수행한 데이터 변경 연산의 결과를 다른 트랜잭션이 덮어써 변경 연산이 무효화되는 것두 개의 트랜잭션이 한 개의 데이터를 동시에 갱신(update)할 때 발생하며, 데이터베이스에..

회복과 병행 제어1

✏️ 트랜잭션(transaction)트랜잭션의 개념하나의 작업을 수행하는데 필요한 데이터베이스 연산들을 모아놓은 것작업 수행에 필요한 SQL 문들의 모임논리적 작업의 단위장애 발생 시 복구 작업이나 병행 제어 작업을 위한 중요한 단위로 사용작업 수행에 필요한 연산들을 하나의 트랜잭션으로 정의 및 관리해야 함 → 데이터베이스의 무결성과 일관성 보장트랜잭션의 특징(ACID)원자성(Atomicity) : 트랜잭션의 연산들이 모두 정상적으로 실행되거나 하나도 실행되지 않아야 하는 all-or-nothing 방식- 트랜잭션 수행 도중 장애가 발생하면 지금까지 실행한 연산 처리를 모두 취소하고, 트랜잭션 작업 전 상태로 되돌려야 함.일관성(Consistency) : 트랜잭션이 성공적으로 수행된 후에도 데이터베이스가..

정규화

✏️ 정규화의 개념과 이상 현상이상(anomaly) 현상: 불필요한 데이터 중복으로 인해 릴레이션에 대해 데이터 삽입, 수정, 삭제 연산을 수행할 때 발생할 수 있는 부작용 이상 현상의 종류삽입 이상 - 새 데이터를 삽입하기 위해 불필요한 데이터도 함께 삽입해야 하는 문제갱신 이상 - 중복 튜플 중 일부만 변경하여 데이터가 불일치하게 되는 모순의 문제삭제 이상 - 투플을 삭제하면 꼭 필요한 데이터까지 함께 삭제되는 데이터 손실의 문제 정규화: 이상 현상을 제거하면서 데이터베이스를 올바르게 설계해 나가는 과정이상 현상이 발생하지 않도록, 릴레이션을 관련 있는 속성들로만 구성하기 위해 릴레이션을 분해하는 과정함수적 종속성(FD; Funtional Dependency)을 판단하여 정규화를 수행함→ 함수적 종속..

데이터베이스 설계

✏️ 데이터베이스 설계 단계1단계 : 요구 사항 분석데이터베이스의 용도 파악결과물 - 요구 사항 명세서2단계 : 개념적 설계DBMS에 독립적인 개념적 구조 설계결과물 - 개념적 스키마(E-R 다이어그램)3단계 : 논리적 설계DBMS에 적합한 논리적 구조 설계결과물 - 논리적 스키마(릴레이션 스키마)4단계 : 물리적 설계DBMS로 구현 가능한 물리적 구조 설계결과물 - 물리적 스키마5단계 : 구현SQL 문을 작성한 후 이를 DBMS에서 실행하여 데이터베이스 생성⚠️ 설계 과정 중에 오류를 발견하여 변경이 필요하면 이전 단계로 되돌아가 설계 내용을 변경 가능 ✏️ 요구 사항 분석목적사용자의 요구 사항을 수집하고 분석하여 개발할 데이터베이스의 용도를 파악업무에 필요한 데이터가 무엇인지, 그 데이터에 어떤 처리..

데이터 모델링

✏️ 데이터 모델링과 데이터 모델의 개념💡 데이터 모델링(Data Modeling): 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정 현실 세계 —(정보모델링)→ 개념적 모델 —(데이터 모델링)→ 논리적 모델 —(DB로 구현)→ 데이터베이스 개념적 데이터 모델링(conceptual modeling): 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업논리적 데이터 모델링(logical modeling): 개념 세계의 데이터를 데이터베이스에 저장하는 구조로 표현하는 작업 💡 데이터 모델(Data Model): 데이터 모델링의 결과물을 표현하는 도구 📍 개념적 데이터 모델: 사람의 머리로 이해할 수 있도록 현실 세계를 개념적 모델링하여 데이터베이스의 개념적 구조..

클라우드 고급 네트워킹 서비스

✅ DNS (Domain Name System): 네트워크 통신을 위한 주소 체계(IP주소)를 문자 형태인 도메인으로 매핑하여 연결하는 기술 도메인 주소를 이용한 통신 과정웹 서버의 IP 주소를 도메인 주소로 사용하기 위해 도메인 주소 구매 및 등록사용자가 도메인 주소를 브라우저에 입력하여 접근DNS 질의- 브라우저가 DNS 서버에 도메인 주소를 요청하여 IP 주소를 조회- UDP 53번 포트(DNS 프로토콜)를 이용하여 DNS 질의 과정 통신 수행IP 주소 획득 도메인 주소 구조www.example.comRoot Domain : 도메인 계층 구조 최상단에 있는 이름 없는 영역Top Level Domain(TLD) : 인터넷 이름 체계의 최상단에 위치일반 최상위 도메인(gTLD) : .com, .net,..