데이터베이스 구조화

Yunsung·2024년 12월 14일
post-thumbnail

데이터베이스 구조화는 데이터를 효율적으로 저장, 관리, 검색, 수정할 수 있도록 데이터베이스의 구조를 설계하는 과정입니다. 이는 관계형 데이터베이스(Relational Database)에서 중요한 개념으로, 데이터의 정규화(Normalization), 테이블 설계, 키 정의 등이 포함됩니다.

1. 테이블(Table)

  • 테이블은 데이터베이스의 기본 단위로, 데이터를 행(Row)과 열(Column)의 형태로 저장합니다.

  • 각 테이블은 특정 주제에 대한 데이터를 관리하며, 열은 속성(Attributes), 행은 데이터의 각각의 레코드(Record)를 나타냅니다.

    user_idnameemail
    1유재석JSY@gamil.com
    2박명수MSP@gamil.com

2. 키(key)

키는 테이블의 데이터를 고유하게 식별하거나 관계를 정의하는 데 사용됩니다.

  • 기본 키(Primary Key):
    - 테이블에서 각 행을 고유하게 식별할 수 있는 속성입니다.
    - 예: user 테이블의 user_id 열.

  • 외래 키(Foreign Key):
    - 두 테이블 간의 관계를 정의하기 위해 사용되는 속성입니다.
    - 예: post 테이블에서 user_id는 user 테이블의 user_id를 참조합니다.

3. 정규화

  • 데이터를 중복 없이 구조화하여 데이터 무결성(Data Integrity)을 유지하고 저장소 효율성을 높이는 과정입니다.
  • 보통 1NF, 2NF, 3NF(1차, 2차, 3차 정규형)으로 나뉩니다.(정규화는 나중에 따로 만들 예정입니다.)
    - 1NF: 모든 열이 원자값을 갖도록 테이블을 설계한다.
    - 2NF: 기본 키에 종속되지 않은 속성을 제거한다.
    - 3NF: 이행적 종속성을 제거한다.

4. 관계(Relationship)

테이블 간의 연결을 설정해 데이터를 통합적으로 관리합니다.

  • 1:1 관계: 한 테이블의 한 행이 다른 테이블의 한 행에만 연결.
  • 1:N 관계: 한 테이블의 한 행이 다른 테이블의 여러 행과 연결.
  • N:N 관계: 여러 테이블이 서로 여러 행에 연결되며, 중간에 별도의 관계 테이블이 필요.

5. SQL과 스키마(Schema)

  • SQL: 데이터베이스를 관리하기 위한 언어. 데이터를 삽입, 검색, 수정, 삭제하는 데 사용됩니다.
  • 여기서는 간단하게만 설명
    - 테이블 생성: CREATE TABLE
    - 데이터 삽입: INSERT INTO
    - 데이터 조회: SELECT
    - 데이터 삭제: DELETE
  • 스키마: 데이터베이스의 전체 구조를 정의하는 설계도, 테이블, 열, 데이터 타입, 제약 조건 등을 포함합니다.

6. 인덱스(Index)

  • 데이터를 빠르게 검색할 수 있도록 돕는 구조입니다.
  • 예: 책의 목차차럼 특정 열에 인덱슬르 설정하면 검색 속도가 개선됩니다.
    ※주의 : 인덱스를 많이 설정하면 쓰기 속도가 느려질 수 있으므로, 적절히 사용해야 합니다.
profile
풀스택 개발자로서의 도전을 하는 중입니다. 많은 응원 부탁드립니다!!😁

0개의 댓글