DB

    [Sesac IOS] 38일차 TIL

    Leaned Realm DB 백업 1) .realm 파일 자체를 백업 앱에서 사용하는 DB 파일의 스키마와 복구할 파일의 스키마가 동일할 때 단순히 파일을 교체하여 쉽게 백업 및 복구가 가능함. 하지만 사용자의 앱 버전마다 스키마가 다를 경우 사용하는 DB의 구조가 각각 다르기 때문에 복구 시 충돌이 발생할 수 있음. 또한 백업한 데이터를 Realm이 아닌 데이터베이스에서 사용하기 어렵다는 단점이 있음. 2) Json으로 변환하여 백업 마이그레이션, 스키마 업데이트 등 DB 구조 변화에 유연하게 대응할 수 있으며 Realm외에 다른 데이터베이스 또는 다른 플랫폼에서 비교적 사용하기 편리함. 단, 개발 시간이 늘어날 수 있다는 단점이 있음. 파일 앱을 활용한 백업 및 복구 Zip 라이브러리를 사용해서 백..

    [Sesac IOS] 36일차 TIL

    36일차 수업 내용을 정리한 글입니다. Learning Transaction 1) 개요 논리적인 작업 수행의 단위로서 DBMS에서는 사용자의 요청(쿼리)에 응답하여 데이터베이스에 접근하고 상태를 변환(CRUD) 시키는 상호작용의 단위를 의미함. 만약 작업이 도중에 중단되었을 경우 처음 상태로 돌아가고(roll back) 모든 작업을 마칠 경우 commit 된다. DBMS의 성능은 1초당 수행하는 트랜잭션의 수(TPS)로 측정됨. TPS : Transaction Per Second 2) 필요성 송금 과정에서 내 계좌에서 돈이 출금됐을 때 오류로 인해 작업이 중단되면 상대의 계좌에는 입금되지 않는 문제가 발생할 수 있음. 위 사례 뿐만 아니라 여러 클라이언트에서 동시에 DB 서버에 쿼리를 요청할 때 등 문제..

    [Sesac IOS] 34~35일차 TIL

    34~35일차 수업 내용을 정리한 글입니다. Learned DataBase 1) 개요 데이터를 가지고 있는 파일들의 집합체로, 수많은 데이터들이 모여서 구조적으로 저장된 저장소를 의미함. 회사의 인사 관리, 고객 관리 시스템 등에 대표적으로 활용됨. 2) DBMS (DataBase Management System) DB를 생성, 삭제, 수정하는 등 DB를 관리하기 위한 소프트웨어를 의미함. 대부분의 DB가 이 DBMS를 통해 생성되고 관리되기 때문에 DB와 그 의미를 혼용하기도 함. 계층형, 관계형, 객체관계형, NoSQL 등 다양한 종류의 DBMS가 존재하는데 RDBMS(관계형 데이터베이스 관리 시스템)이 가장 많이 사용됨. RDBMS (Relational DBMS) 1) 개요 저장된 데이터들 사이에 ..