Производительность CoreData и автозаполнение поля - PullRequest
1 голос
/ 01 ноября 2010

У меня есть эта удаленная база данных художников.Около 6000 записей на данный момент.Я хочу, чтобы мое приложение:

  1. загрузило индекс имен исполнителей в формате JSON (~ 95 КБ)
  2. импортировало эти данные в CoreData
  3. и предлагало / авто-полный, когда пользователь добавляет нового художника

Я делал это раньше, но не в таком большом масштабе. Будет ли это проблематично, когда база данных достигнет 20 или 30 тысяч записей? Меня не беспокоит размер файлов JSON, а в основном способность CoreData быстро извлекать данные с использованием NSPredicate, такого как artist_name LIKE textField.text каждый раз, когда textFieldизменяет значение.

1 Ответ

2 голосов
/ 01 ноября 2010

По крайней мере, убедитесь, что вы отметили Artist_name как проиндексированный ... это должно помочь.

Я бы также исследовал другие предикаты и посмотрел, нет ли подстроки, специфичной для себя, которая могла бы работать лучше, чем LIKE.

Вы также захотите изучить предварительную загрузку базы данных, которая содержит такое количество данных, и обновить ее в фоновом режиме ... 300-тысячный файл JSON будет загружаться Длительно, если сеть вообще плохая.

...