데이터베이스

CS

인덱스

디스크 읽기 방식 데이터베이스 성능 튜닝은 어떻게 디스크 IO를 줄이느냐가 관건일 때가 상당히 많다. 랜덤 IO, 순차 IO와 같은 디스크 읽기 방식을 먼저 알아보자. 하드 디스크 드라이브(HDD)와 솔리드 스테이트 드라이브(SSD) SSD는 기존 하드 디스크 드라이브에서 데이터 저장용 플래터(원판)를 제거하고 그 대신 플래시 메모리를 장착하고 있다. 그래서 아주 빠르고, 전원이 공급되지 않아도 데이터가 삭제되지 않는다. SSD의 장점은 기존 하드 디스크 드라이브보다 랜덤 IO가 훨씬 빠르다는 것이다. 데이터베이스 서버에서 순차 IO 작업은 그다지 비중이 크지 않고, 랜덤 IO를 통해 작은 데이터를 읽고 쓰는 작업이 대부분이므로 SSD의 장점은 DBMS용 스토리지에 최적이다. 랜덤 I/O 와 순차 I/O..

CS

데이터베이스 언어 SQL

SQL(Structured Query Language) 관계 데이터베이스를 위한 표준 질의어 비절차적 데이터 언어 SQL의 분류 데이터 정의어(DDL) - 테이블을 생성하고 변경, 제거하는 기능을 제공 데이터 조작어(DML) - 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정, 삭제, 검색하는 기능을 제공 데이터 제어어(DCL) - 보안을 위해 데이터에 접근 및 사용 권한을 사용자별로 부여하거나 취소하는 기능을 제공 SQL의 데이터 정의 기능 테이블 생성 : CREATE TABLE 테이블 변경 : ALTER TABLE 테이블 삭제 : DROP TABLE 테이블 생성 []의 내용은 생략 가능 SQL 질의문은 세미콜론(;)으로 문장의 끝을 표시 SQL 질의문은 대소문자를 구분하지 않음 속성의..

CS

관계 데이터 연산

데이터 모델(data model) 데이터 모델링의 결과물을 표현하는 도구 개념적 데이터 모델 - 사람의 머리로 이해할 수 있도록 현실 세계를 개념적 모델링하여 데이터베이스의 개념적 구조로 표현하는 도구 논리적 데이터 모델 - 개념적 구조를 논리적 모델링하여 데이터베이스의 논리적 구조로 표현하는 도구 데이터 모델 = 데이터 구조 + 연산 + 제약조건 관계 데이터 연산 관계 데이터 모델의 연산 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것 관계 대수와 관계 해석이 있음 관계 대수와 관계 해석의 역할 데이터 언어의 유용성을 검증하는 기준 관계 대수나 관계 해석으로 기술할 수 있는 모든 질의를 기술할 수 있는 데이터 언어를 관계적으로 완전하다고 판단함 관계 대수의 개념 원하는 결과를 얻기..

CS

관계 데이터 모델

관계 데이터 모델의 기본 개념 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델 하나의 개체에 대한 데이터를 하나의 릴레이션에 저장 관계 데이터 모델의 기본 용어 속성(attribute) 릴레이션의 열, 애트리뷰트 파일 관리 시스템 관점에서 필드(field)에 대응 투플(tuple) 릴레이션의 행 파일 관리 시스템 관점에서 레코드(record)에 대응 도메인(domain) 하나의 속성이 가질 수 있는 모든 값의 집합 속성 값을 입력 및 수정할 때 적합성 판단의 기준이 됨 일반적으로 속성의 특성을 고려한 데이터 타입으로 정의 널(null) 속성 값을 아직 모르거나 해당되는 값이 없음을 표현 차수 하나의 릴레이션에서 속성의 전체 개수 카디널리티(cardicality) 하나의 릴레이션에서 투플의 전체 ..

CS

데이터베이스 시스템(DBS)

데이터베이스 시스템 DBS(DataBase System)이라고 한다. 데이터베이스에 데이터를 저장하고, 이를 관리하여 조직에 필요한 정보를 생성해 주는 시스템 데이터베이스의 구조 스키마 - 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 인스턴스- 스키마에 따라 데이터베이스에 실제로 저장된 값 3단계 데이터베이스 구조 미국 표준화 기관인 ANSI/SPARC에서 제안 데이터베이스를 쉽게 이해하고 이용할 수 있도록 하나의 데이터베이스를 관점에 따라 3단계로 나눔 외부 단계 - 개별 사용자 관점 개념 단계 - 조직 전체의 관점 내부 단계 - 물리적인 저장 장치의 관점 각 단계별로 다른 추상화 제공 - 내부 -> 외부 단계로 갈수록 추상화 레벨이 높아짐 외부 단계 데이터베이스를 개별 사용자 관점에서 ..

CS

데이터베이스의 기본 개념

데이터베이스에 대한 중요성을 알게 되고 이를 정리하기 위해 글을 작성한다. 데이터와 정보 데이터: 현실 세계에서 단순히 관찰하거나 측정하여 수집한 사실이나 값(실제 값 그 자체) 정보: 의사 결정에 유용하게 활용할 수 있도록 데이터를 처리한 결과물(가공한 값) 정보시스템: 조직 운영에 필요한 데이터를 수집하여 저장해 두었다 필요할 때 유용한 정보를 만들어 주는 수단 데이터베이스: 정보 시스템 안에 데이터를 저장하고 있다 필요할 때 제공하는 역할 데이터베이스 정의 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합 특징 실시간 접근 계속 변화 동시 공유 내용 기반 참조 형태에 따른 데이터의 분류 정형 데이터- 구조화된 데이터(엑셀의 스프레드 시트) 반정형 데이터- 구조..

javajoha
'데이터베이스' 태그의 글 목록