본문 바로가기

자격증

(21)
DML (Data Manipulation Language, 데이터 조작 언어) 1. Insert 한번에 단 한 건의 데이터만 입력 유형insert into 테이블_명 (column_list) value (column_list에 넣을 value_list)insert into 테이블_명 values(전체 column에 넣을 value_list) 2. update정보를 수정하는 SQL 형식updatetable_namesetcolumn1 = “some_value” 3. delete인스턴스를 삭제하는 구문, where 절 미사용시 전체 인스턴스 삭제, 전체삭제의 경우 truncate talbe을 추천하나 이 경우 rollback이 불가능 함. 형식deletefrom table_name[where some=’some’] 4. select데이터를 조회하는 구문 형식select[all/disti..
DDL (Data Definition Language) 1. 데이터 유형 Character : 고정 길이 문자열 ‘AA’ == ‘AA ‘ Varchar : 가변 길이 문자열 ‘AA’ != ‘AA ‘ Numeric : 숫자 (실수, 정수 포함)Date : 날짜 2. Create Table 테이블과 칼럼 정의테이블 : 기본키 + 일반키 ( + 외례 키 ) CREATE TABLE테이블 생성 규칙테이블명은 적절한 이름, 단수형 권고다른 테이블명과 중복 불가칼럼 명 중복 불가칼럼은 테이블 이름 지정 후 괄호”()”로 묶어 지정각 칼럼은 “,”로 구분됨칼럼은 다른테이블까지 고려하여 데이터베이스 내에서는 일관성 있도록칼럼 뒤 데이터 유형 표기대소문자는 구분하지 않음제약사항은 constraint 구문으로 정의마지막 칼럼은 “,”를 입력하지 않음 예제CREATE TABLE ..
관계형 데이터베이스 개요 1. 데이터베이스 데이터베이스의 정의특정 기업이나 조직 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장해 놓는 것 DBMS : 효율적인 데이터관리 + 데이터 손상 회피 + 강력한 데이터 복구 데이터베이스의 발전1960 : 플로차트 중심 개발방법, 파일구조를 통해 데이터 저장관리1970 : 데이터 베이스 관리 기법 처음 도입1980 : 관계형 데이터 베이스 사용화, Oracle, Sybase, DB2 등 제품 사용1990 : 객체 관계형 데이터 베이스로 발전 관계형 데이터베이스 파일시스템을 사용하지 않는 이유한 파일에 대해서 동시 수정이 불가능해당 파일을 복사하여 사용자끼리 수정따라서 데이터간의 중복성과 불일치성이 발생함 정규화를 통한 합리적인 테이블 모델링의 장점이상현상 제거데이터 중복 X동시성 관..
분산 데이터베이스와 성능 1. 분산 데이터베이스의 개요 분산 데이터베이스의 정의여러 곳에 분산되어있는 데이터베이스를 하나의 가상시스템으로 사용할 수 있도록 한 데이터베이스논리적으로 동일한 시스템이지만, 컴퓨터 네트워크를 통해 물리적으로 분산됭어 있는 데이터들의 모임, 물리적 Site 분산, 논리적으로 사용자 통합, 공유 2. 분산 데이터베이스의 투명성 분산 데이터베이스의 정의(투명성)분할 투명성(단편화) : 논리적 Relation이 여러 단편으로 분할, 각 사본이 여러 site에 복제되어 저장위치 투명성 : 사용하려는 데이터의 저장 장소 명시 불필요, 위치정보가 System Catalog에 유지되어야 함지역사상 투명성 : 지역 DBMS와 물리적 DB사이의 Mapping 보장, 각 지역 시스템 이름과 무관한 이름 사용가능중복 투명..
데이터베이스 구조와 성능 1. 슈퍼타입/서브타입 모델의 성능고려 방법 슈퍼/서브타입(Extended ER모델) 데이터 모델 개요 공통적인 부분을 분리(슈퍼타입)하여 서브 타입에서 슈퍼타입을 상속하는 형식의 모델링 기법 논리적 데이터 모델에서 이용되는 형태이므로, 물리적인 데이터 모델을 설계하는 단계에서는 일정한 기준에 의해 변환 됨 슈퍼/서브타입 데이터 모델의 변환 타입One To One Type : ( 1 : 1 관계로 연결 )Plus Type : 슈퍼 + 서브 타입의 엔티티 여러개 생성All In One Type : 슈퍼 + 서브타입들의 전체를 합친 형태 ( 컬럼수 대폭 증가 ) 변환이 잘못되면 성능이 저하되는 이유트랜잭션은 항상 일괄로 처리하는데 테이블은 개별로 유지되어 Union 연산에 의해 성능저하트랜잭션은 서브타입을 ..
대량 데이터에 따른 성능 1. 대량 데이터발생에 따른 테이블 분할 개요 성능저하의 요인한 테이블에 데이터가 대량으로 집중테이블의 여러 개의 칼럼이 존재 많은 인덱스 생성으로 인한 CUD 성능 저하, 로우체이닝과, 로우마이그레이션 발생 2. 한 테이블에 많은 수의 컬럼을 가지고 있는 경우 집중적으로 트랜잭션이 발생하는 컬럼을 분석하여 쪼개주면 IO 성능이 향상되어 성능이 개선 됨 3. 대량 데이터 저장 및 처리로 인한 성능 물리적으로 여러개 테이블 스페이스에 쪼개어 저장될 수 있다. Range Partitioning 적용 테이블의 내부적으로 Range를 지정하여 파티셔닝한다 ( 개발자가 물리적으로 수행하지 않는다.) 숫자나 날짜별로 분리가 가능한 경우 적용한다 데이터 보관 주기에 다른 테이블 관리가 용이하다 List Partiti..
반정규화와 성능 1. 반정규화를 통한 성능향상 전략 반정규화의 정의(De-Normalicztion)정규화된 엔티티, 소것ㅇ, 관계에 대해 시스템의 성능향상과 개발과 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법 반정규화 적용 이유데이터 조회시 IO양이 많아 성능 저하경로가 너무 멀어 조인으로 인항 성능 저하칼럼 계산할 때 성능 저하 정규화 수행의 단점엔티티의 개수가 증가하고, 관계가 많아져 일부 여러 개의 조인이 걸려야만 데이터를 가져오는 경우 반 정규화를 기술적으로 수행하지 않는 경우의 발생 현상성능 저하된 데이터베이스 생성구축단계, 시험단계의 반정규화 적용 시 수정비용이 많이 듦 반정규화 적용 방법 반정규화의 대상 조사 - 자주 사용되는 테이블에 접근하는 프로세스 수가 많고 항상 일정한 ..
성능 데이터 모델링의 개요 1. 성능 데이터 모델링의 정의 일반적인 성능의 의미 : 데이터 조회 속도 성능이 저하되는 데이터모델의 3가지 이유데이터 모델 구조에 의해 성능이 저하될 수 있다.데이터가 대용량이 됨으로 인해 불가피하게 성능이 저하인덱스 특성을 충분히 고려하지 않고 인텍스를 생성 함 성능 데이터 모델링 : 정규화, 반정규화, 테이블통합, 테이블분할, 조인구조, PK, FK … 2. 성능 데이터 모델링 수행 시점 빠를 수록 좋음, 분석 설계 단계에서 고려할 경우 재 업무를 최소화 할 수 있음. 3.성능 데이터 모델링 고려 사항 프로세스정규화를 정확하게 수행용량산정을 수행트랜잭션의 유형 파악용량(2)과 유형(3)에 따라 반정규화 수행이력모델 조정, PK/FK 조정, 슈퍼타입/서브타입 조정성능관점 데이터 모델 검증