I think it actually works quite well for very small things (that is, < 10KB).  
I used this approach for small-ish user avatars as a 
UIImagePNGRepresentation()-backed transformable attribute on an original iPad.

-ev

On Jul 21, 2011, at 00:29, Roland King wrote:

> Oh I see what you mean. I've already done that as I said in the original 
> message, the audio piece is on a separate entity with a 1-1 relationship to 
> the actual entity which means I can keep it faulted out until I actually need 
> the audio (as opposed to needing the other various properties of the thing 
> which owns it), that audio data entity contains the data and nothing else. 
> I'm just trying to figure out whether sqlite is the best way to store that, 
> or if I should offload it to a file and just reference it, dealing with the 
> housekeeping. 
> 
> On Jul 21, 2011, at 12:24 AM, Evadne Wu wrote:
> 
>> Good to know; keep in mind that FileBlob and Audio are entity names I 
>> conjured out of thin air and you will have to implement them. :)
>> 
>> -ev
>> 
>> On Jul 20, 2011, at 23:58, Roland King wrote:
>> 
>>> Thanks - I'll look up FileBlob when I re-download all my tools .. I 
>>> upgraded to Lion and didn't think about the consequences! 
>>> 
>>> On Jul 20, 2011, at 11:46 PM, Evadne Wu wrote:
>>> 
>>>> I still recommend files if the object is not very, very negligibly small, 
>>>> or if there is going to be hundreds of them.  Core Data SQLite fetching is 
>>>> all-or-nothing — either you only have the object ID or the entire row is 
>>>> awaken from fault.  You can use (for example) a FileBlob entity which is 
>>>> related to the Audio entity, though.
>>>> 
>>>> -ev
>>>> 
>>>> On Jul 20, 2011, at 19:50, Roland King wrote:
>>>> 
>>>>> In my iOS app, using core data, one of my model objects is short audio 
>>>>> clips, 2-10 seconds worth of reasonably low quality mono audio. Not huge, 
>>>>> but not tiny either. Currently I'm using a binary property in my core 
>>>>> data model to store them. I've read the documentation and made sure the 
>>>>> audio clips are a separate entity with a 1-1 relationship so they can be 
>>>>> faulted in and out again, and I'm keeping some basic metadata about them 
>>>>> in my data object to avoid faulting them in until I really need the audio 
>>>>> (eg I keep the length of the clip in a separate property for display 
>>>>> without having to load the data. 
>>>>> 
>>>>> Does anyone have any insight into whether sqlite backing core data is an 
>>>>> efficient way to store binary data? However I store it it's going to take 
>>>>> space up in flash memory on the device, I know that if I offloaded it to 
>>>>> a file in the application's documents directory the file will be the 
>>>>> length of the data (plus a very small overhead), which is about as well 
>>>>> as I can do, but I'll have to deal with the housekeeping issues of making 
>>>>> sure core data and the filesystem are in sync, including after syncs, so 
>>>>> I'd like to just leave it in sqlite and let coredata worry about it; core 
>>>>> data is good at that stuff. 
>>>>> 
>>>>> Has anyone any experience of performance or space efficiency issues I'm 
>>>>> likely to run across doing it this simple way? eg if sqlite adds a large 
>>>>> overhead to BLOBs, I won't use it, or if it's insanely much slower than 
>>>>> pulling from a file, I won't use it and will do the work to store the 
>>>>> assets separately. 
>>>>> 
>>>>> Thanks
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> 
>>>>> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>>>>> 
>>>>> Please do not post admin requests or moderator comments to the list.
>>>>> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>>>>> 
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>> http://lists.apple.com/mailman/options/cocoa-dev/ev%40monoceroi.com
>>>>> 
>>>>> This email sent to e...@monoceroi.com
>>>> 
>>> 
>> 
> 

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to