데이터베이스

[DB]1. 데이터베이스 개요

CodeJaram 2023. 5. 28. 12:34

1. 데이터베이스

-특정 목적을 위해 여러 사람이 공유하여 사용할 수 있으며 효율적인 관리와 검색을 위해 구조화된 데이터집합.

-여러 사용자가 공유하여 사용할 수 있도록 데이터를 통합해서 저장한 운영데이터의 집합

 

파일시스템 DBMS
데이터 중복 및 누락 발생 데이터 중복 및 누락 방지
실시간 공유(동기화) 불가 실시간공유(동기화) 가능
각각의 방법으로 데이터 관리 일관성 있는 방법으로 데이터 관리

 

2. 데이터 모델링: 현실대상을 데이터베이스로 저장할 수 있도록 설계, 구축하는 과정

[단계]요구사항 분석-개념적 모델링-논리적 모델링-물리적 모델링-데이터베이스

 

1)개념적 모델링

-현실세계의 복잡한 대상을 추상화, 단순화하여 데이터로 표현하는 과정

-어떤 데이터를 저장할 것인지 결정하는 단계

-개체와 속성을 만들고 개체들에 대한 관계를 그려내는 과정

예)’나’라는 사용자를 네이버가 어떻게 데이터로 저장하는가

 

●개체(Entity): 복잡한 대상들을 하나의 집합으로 표현. 현실세계에서 저장할 가치가 있는 중요한 데이터의 집합.

*업무에 필요하고 유용한 정보 예)회원

 

● 속성(Attribute): 해당 집합에서 공통적인 특징들을 표현

예)이름, ID, 비밀번호, 생년월일, 성별 등 ‘서비스’에 필요한 특성. 키, 몸무게 등은 해당없음. 열(Column)에 해당함

 

● 인스턴스(Instance): 개체를 구성하고 있는 속성이 값을 가져서 실체화된 것

예)행(row)에 쓰인 값

 

● 관계(Relationship): 개체와 개체가 맺고 있는 의미 있는 연관성

예)회원←→관계 :사용자가 블로그를 ‘작성’하고 블로그는 회원에 의해 ‘작성’되는 관계

● ERD: 개체(Entity)와 그 관계(Relationship)를 발견하고 그림(Diagram)으로 표현한 것.

-데이터베이스 구조를 한 눈에 보기 위해 사용됨.

 

[순서]

1. 개체 그리기: 개체 기호는 사각형

2. 속성 그리기: 속성 기호는 원형

3. 관계 확인 하기: 관계 기호는 마름모

4. 관계의 중복(cardinality)기술. 예)1:1, 1:N, N:N

-1: |로 표시

-N: >로 표시.

5. 관계의 참여도(optionality) 기술.

-필수참여(1개): | 표시

-선택참여(0개)는 O 표시

 

[실습]

 

 

2)논리적 모델링

-ERD를 기준으로 개체들을 DBMS가 지원하는 데이터로 변환시키는 과정. 즉, -데이터들을

구조적으로 설계하는 과정(상세한 설계도)

-식별자 선택, 정규화, 관계설정 등을 진행

예)영문자, 숫자만 입력. 8자 이상 입력 등의 조건

 

①식별자(Primary Key) 지정(기본키): 하나의 엔터티의 속성 중에서 각 인스턴스들을 식별할 수 있는 속성

②정규화 진행: 데이터가 중복되지 않도록 엔터티를 쪼개는 것

③ 관계설정(Foreign Key)하기(외래키)

-정규화로 쪼개진 대상들을 연결하기 위해 식별자(Primay Key)를 빌려오는 것(참조)

-기본키에 없는 식별자 정보는 입력할 수 없음

*구분코드: 집주소/ 회사주소 구별

*ERD TOOL: https://www.erdcloud.com/ https://dbdiagram.io/home

 

dbdiagram.io - Database Relationship Diagrams Design Tool

 

dbdiagram.io

3)물리적 모델링

-논리적 모델링 결과를 실제 데이터베이스로 구축하는 것

-하드웨어나 운영체제의 특성을 고려하여 필요한 인덱스의 구조나 내부 저장구조, 접근 경로 등에 대한 물리적인 구조를 설계하고

-SQL문을 작성하고 실행시켜 실제 데이터베이스 생성

 

 

'데이터베이스' 카테고리의 다른 글

[DB]6. JOIN  (0) 2023.06.05
[DB]5. GROP BY&HAVING절  (0) 2023.06.01
[DB]4. Oracle 함수  (0) 2023.05.31
[DB]3. WHERE절  (0) 2023.05.30
[DB]2. SELECT절  (0) 2023.05.29