SQLD (자격증)
-
데이터 모델링의 이해 오답노트SQLD (자격증)/문제풀이 2020. 4. 12. 17:43
2번. 다음 설명 중 데이터 모델링이 필요한 주요 이유로 가장 부적절한 것은? 1. 업무정보를 구성하는 기초가 되는 정보들에 대해 일정한 표기법에 의해 표현한다. 2. 분석된 모델을 가지고 데이터베이스를 생성하여 개발 및 데이터관리에 사용하기 위한 것이다. 3. 데이터베이스를 구축하기 위한 용도를 위해 데이터모델링을 수행하고 업무에 대한 설명은 별도의 표기법을 이용한다. 4. 데이터모델링 자체로서 업무의 흐름을 설명하고 분석하는 부분에 의미를 가지고 있다. ※ 해설 데이터 모델링을 하는 주요한 이유는 업무정보를 구성하는 기초가 되는 정보들에 대해 일정한 표기법에 의해 표현함으로써 정보시스템 구축의 대상이 되는 업무 내용을 정확하게 분석하는 것이 첫번째 목적이다. 두번째는 분석된 모델을 가지고 실제 데이터..
-
SQL 기본 및 활용3(JOIN)SQLD (자격증)/2-2. SQL 활용 2020. 4. 12. 16:05
조인 (JOIN) - FROM절에 여러 테이블이 나열되더라도 SQL에서 데이터를 처리할 때는 단 두개의 집합 간에만 JOIN이 일어난다. -> FROM절에 A, B, C테이블이 나열되었더라도 특정 2개의 테이블만 먼저 조인 처리되고, 2개의 테이블이 조인되서 처리된 새로운 데이터 집합과 남은 테이블이 다음 차례로 조인됨 * 테이블의 조인 순서는 옵티마이저에 의해서 결정된다. - 조인 조건에 맞는 데이터만 출력하는 INNER JOIN에 참여하는 대상 테이블이 N개라고 했을 때 N개의 테이블로부터 필요한 데이터를 조회하기 위해 필요한 JOIN조건은 대상 테이블의 개수에서 한개를 뺀 N-1이상이 필요하다.
-
SQL 기본 2(DML)SQLD (자격증)/2-1. SQL 기본 2020. 3. 15. 19:45
DML (Data Manipulation Language) 1. INSERT - 테이블에 데이터 삽입 Systax 1) 몇개의 컬럼만 지정해서 INSERT INSERT INTO 테이블명 (컬렴1, 컬럼2) VALUES (데이터1, 데이터2); * 컬럼의 순서는 테이블 컬럼 순서와 매치할 필요 없으며, 정의하지 않은 칼럼에는 NULL값 삽입 2. 전체 컬럼을 대상으로 INSERT INSERT INTO 테이블명 VALUES (전체 컬럼에 대한 데이터 삽입); * 칼럼의 순서대로 빠짐없이 데이터가 입력되어야 함 2. UPDATE - 데이터 값 수정 Systax UPDATE 테이블명 SET 수정되기전 칼럼명 = 수정될 새로운 값; 3. DELETE - 데이터 삭제 Syntax DELETE [FROM] 테이블명;..
-
SQLD 기본(관계형 데이터베이스 개요, CREATE TABLE, ALTER TABLE)SQLD (자격증)/2-1. SQL 기본 2020. 3. 8. 20:58
관계형 데이터베이스 개요 데이터베이스 - 넓은 의미에서의 데이터베이스는 일상적인 정보들을 모아 놓은 것 자체를 의미 그러나, 일반적으로 DB라고 말할 때는 특정 기업이나 조직 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장해 놓은 것 - 관계형 데이터베이스는 정규화를 통한 합리적인 테이블 모델링을 통해 이상(ANOMALY) 현상 제거 데이터 중복 피하고, 동시성 관리, 병행 제어를 통해 다수의 사용자들이 동시에 데이터를 공유 및 조작 할 수 있는 기능 제공 - 관계형 DB는 메타 데이터를 총괄 관리할 수 있기 때문에 데이터의 성격, 속성 또는 표현 방법 등을 체계화 - 데이터 표준을 통한 데이터 품질을 확보할 수 있는 장점 - DBMS는 인증된 사용자만이 참조할 수 있도록 보안 기능 제공 - 데이터..
-
데이터 모델의 성능 3 (분산 데이터베이스)SQLD (자격증)/1-2. 데이터 모델의 성능 2020. 3. 3. 18:53
분산 데이터 베이스 - 여러 곳으로 분산되어있는 데이터베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 DB - 논리적으로 동일한 시스템에 속하지만 컴퓨터, 네트워크를 통해 물리적으로 분산되어 있는 데이들의 모임, 물리적 Site 분산, 논리적으로 사용자 통합, 공유 => 데이터베이스를 연결하는 빠른 네트워크 환경을 이용하여 데이터베이스를 여러 지역 여러 노드로 위치시켜 사용성 / 성능 등을 극대화 시킨 데이터베이스라고 정의할 수 있다. 분산 데이터베이스의 투명성(Transparency) 1. 분할 투명성(단편화) - 하나의 논리적인 Relation이 여러 단편으로 분할되어 각 단편의 사본이 여러 Site에 저장 2. 위치 투명성 - 사용하려는 데이터의 저장 장소 명시 불필요. 위치정보가 System..
-
데이터 모델의 성능(성능 데이터 모델링, 정규화, 반정규화)SQLD (자격증)/1-2. 데이터 모델의 성능 2020. 3. 2. 01:07
성능 데이터 모델링의 정의 설계단계의 데이터 모델링 때 부터 정규화, 반정규화, 테이블통합, 테이블분할, 조인구조, PK, FK 등 여러 가지 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것으로 정의할 수 있다. * 일반적인 성능이라고 하면 데이터 조회의 성능을 의미하곤 한다. 성능이 저하되는 세가지 경우 1. 데이터 모델 구조에 의해 2. 데이터가 대용량이 됨으로 인해 3. 인덱스의 특성을 충분히 고려하지 않고 인덱스를 생성함으로 인해 성능 데이터 모델링 수행시점 - 분석 / 설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능저하에 따른 재업무(Rework) 비용을 최소화 할 수 있음 * 데이터의 증가가 빠를수록 성능저하에 따른 성능개선비용은 기하급수적으로 증가..
-
데이터 모델의 이해 2SQLD (자격증)/1-1. 데이터 모델링의 이해 2020. 3. 1. 05:18
데이터 모델링의 중요한 세가지 개념 1. 업무가 관여하는 어떤 것(Things) - 사물이나 사건 등을 바라 볼 때 전체를 지칭하는 용어 => 엔터티(Entity) 2. 어떤 것이 가지는 성격(Attributes) - 어떤 것이 가지는 세부적인 사항 => 속성 (Attributes) 3. 업무가 관여하는 어떤 것 간의 관계(Relationships) - 각각의 어떤 것과 다른 어떤 것과의 연관성 => 관계(Relationships) 단수와 집합(복수)의 명명 데이터 모델링의 이해관계자 데이터 모델의 표기법인 ERD의 이해 1. 데이터 모델 표기법 2. ERD 작업 순서 * 참고 1) 중요한 Entity일 수록 눈이 먼저가는 왼쪽 하단부에 배치 2) 중복되는 관계가 발생되지 않도록 하고 Circle 관계도..