iOS5,iOS6 Unicode(俄语,日语,中文,韩语)全文搜索

bob*_*byR 7 sqlite unicode full-text-search core-data ios

我需要在包含标题(如歌曲)的2.000.000个数据库行中进行搜索.我需要一个快速提供结果的解决方案,在iOS平台上运行并支持unicode charset.我正在考虑使用sqlite的FTS来解决我的问题.我愿意接受任何其他解决方案.

这是我目前所知道的:

假设1: iOS> = 5默认启用FTS - 这很好,我的最低要求是5

假设2:我假设,如果没有自己编译sqlite,unicode折叠(Ä=> a)不起作用

假设3:我知道FTS不支持子串搜索MATCH "*searchterm*"

假设4:我读到默认的porter stemmer非常糟糕的unicode charsets(俄语,日语,中文,......)

我目前的方法是使用LIKE "%searchterm%"语句,因为它们最适合上述语言.不幸的是,它们有时会变慢.

问题

问题1:带有FTS的sqlite是正确的方法吗?或者应该调查cLucene/CoreData等?还有什么其他选择?在iOS平台上搜索不同语言的标题的最佳方法是什么?

问题2:我是否需要更换标记器?我可以将tokenizer加载为iOS平台上的扩展程序吗?也许是解决办法?

问题3: iOS 5/6上的ICU扩展是否启用了sqlite fts?

问题4: Apple的内部搜索如何在音乐播放器中工作?CoreData?

Dan*_*ert 1

您可能想检查一下:带有核心数据的全文搜索