728x90

CS 44

[데이터베이스]DBMS, RDBMS, SQL, NoSQL 용어 정리

1. DBMS (Database Management System)개념: 데이터베이스 관리 시스템(DBMS)은 데이터베이스를 생성, 관리, 조작할 수 있도록 하는 소프트웨어입니다.주요 기능: 데이터를 저장, 검색, 수정, 삭제하고 데이터 무결성과 보안을 유지합니다.예시: MySQL, PostgreSQL, Oracle, MongoDB, SQLite 등.특징:데이터의 효율적인 관리와 데이터 무결성을 유지하며, 동시성 제어와 백업 기능을 제공합니다.데이터 중복을 줄이고, 데이터의 일관성을 보장하여 애플리케이션 성능을 최적화합니다.2. RDBMS (Relational Database Management System)개념: 관계형 데이터베이스 관리 시스템(RDBMS)은 관계형 모델을 기반으로 데이터 간의 관계를 테..

[데이터베이스] 데이터베이스 정규화(Database Normalization)

데이터의 중복을 최소화하고 데이터 무결성을 유지하기 위해 데이터베이스 테이블을 구조화하는 과정 1차 정규화 (1NF: First Normal Form)목표: 각 열이 원자값(Atomic Value)만을 가지도록 테이블을 구성합니다.조건:모든 열은 원자적 값을 가져야 하며, 한 셀에 여러 개의 값이 들어가면 안 됩니다.테이블에 반복되는 그룹이 없어야 합니다.예시:학생 테이블이 학생의 여러 과목 점수를 하나의 셀에 입력한 경우(예: 과목 점수 90, 85, 78 등)는 1NF에 위배됩니다. 과목 점수는 각각 분리하여 입력해야 합니다. -- 비정규화된 테이블 (반복 그룹 포함)학생ID | 이름 | 과목 | 점수---------------------------------1 | 홍길동 | 수학..

[데이터베이스] 인덱스(Index)

데이터베이스 테이블에 대한 검색 동작 속도를 높여주는 자료구조인덱스의 장점빠른 검색 성능: 인덱스를 사용하면 데이터 검색 속도가 크게 향상되므로, 대규모 데이터베이스에서 성능이 중요한 조회 작업에서 유리합니다.정렬 및 집계 성능 향상: 인덱스가 설정된 열에 대해 정렬, 집계 등의 작업이 빨라집니다.고유성 보장: 유니크 인덱스를 통해 특정 열이 고유한 값을 가지도록 보장할 수 있습니다.인덱스의 단점추가 저장 공간 필요: 인덱스는 별도의 데이터 구조를 사용하여 저장되기 때문에 추가적인 저장 공간이 필요합니다.데이터 수정 시 성능 저하: 데이터를 삽입, 수정, 삭제할 때 인덱스도 업데이트되어야 하므로, 잦은 수정 작업이 필요한 열에 인덱스를 적용하면 성능이 저하될 수 있습니다.과도한 인덱스 사용 시 성능 저하..

[데이터베이스] Commit과 Rollback

