노력만이 살길!/SQLD

SQL 기본 DDL문
DDL 문 -> 즉시 COMMIT 완료됨! 1. CREATE TABLE 테이블명 생성시 주의 사항 - 객체를 의미할 수 있는 단수형의 적절한 이름을 사용 - 다른 테이블과 중복되지 않아야함 - 한 테이블 내에는 칼럼명이 중복되게 지정할 수 없다. - 테이블 이름을 지정하고 각 칼럼들은 괄호 ()로 묶어 지정 - 칼럼들은 콤마 , 로 구분하고 테이블 생성문의 끝은 세미콜론 ; 으로 끝남 - 테이블명과 칼럼명은 반드시 문자로 시작해야하고, 벤더별로 길이에 대한 한계 잇음. - 벤더에서 사전에 정의한 예약어는 사용 불가 - A-Z, a-z, 0-9, _ , $, # 문자만 허용 CREATE TABLE 테이블이름( PRO_ID VARCHAR(10) NOT NULL PRIMARY KEY, PR0_NUM NUMBE..
제6절 분산데이터베이스와 성능
제 6절 분산 데이터베이스와 성능 분산 데이터베이스의 투명성(Transparency) 1. 분할 투명성(단편화) : 하나의 논리적 Relation이 여러 단편으로 분할되어 각 단편의 사본이 여러 site에 저장 2. 위치 투명성: 사용하려는 데이터의 저장장소를 알 필요 없음 3. 지역사상 투명성 : 지역 DBMS와 물리적 DB 사이의 Mapping 보장. 각 지역시스템 이름과 무관한 이름 사용 가능 4. 중복 투명성 : DB 객체가 여러 SITE에 중복되어 있는지 알 필요 없음 5. 장애 투명성 : 구성요소의 장애에 무관한 원자성 유지 6. 병행 투명성 : 다수 동시 수행시 결과의 일관성 유지 장점 단점 실시간 응답이 필요한 시스템에 용이 지역 자치성, 점증적 시스템 용량 확장 신뢰성과 가용성 효용성과 ..
제5절 데이터베이스의 구조와 성능
제 5절 데이터베이스의 구조와 성능 1. 슈퍼타입/서브타입 모델의 성능고려 방법 -> 데이터의 양 & 트랜잭션의 유형을 파악하여 수행 잘못 설계하면 1) 트랜잭션은 항상 일괄로 처리하는데 테이블은 개별로 유지되어 UNION 연산에 의한 성능저하 가능 2) 트랜잭션은 항상 서브타입으로 처리하는데 테이블은 하나로 통합되어 있어 불필요하게 많은 양의 데이터 집약으로 ~ 3) 트랜잭션은 항상 슈퍼+서브 타입을 공통으로 처리하는데 개별, 하나의 테이블로 집약되어 있어 성능 저하 2. 변환기술 1) 개별로 발생되는 트랜잭션에 대해서는 개별 테이블로 구성 - 슈퍼타입과 서브타입에 각각 트랜잭션이 발생할 때는 모두 분리하여 1:1 관계를 갖도록 한다. 2) 슈퍼 + 서브타입에 대해 발생되는 트랜잭션에 대해서는 슈퍼+서..
제 4절 대량 데이터에 따른 성능
아무리 설계가 잘되어 있는 데이터 모델이라고 할지라도 대량의 데이터가 테이블에 집약되어 있고 하나의 하드웨어 공간에 저장되어 있으면 성능저하를 피하기 힘들다. 이러한 경우 테이블을 분할할 필요성이 있다. 하나의 테이블에 대량의 데이터가 존재하는 경우 -> 인덱스의 트리구조가 커져 효율성이 떨어지므로 데이터를 처리할 때 디스크 I/O를 유발 하나의 테이블에 많은 수의 칼럼이 존재하는 경우 ->데이터가 디스크의 여러 블록에 존재하게 되므로 디스크에서 데이터를 읽은 I/O량이 많아지게 되어 성능 저하 로우 체이닝 - 로우의 길이가 너무 길어서 데이터 블록 하나에 데이터가 모두 저장되지 않고 두개 이상의 블록에 걸쳐 하나의 로우가 저장되어 있는 형태 로우 마이그레이션 - 데이터 블록에서 수정이 발생하면 수정된 ..