【问题标题】:How to implement search for large data using Akavache?如何使用 Akavache 实现对大数据的搜索?
【发布时间】:2017-01-19 05:20:09
【问题描述】:

我一直在使用 Xamarin Forms 并使用 Akavache 在设备中本地存储数据的 android 应用程序中工作。到目前为止,一切都很完美,但现在我需要保存更多数据(大约 10 到 2 万条记录)并提供在该数据中的搜索功能使用 Akavache 实现此类功能的最佳解决方案是什么?

【问题讨论】:

  • Akavache 是 Key|Value 存储,在 Value 上没有搜索功能,因为值作为字节数组存储在 SQLite 表 (CacheElement) 中......你会使用 SQLite ORM/框架或 Realm for Xamarin 会更好。

标签: xamarin xamarin.ios xamarin.android xamarin.forms akavache


【解决方案1】:

我不会使用 Akavache 来实现这一点,为什么?好吧,因为您要么必须将所有数据保存在一个键中,然后进行搜索,您将需要(再次)加载所有数据,然后使用 LINQ 进行过滤,或者您需要做一个肮脏的魔法来使每一行都有它的Akavache 字典中的自己的键。

不要在脚下开枪,而是使用 SQLite.Net-PCL。设置很简单,以后查询也不会那么痛苦。

【讨论】:

  • 事实上,使用 SQlite.net PCL 可能会更痛苦。如果您将拥有 3-4 层的关系数据并且您想要级联删除操作。例如,您有考试学生学校。您想删除学校并希望删除所有相关的学生和考试。这是 SQLIte.Net 中的一个痛点,它运行缓慢。更新和删除也是如此。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-15
  • 2019-04-15
  • 2011-04-08
  • 2010-12-01
  • 1970-01-01
  • 2013-02-09
  • 1970-01-01
相关资源
最近更新 更多