iOS

이미지를 코어 데이터에 저장할 때 주의할 점

jangsilverbaby 2021. 11. 19. 13:21

이미지를 데이터베이스에 저장하는 것은 매우 무거운 작업이기 때문에, 대량의 데이터를 다룰 때 성능의 저하를 가져올 수도 있다. 실무에서는 데이터베이스가 아닌 문서 디렉터리에 파일로 저장하고, 그에 대한 저장 경로만 데이터 베이스에 저장하는 방식으로 로직을 구현하는 것이 좋다.

 

데이터가 커지면 확실히 DB를 직접 엑세스해서 처리하는 것보다 코어 데이터를 사용하는 것이 유리합니다. 코어 데이터는 약산의 오버헤드가 있긴 하지만 지능적으로 데이터를 가져올 뿐만 아니라, 데이터 목록을 받아왔다 하더라도 우리가 관리 객체에 직접 액세스하기 전까지는 실제로 데이터를 메모리에 로드하지 않는다. 이는 메모리 관리나 성능 측면에서 상당한 장점이라고 할 수 있다. 특히 두 개 이상의 엔터티를 조인해야 하는 경우, 코어 데이터에서는 관리 객체 사이의 참조 관계를 통해 매우 쉽게 구현할 수 있다.

또한, 애플리케이션과 코어 데이터에서 동일한 모델 객체를 사용하여 데이터를 다룰 수 있어 데이터 원본 형태를 유지하기도 쉬우며, 복잡한 데이터 처리 작업을 거쳐야 할 때에 높은 성능을 유지할 수 있기도 하다.

 

참고 : 꼼꼼한 재은씨의 Swift 실전편