데이터베이스에서 트랜잭션을 제어하는 명령어로, 트랜잭션의 상태를 최종 확정하거나 취소하는 역할 1. Commit개념: 트랜잭션이 성공적으로 완료된 후, 데이터베이스에 변경 사항을 영구적으로 반영하는 명령어입니다.특징:Commit을 실행하면 트랜잭션 내에서 이루어진 모든 변경 사항이 데이터베이스에 저장됩니다.Commit 이후에는 데이터가 확정되어 Rollback으로 되돌릴 수 없습니다.주로 트랜잭션이 성공적으로 완료되었을 때 사용하며, 다른 사용자도 Commit된 데이터를 조회할 수 있게 됩니다.예시:  위 예제에서는 새로운 직원을 추가하고, 급여를 갱신한 후 Commit을 실행하여 데이터베이스에 변경 사항을 확정합니다.BEGIN; INSERT INTO 직원 (이름, 나이, 부서ID) VALUES ('홍길..

[데이터베이스] 제약조건 PK, FK, UK (Primary, Foreign, Unique Key)

제약 조건(Constraint)은 테이블에 저장되는 데이터의 무결성을 유지하기 위해 정의하는 규칙 1. 기본 키(Primary Key, PK)개념: 테이블 내에서 각 레코드를 고유하게 식별할 수 있는 열(또는 열의 조합)입니다. 기본 키가 설정된 열은 중복된 값을 가질 수 없으며, NULL 값을 허용하지 않습니다.특징:각 테이블에 하나의 기본 키만 정의할 수 있습니다.기본 키로 지정된 열은 해당 테이블에서 각 행을 고유하게 식별합니다.중복된 데이터 입력이 불가능하며, 데이터베이스에서 데이터 무결성을 보장합니다.예시:학생 테이블에서 학생ID를 기본 키로 설정하면, 각 학생을 고유하게 식별할 수 있습니다. 2. 외래 키(Foreign Key, FK)개념: 한 테이블의 열이 다른 테이블의 기본 키를 참조하여,..

[데이터베이스] 데이터 무결성(Data Integrity)

데이터의 정확성, 일관성, 신뢰성을 유지하는 것을 의미데이터 무결성의 중요성데이터의 신뢰성 유지: 데이터 무결성은 데이터베이스 내 정보가 정확하고 일관되도록 보장하여, 시스템 내 데이터를 신뢰할 수 있게 합니다.중복과 모순 방지: 데이터의 중복을 줄이고, 서로 모순되는 데이터가 저장되는 것을 방지합니다.데이터 오류 방지: 오류가 포함된 데이터가 저장되는 것을 막아, 데이터베이스의 품질과 신뢰성을 높입니다.데이터 무결성의 유형엔티티 무결성(Entity Integrity)개념: 테이블의 각 행을 고유하게 식별하기 위해 기본 키(Primary Key)를 사용하여, 동일한 값이 중복되지 않도록 보장하는 무결성 규칙입니다.규칙: 기본 키는 중복될 수 없고, NULL 값을 가질 수 없습니다.예: 직원 테이블에서 직..

[데이터베이스] 기본적인 SQL (데이터 조회,삽입,수정,삭제/테이블 생성,수정,삭제,제어)

1. 데이터 조회(DML): SELECTSELECT: 테이블에서 데이터를 조회할 때 사용합니다.WHERE: 조건에 맞는 데이터를 필터링합니다.ORDER BY: 데이터를 정렬합니다.GROUP BY: 특정 컬럼을 기준으로 데이터를 그룹화합니다.HAVING: 그룹화된 데이터에 조건을 적용합니다.JOIN: 여러 테이블에서 데이터를 결합하여 조회합니다.-- 예시: 이름이 '홍길동'인 사람을 조회SELECT * FROM 테이블명WHERE 이름 = '홍길동';-- 예시: 나이별로 그룹화하여, 나이별 평균 급여를 조회SELECT 나이, AVG(급여) FROM 테이블명GROUP BY 나이HAVING AVG(급여) > 3000;-- 예시: 나이순으로 오름차순 정렬하여 조회SELECT * FROM 테이블명ORDER BY 나..

[데이터베이스] 데이터베이스 기본 용어 정리

1. 데이터베이스(Database)데이터를 체계적으로 저장하고 관리하는 시스템으로, 데이터를 효율적으로 저장하고 검색할 수 있게 해줍니다. 예: 고객 정보, 제품 정보, 주문 내역 등이 저장됩니다.2. 데이터베이스 관리 시스템(DBMS)데이터베이스를 생성하고, 데이터를 저장, 검색, 수정, 삭제할 수 있도록 지원하는 소프트웨어입니다. 예: MySQL, Oracle, PostgreSQL 등.3. 테이블(Table)데이터베이스 내에서 데이터를 저장하는 구조로, 행과 열로 구성된 데이터 집합입니다. 예: 고객 테이블, 제품 테이블 등.4. 행(Row) / 레코드(Record)테이블의 한 줄에 해당하며, 개별 엔티티(개체)의 데이터를 저장합니다. 예: 한 고객의 정보가 저장된 행.5. 열(Column) / 필드..

[데이터베이스] 데이터베이스란?

데이터베이스는 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합데이터베이스의 특징실시간 접근성생성, 수정, 삭제를 통한 최신 데이터 유지사용자들 간의 동시 공유사용자가 원하는 데이터를 주소가 아닌 내용에 따라 참조 가능데이터 논리적 독립성 데이터베이스의 장단점데이터베이스 장점데이터 중복 최소화데이터 공유일관성, 무결성, 보안성 유지최신의 데이터 유지데이터의 표준화 가능데이터의 논리적, 물리적 독립성용이한 데이터 접근데이터 저장 공간 절약데이터베이스 단점데이터베이스 전문가 필요많은 비용 부담데이터 백업과 복구가 어려움시스템의 복잡성대용량 디스크로 액세스가 집중되면 과부하 발생 데이터베이스 모델계층형데이터 간의 관계가 트리 형태의 구조. 부모-자식 관계로 표현되며, 1:N으로 구성..

[운영체제] 메모리 관리 전략(Memory Management Unit)

컴퓨터 시스템에서 프로세스의 메모리를 효율적으로 할당하고 관리하는 방법 메모리 관리 전략의 주요 목표효율성: 메모리를 최대한 효율적으로 할당하고, 불필요한 공간 낭비를 줄입니다.보호: 각 프로세스가 서로 독립된 메모리 공간을 사용하게 하여 데이터의 무결성을 유지하고, 권한 없는 접근을 방지합니다.유연성: 메모리 자원을 동적으로 할당하고 회수하여 다양한 크기의 프로세스를 지원합니다.성능 최적화: 메모리 접근 시간을 줄이고, 시스템 전반의 성능을 최적화합니다.주요 메모리 관리 전략메모리 관리 전략은 주로 고정 분할(Fixed Partitioning), 가변 분할(Variable Partitioning), 가상 메모리(Virtual Memory) 등으로 분류됩니다.1. 고정 분할(Fixed Partitioni..

CS/운영체제 2024.10.31
728x90