gpt4 book ai didi

ios - CoreData 的 iOS 搜索时间令人失望

转载 作者:可可西里 更新时间:2023-11-01 05:41:55 26 4
gpt4 key购买 nike

我在装有 iOS 5.1.1 的 ipad 上运行了一个 coredata 数据库。我的数据库中有大约 50,000 家公司。我在公司名称属性上创建了一个索引。我正在搜索此属性,有时会通过 fetchRequest 返回数千条记录。

当返回几千条记录时,可能需要几秒钟才能从提取中返回。这使得预先输入搜索非常笨拙。

我预计将来会有更大的数据库。要实现真正快速的搜索功能,我有哪些选择?

谢谢。

最佳答案

我建议观看最近几次 WWDC 的核心数据性能视频。他们经常谈论改善这种瓶颈的策略。视频中的一些建议:

  • 将名称字段去规范化为单独的“不区分大小写和变音符号”searchString字段并改为搜索该字段,使用 < , <=BEGINSWITH .避免 MATCHES和通配符。
  • 限制 NSFetchRequest 返回的结果数量使用 fetchLimitfetchBatchSize
  • 如果您的公司对象很大,您可以将一些关键数据项提取到单独的较小“标题”对象中,该对象仅用于搜索界面。然后在用户进行选择时将关系添加回主对象。

一些指向几个视频的指针(还有更多其他年份的视频):

WWDC 2012:第 214 场 session - 核心数据最佳实践:45:00

WWDC 2010:第 137 场 session - 在 iPhone 操作系统上优化核心数据性能:34:00

关于ios - CoreData 的 iOS 搜索时间令人失望,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12481217/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com