2012-05-01 5 views
0

API에서 텍스트 게시물 목록을 가져옵니다. 각 게시물에는 제목과 설명이 있습니다. 나는 그들 모두를 내 iPhone 앱에 보관해야합니다.어떤 저장소를 사용해야합니까? 문서 저장소 또는 SQLite?

어떤 저장소를 사용해야합니까? 문서 저장소를 사용해야합니까? 아니면 CoreData SQLite 저장소를 사용해야합니까?

답변

0

쿼리를 수행하려면 코어 데이터 또는 sqlite를 사용하는 것이 좋습니다. 그렇지 않으면 문서 파일이 괜찮다고 생각합니다.

0

CoreData는 앱에 데이터를 저장하는 데 효율적이고 효율적인 방법입니다. 이 경우 장치에 너무 많은 저장 공간을 사용하지 않으려면 너무 오래된 데이터를 정리해야합니다. 게다가 CoreData는 객체 관계를 유지하는 데 매우 유용하지만, 객체 그래프를 유지할 필요는 없지만 게시 데이터 목록 만 유지하면 CoreData의 쿼리 기능을 활용하지 않을 수 있습니다.

그러나 네트워크 기반 API를 사용하는 경우 API에서 제공하는 데이터 캐싱을 활용하고 iOS 네트워크 캐싱 메커니즘을 사용할 수도 있습니다. 작업을 단순화하기 위해 MKNetworkKit과 같은 오픈 소스 네트워크 프레임 워크를 활용하면 파일 시스템에 캐시 된 데이터를 유지하고 사용자 정의 시간 (일, 주, 개월)이 만료되는 즉시 제거 할 수 있습니다. 또는 타사 도구를 사용하지 않으려는 경우에도 Apple에서 제공하는 NSURLCache 개체를 iOS와 함께 사용할 수 있습니다. 이 방법은 핵심 데이터보다 훨씬 간단합니다. 이러한 경우에도 여전히 네트워크에서 데이터를 가져오고 캐시 된 경우 네트워크 경로를 따르지 않고 데이터를 파일 시스템에서 직접 가져옵니다.

0

iCloud를 사용하면 문서가 더 적합하지만 @yibuyiqu은 데이터에 대해 쿼리하려는 경우 DB가 가장 좋습니다.

검색 가능한 데이터와 초기 표시 가능한 데이터를 DB에 넣고 전체 데이터가 들어있는 파일을 가리킬 수 있습니다 (파일 이름에 GUID 사용). 이렇게하면 iCloud를 사용하면 데이터가 이미 문서에 있기 때문에 내보낼 준비가 된 것입니다.

또 다른 이점은 검색 성능이 DB에있는 데이터의 양이 적습니다. 따라서 이미지 나 기타 무거운 데이터를 저장하는 경우 DB에 외부 데이터를 저장하는 것이 가장 좋습니다.

0

UIManagedDocument을 사용하면 두 가지 이점을 모두 누릴 수 있습니다. 나중에 iCloud 동기화를 추가 할 수도 있습니다.

관련 문제