본문 바로가기

DB/SQLP21

[J STORY] SQLP - DDL(DATA DEFINTION LANGUAGE) 1. 데이터 유형 데이터베이스의 테이블에 특정 자료를 입력할 때, 그 자료를 받아들일 공간을 자료의 유형별로 나누는 기준 특정 칼럼을 정의할 때 선언한 데이터 유형은 그 칼럼이 받아들일 수 있는 자료의 유형을 규정 선언한 유형이 아닌 다른 종류의 데이터가 들어오려고 하면 데이터베이스는 에러를 발생시킴 데이터 유형과 더불어 지정한 크기(SIZE)도 중요한 기능을 제공, 지정한 데이터의 크기를 넘어선 자료가 입력되는 상황에서 에러를 발생 데이터 유형(숫자 타입) ANSI/ISO 기준에서는 NUMERIC Type의 하위 개념으로 NUMERIC, DECIMAL, DEC, SMALLINT, INTEGER, INT, BIGINT, FLOAT, REAL, DOUBLE PRECISION SQL Server와 Sybas.. 2021. 4. 11.
[J STORY] SQLP - 관계형 데이터베이스 개요 1. 데이터베이스 데이터베이스는 일상적인 정보들을 모아 놓은 것 자체를 의미한다. 효율적인 데이터의 관리 뿐만 아니라 예기치 못한 사건으로 인한 데이터의 손상을 피하고, 필요시 필요한 데이터를 복구하기 위한 강력한 기능의 소프트웨어를 필요로 하게 되었고 이러한 기본적인 요구사항을 만족시켜주는 시스템을 DBMS(Database Management System)라고 한다. 데이터베이스의 발전 1960년대 : 플로우차트 중심의 개발 방법을 사용하였으며 파일 구조를 통해 데이터를 저장하고 관리하였다. 1970년대 : 데이터베이스 관리 기법이 처음 태동되던 시기였으며 계층형(Hierarchical) 데이터베이스, 망형(Network) 데이터베이스 같은 제품들이 상용화 되었다. 1980년대 : 현재 대부분의 기업에.. 2021. 4. 11.
[J STORY] SQLP - 분산 데이터베이스와 성능 1. 분산 데이터베이스의 개요 분산 데이터베이스란? 여러 곳으로 분산되어있는 데이터베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 데이터베이스 논리적으로 동일한 시스템에 속하나, 네트워크를 통해 물리적으로 분산되어 있는 데이터들의 모임 데이터베이스를 연결하는 빠른 네트워크환경을 이용하여 데이터베이스를 여러 지역 및 노드로 위치시켜 사용성/성능을 극대화시킨 데이터베이스 2. 분산 데이터베이스의 투명성(Transparency) - 분산데이터베이스가 되기 위해서는 6가지 투명성을 만족해야 한다. 분할 투명성(단편화) : 하나의 논리적 Relation이 여러 단편으로 분할되어 각 단편의 사본이 여러 사이트에 저장 위치 투명성 : 사용하려는 데이터의 저장장소를 명시가 필요하지 않음. 위치정보는 System .. 2021. 4. 10.
[J STORY] SQLP - 데이터베이스 구조와 성능 1. 슈퍼타입/서브타입 모델의 성능고려 방법 가. 슈퍼/서브타입 데이터 모델의 개요 슈퍼/서브타입 모델 업무를 구성하는 데이터의 특징을 공통과 차이점의 특징을 고려하여 효과적으로 표현할 수 있으므로, 자주 쓰이는 모델링의 방법이다. 이 모델은 논리데이터 모델에서 이용되는 형태이고, 물리적인 데이터 모델을 설계하는 단계에서는 일정한 기준에 의해 변환을 해야 한다. 아무런 기준없이 막연히 변환하는 것 자체가 성능 저하의 위험이 있다. 나. 슈퍼/서브타입 데이터 모델의 변환 슈퍼/서브타입에 대한 변환을 잘못하면 성능이 저하되는 이유는 트랜잭션 특성을 고려하지 않고 테이블이 설계되었기 때문이다. 1) 트랜잭션은 항상 일괄로 처리하는데 테이블은 개별로 유지되어 Union연산에 의해 성능저하 2) 트랜잭션은 항상 .. 2021. 4. 10.
[J STORY] SQLP - 대량 데이터에 따른 성능 1. 대량 데이터발생에 따른 테이블 분할 개요 가. 대량 데이터가 발생하는 테이블의 문제점 설계가 잘 되어 있는 데이터 모델이라도 대량의 데이터가 하나의 테이블에 집약되어 있고 하나의 하드웨어 공간에 저장되어 있으면 성능 저하를 피하기 힘들다. 인덱스도 또한 트리가 커지고 깊이가 깊어져, 조회성능에 영향을 미치게 된다. 입력/수정/삭제의 트랜잭션인 경우도 인덱스의 특성상 일량이 증가하여, 더많은 성능저하를 유발하게 된다. 컬럼이 많아지게 되면 물리적인 디스크의 여러 블록에 걸쳐 데이터가 저장되게 되며, 로우 길이가 너무 길어서 로우체이닝과 로우 마이그레이션이 많아지게 되어 성능이 저하된다. 2. 한 테이블에 많은 수의 칼럼을 가지고 있는 경우 200개의 컬럼을 가진 도서정보 테이블이 있다고 가정하고, 하.. 2021. 4. 10.
[J STORY] SQLP - 속성(Attribute) 1. 속성(Attribute)의 개념 가. 속성의 사전적 의미 사물의 성질, 특징, 또는 본질적인 성질, 그것이 없다면 실체를 생각할 수 없는 것 본질적 속성이란 어떤 사물 또는 개념에 없어서는 안될 징표의 전부이다. 징표는 사물이나 개념이 어떤것인지를 나타내고 그것을 다른 것과 구별하는 성질 나. 데이터 모델링 관점에서 속성의 정의 업무에서 필요로 하는 인스턴스로 관리하고자 하는 의미상 더이상 분리되지 않는 최소의 데이터 단위 업무상 관리하기 위한 최소의 의미 단위 속성은 엔터티를 성명하고 속성은 인스턴스의 구성요소 다. 예시 생년월일은 그 자체로 의미가 있으므로 속성이라 할 수 있다. 생년, 생월, 생일 로 분리가 가능하지만 이는 하나의 속성을 관리목적으로 분리한 것일 뿐 각각을 속성이라 할수는 없다.. 2021. 4. 3.