개발하는 두더지

[Android] 안드로이드 데이터베이스 Room vs Realm 본문

Java,Android

[Android] 안드로이드 데이터베이스 Room vs Realm

덜지 2018. 12. 12. 17:14

안드로이드 프로젝트를 진행할 때 모바일 로컬 데이터베이스로 어떤 것을 선택해야 하나요?

아래의 내용을 참고해보세요


Room

  • Google I/O 2017  안드로이드 아키텍쳐 컴포넌트에 소개됨
  • 모바일 데이터베이스인 SQLite를 통해 추상화 레이어를 제공하므로 SQLite의 모든 기능을 사용 가능함
  • SQLite를 감싼 레이어 계층으로 보면되기때문에 많아야 64KB정도의 용량만 차지함. Realm에 비해 아주 적은 용량
  • 메서드의 수가 적기때문에 DEX 크기 제한에도 고민하지 않아도됨.
  • SQL Query문을 작성할 줄 알아야 함
  • LiveData 를 몇가지 단계만 거치면 쉽게 연결할 수 있음
  • Rx 지원


Realm
  • 모바일 데이터베이스 솔루션임
  • 대부분 C++로 작성되있음
  • SQL Query를 몰라도되기때문에 사용하기 편함. ORM 개념으로 보면 됨
  • 2014년부터 지금까지 안정성있게 사용되옴. 문서가 엄청나게 많음.
  • 메서드가 엄청 많음 그래서 용량도 큼. 유용한데 안정성까지 검증된 메서드들이 많음
  • 데이터의 양이 엄청많을 경우 Realm을 쓰는것이 좋음
  • 라이브러리가 크기때문에 APK 용량이 2.5~4MB 늘어남
  • iOS도 안드로이드만큼 지원이 잘됨
  • Rx 지원


참고

which one to use- Realm or Room?

Realm vs Room for android

Comments