
Realm : 모바일 데이터베이스의 강자..!?
Realm쓰는 이유?
- 성능 : 쩐다고 한다고 한다고 한다..
- 현업 : 뱅셀,멜론,음,카카오,네이버도 쓴다고 한다고 한다고 한다..
- 호환성 : (안드로이드도 가넝~)
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)
스키마를 변경해야 할 때 거쳐야 하는 과정
- 이전테이블과 바뀐 테이블의 충돌을 방지한다!
- 하드웨어든 소프트웨어든 네트워크든 현재 사용하는 운영환경에서 다른 운영환경으로 옮기는 과정을 지칭하는 것
- 데이터베이스에서는 스키마 버전 관리를 하기 위해서 수행하는 과정
정규화
데이터 중복 방지를 하는 과정