LRUなディスクキャッシュを実装する場合など、CoreDataに画像を突っ込みたくなることがあると思います。 しかし、画像をそのままattributesに突っ込むことはフェッチ速度の低下につながります。 何か上手い方法はないかな〜と思ってAppleのCoreDataプログラミングガイドを眺めていたら、ありました。 画像などのBLOBをCoreDataに突っ込む場合、BLOBであるattributeをエンティティから切り離すと良いそうです。 今回は、これについて検証したことを紹介します。 比較するデータ構造 ISFatUser attributesに画像が突っ込まれたエンティティです。 BLOBが入っているので”Fat”です。 ISUser 画像を別のエンティティに切り分けたエンティティです。 attributesに画像を持たない代わりに、画像を持つエンティティ(ISIcon)とrelat