일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 디자인패턴
- 동적계획법
- 멀티프로세서
- 파일시스템 구현
- 다이나믹 프로그래밍
- 쓰레드
- 그리디 알고리즘
- DirectX 12
- OS
- 운영체제
- 알고리즘
- 렌더링 파이프라인
- 백준
- 프로그래머스
- 그리디알고리즘
- 컨디션 변수
- 타입 객체
- directx
- 스케줄링
- 락
- 병행성 관련 오류
- 자료구조
- codility
- 다이나믹프로그래밍
- 멀티쓰레드
- DirectX12
- I/O장치
- 영속성
- 병행성
- Direct12
- Today
- Total
목록분류 전체보기 (500)
기록공간
데이터베이스 보안의 개요 데이터베이스 보안이란 데이터베이스의 일부분 또는 전체에 대해서 권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술이다. 보안을 위한 데이터 단위는 테이블 전체로부터 특정 테이블의 특정한 행과 열 위치에 있는 특정한 데이터 값에 이르기까지 다양하다. 데이터베이스 사용자들은 일반적으로 서로 다른 객체에 대하여 다른 접근 권리 또는 권한을 갖게 된다. 암호화(Encryption) 암호화는 데이터를 보낼 때 송신자가 지정한 수신자 이외에는 그 내용을 알 수 없도록 평문을 암호문으로 변환하는 것이다. 암호화 과정 : 암호화되지 않은 평문을 정보 보호를 위해 암호문으로 바꾸는 과정 복호화(Decryption) 과정 : 암호문을 원래의 평문으로 바꾸는 과정 암호화 기법에는 개인..
데이터베이스 이중화(Database Replication) 데이터베이스 이중화는 시스템 오류로 인한 데이터베이스 서비스 중단이나 물리적 손상 발생 시 이를 복구하기 위해 동일 데이터베이스를 복제하여 관리하는 것이다. 데이터베이스 이중화를 수행하면 하나 이상의 데이터베이스가 항상 같은 상태를 유지하므로 데이터베이스에 문제가 발생하면 복제된 데이터베이스를 이용하여 즉시 문제를 해결할 수 있음 데이터베이스 이중화는 여러 개의 데이터베이스를 동시에 관리하므로 사용자가 수행하는 작업이 데이터베이스 이중화 시스템에 연결된 다른 데이터베이스에도 동일하게 적용됨 데이터베이스 이중화는 애플리케이션을 여러 개의 데이터베이스로 분산시켜 처리하므로 데이터베이스의 부하를 줄일 수 있음 데이터베이스 이중화를 이용하면 손쉽게 백업..
분산 데이터베이스 정의 분산 데이터베이스는 논리적으로 하나의 시스템에 속하지만 물리적으로는 네트워크를 통해 연결된 여러 개의 컴퓨터 사이트(Site)에 분산되어 있는 데이터베이스를 말한다. 분산 데이터베이스는 데이터의 처리나 이용이 많은 지역에 데이터베이스를 위치시킴으로써 데이터의 처리가 가능한 해당 지역에서 해결될 수 있도록 한다. 분산 데이터베이스의 구성 요소 분산 처리기 : 자체적으로 처리 능력을 가지며, 지리적으로 분산되어 있는 컴퓨터 시스템을 말함 분산 데이터베이스 : 지리적으로 분산되어 있는 데이터베이스로서 해당 지역의 특성에 맞게 데이터베이스가 구성됨 통신 네트워크 : 분산 처리기들을 통신망으로 연결하여 논리적으로 하나의 시스템처럼 작동할 수 있도록 하는 통신 네트워크를 말함 분산 데이터베이..
데이터베이스 용량 설계 데이터베이스 용량 설계는 데이터가 저장될 공간을 정의하는 것이다. 데이터베이스 용량을 설계할 때는 테이블에 저장할 데이터양과 인덱스, 클러스터 등이 차지하는 공간 등을 예측하여 반영해야 함 데이터베이스 용량 설계의 목적 데이터베이스의 용량을 정확히 산정하여 디스크의 저장 공간을 효과적으로 사용하고 확장성 및 가용성을 높임 디스크의 특성을 고려하여 설계함으로써 디스크의 입출력 부하를 분산시키고 채널의 병목 현상을 최소화 디스크에 대한 입출력 경합이 최소화되도록 설계함으로써 데이터 접근성이 향상 데이터 접근성을 향상시키는 설계 방법 테이블의 테이블스페이스와 인덱스의 테이블스페이스를 분리하여 구성 테이블스페이스와 임시 테이블스페이스를 분리하여 구성 테이블을 마스터 테이블과 트랜잭션 테이..
파티션(Partition)의 개요 데이터베이스에서 파티션은 대용량 테이블이나 인덱스를 작은 논리적 단위인 파티션으로 나누는 것을 말한다. 대용량 DB의 경우 중요한 몇 개의 테이블에만 집중되어 데이터가 증가되므로, 이런 테이블들을 작은 단위로 나눠 분산시키면 성능 저하를 방지할 뿐만 아니라 데이터 관리도 쉬워짐 테이블이나 인덱스를 파티셔닝 하면 파티션키 또는 인덱스키에 따라 물리적으로 별도의 공간에 데이터가 저장 데이터 처리는 테이블 단위로 이뤄지고, 데이터 저장은 파티션별로 수행 파티션의 장단점 장점 데이터 접근 시 액세스 범위를 줄여 쿼리 성능 향상 파티션별로 데이터가 분산되어 저장되므로 디스크의 성능 향상 파티션별로 백업 및 복구를 수행하므로 속도가 빠름 시스템 장애 시 데이터 손상 정도를 최소화 ..
클러스터(Cluster)의 개요 클러스터는 데이터 저장시 데이터 액세스 효율을 향상시키기 위해 동일한 성격의 데이터를 동일한 데이터 블록에 저장하는 물리적 저장 방법이다. 클러스터링키로 지정된 컬럼 값의 순서대로 저장되고 여러 개의 테이블이 하나의 클러스터에 저장됨 클러스터의 특징 클러스터링 된 테이블은 데이터 조회 속도는 향상시키지만 데이터 입력, 수정, 삭제에 대한 성능은 저하 클러스터는 데이터의 분포도가 넓을수록 유리 데이터 분포도가 넓은 테이블을 클러스터링 하면 저장 공간을 절약할 수 있음 클러스터링된 테이블은 클러스터링키 열을 공유하므로 저장 공간이 줄어듦 대용량을 처리하는 트랜잭션은 전체 테이블을 스캔하는 일이 자주 발생하므로 클러스터링을 하지 않는 것이 좋음 처리 범위가 넓은 경우에는 단일 ..

