SeSSAC iOS - DATABASE #1

BINGBING🐨·2021년 11월 2일
0

Swift

목록 보기
14/21

Realm : 모바일 데이터베이스의 강자..!?

Realm쓰는 이유?

  1. 성능 : 쩐다고 한다고 한다고 한다..
  2. 현업 : 뱅셀,멜론,음,카카오,네이버도 쓴다고 한다고 한다고 한다..
  3. 호환성 : (안드로이드도 가넝~)

DATABASE

: 데이터를 저장한 파일들의 집합
-> 관리가 필요해
= DataBase Management System: 데이터베이스를 관리하기위한 소프트웨어(DBMS)

제일 많이 쓰이는 : RDBMS (관계형 데이터베이스 관리 시스템)
Relational DataBase Management System

Schema

:데이터베이스의 제약조건을 설정하는 과정!

스키마:테이블로 정리->컬럼(Arrtibute)으로 분류->레코드(=Row,=tuple,=하나의 객체)로 정리

제약조건 | Key

효율적인 관리를 위한 고유한 Primary Key를 부여한다!

  • PK: 구분, 중복, nil 불가
  • Primary Key를 참고한 외래기(Foreign Key)를 활용해 다른 테이블에서도 관리!
  • Realm은 하나의 Primary Key만 부여가능

Unique Key

  • Preimary Key는 아니지만 값을 비워둘 수 있고(nil 허용), 겹치지 않는 Key

Index

검색 속도를 높이기 위한 특성

  • 인덱스에 지정된 컬럼만 검색 PK에 기본적으로 내장되어 있다.
  • 근데 너무 많으면 성능과 속도가 저하될 수 있음

마이그레이션(Mygraion)

스키마를 변경해야 할 때 거쳐야 하는 과정

  • 이전테이블과 바뀐 테이블의 충돌을 방지한다!
  • 하드웨어든 소프트웨어든 네트워크든 현재 사용하는 운영환경에서 다른 운영환경으로 옮기는 과정을 지칭하는 것
  • 데이터베이스에서는 스키마 버전 관리를 하기 위해서 수행하는 과정

정규화

데이터 중복 방지를 하는 과정

  • 데이터 독립성이 높음
profile
iOS Developer

0개의 댓글