Objective c 如何存储大量NSString以进行比较

Objective c 如何存储大量NSString以进行比较,objective-c,database,file,nsstring,save,Objective C,Database,File,Nsstring,Save,我正在写一个(语言)形态学Mac应用程序。我经常需要检查给定文本中的单词是否在大量单词列表中(~1.000.000) 我的问题是:如何存储这些列表 我使用一个.txt文件来存储单词,并从该文件创建一个NSSet,只要应用程序启动,NSSet就会一直存在 我使用像SQLite这样的数据库 有几点: 我认为重点应该放在速度上,因为分析是由用户触发的,这种比较是计算的最大部分 列表可能会通过更新而更改 我以前使用过CoreData和MySQL,所以(我想)我可以实现这两个 我读了很多关于数据库与文

我正在写一个(语言)形态学Mac应用程序。我经常需要检查给定文本中的单词是否在大量单词列表中(~1.000.000)

我的问题是:如何存储这些列表

  • 我使用一个.txt文件来存储单词,并从该文件创建一个NSSet,只要应用程序启动,NSSet就会一直存在

  • 我使用像SQLite这样的数据库

  • 有几点:

    • 我认为重点应该放在速度上,因为分析是由用户触发的,这种比较是计算的最大部分
    • 列表可能会通过更新而更改
    • 我以前使用过CoreData和MySQL,所以(我想)我可以实现这两个
    我读了很多关于数据库与文件的利弊的书,但我从来没有想过这是我的用例

    我不知道它是否与我使用的技术相关,因为这些文件的大小相对较小(约20MB),即使有很多支持的语言,也只有3-4个文件同时加载到内存中


    谢谢!丹克

    我认为CoreData可以完成这项工作;苹果表示,它是极其优化的。我会用CoreData测试它,看看你是否得到了足够的性能测试!我本来希望避免自己的测试,因为我不知道它们的可扩展性有多好,但现在我希望数据库方法不会太牵强!