뷰(View)의 개요 뷰는 사용자에게 접근이 허용된 자료만으로 제한적으로 보여주기 위해 하나 이상의 기본 테이블로 유도된, 이름을 가지는 가상 테이블이다. 뷰는 저장장치 내에 물리적으로 존재하지 않지만, 사용자에게는 있는 것처럼 간주 뷰는 데이터 보정 작업, 처리 과정 시험 등 임시적인 작업을 위한 용도로 활용 뷰는 조인문 사용 최소화로 사용상의 편의성을 최대화 뷰를 생성하면 뷰 정의 시스템 내에 저장되었다가 생성된 뷰 이름을 질의어에서 사용할 경우 질의어가 실행될 때 뷰에 정의된 기본 테이블로 대체되어 기본 테이블에 대해 실행됨 다음 그림은 뷰 A가 테이블 1, 테이블 2, 테이블 3에서 유도되어 생성되며, 뷰 A를 통해 테이블 1, 테이블 2, 테이블 3에 대한 데이터에 접근할 수 있음을 나타낸 것 ..

인덱스(Index)의 개념 인덱스는 데이터 레코드를 빠르게 접근하기 위해 쌍으로 구성되는 데이터 구조이다. 인덱스는 데이터가 저장된 물리적 구조와 밀접한 관계가 있음 인덱스는 레코드가 저장된 물리적 구조에 접근하는 방법을 제공 인덱스를 통해서 파일의 레코드에 대한 액세스를 빠르게 수행 가능 레코드의 삽입과 삭제가 수시로 일어나는 경우에는 인덱스의 개수를 최소로 하는 것이 효율적 인덱스가 없으면 특정한 값을 찾기 위해 모든 데이터 페이지를 확인하는 TABLE SCAN이 발생 기본키를 위한 인덱스를 기본 인덱스라 하고, 기본 인덱스가 아닌 인덱스들을 보조 인덱스라고 함. 대부분의 관계형 데이터베이스 관리 시스템에서는 모든 기본키에 대해서 자동적으로 기본 인덱스를 생성 레코드의 물리적 순서가 인덱스의 엔트리 ..