Quais são as limitações do NSUserDefaults?

O armazenamento permanente de dados em um iPhone geralmente é feito usando o Core Data ou sqlite3. A maioria das pessoas prefere o usuário NSUserDefaults como um armazenamento para as preferências do aplicativo, em vez de usá-lo como um banco de dados normal (como o sqlite

Descobri que uma grande quantidade de dados pode ser armazenada no NSUserDefaults, é extremamente fácil de usar e rápido. Então, por que não usar isso como armazenamento permanente? Quais são as limitações do NSUserDefaults como banco de dados?

Atualizar
Costumo usar três maneiras diferentes de salvar meus dados em disc

Dados principaiSerializando objetos para plists NSUserDefaults

Eu não uso mais o FMDB (ou sqlite diretamente). Quais são as principais vantagens e desvantagens de cada abordagem?

Algumas vantagens dos padrões NSUserD que encontrei:

A classificação, o agrupamento etc. pode ser feito facilmente usando o NSPredicatNSUserDefaults é thread-safe. É necessária uma linha para buscar e salvar dados nos NSUserDefault

questionAnswers(4)

yourAnswerToTheQuestion