【问题标题】:Which read/write Operation is heavier (Shared Preference, Files, Sqlite database)哪个读/写操作更重(共享首选项、文件、Sqlite 数据库)
【发布时间】:2017-05-25 08:17:58
【问题描述】:

在我正在创建的库中,大约有 10 种方法可以执行 read/write 操作。我正在使用sharedPreference 来保存和获取数据。我有点担心使用sharedPreference 还是我应该使用File Systemsqlite 数据库是一个明智的决定。

请指导我哪种读/写操作更快。

【问题讨论】:

  • 这一切都取决于你想要实现什么?每个人都有自己的用途。
  • 而不是询问社区为什么不对您的样本数据进行基准测试并告诉社区/人们您的发现。
  • 这一切都取决于您要达到的目标,但正如@Nayan Srivastava 所写 - 最好的解决方案是您自己测试它。
  • 为什么所有这些都投反对票?这实际上是一个合法的问题。

标签: java android performance sqlite android-layout


【解决方案1】:

android documentation 中所述,您应该:

SharedPreferences

使用共享首选项文件在键值对中存储少量信息。

所以只对一些字符串或变量使用 SharedPreferences,而不是像大列表这样的大数据资产。在此处保存必须经常访问的数据也是一种很好的做法。

文件

保存一个基本文件,例如存储通常按顺序读取的长数据序列。

文件非常适合保存列表。此外,它还允许您将其保存到外部存储或同步到云端。

终于SQLite

SQLite 数据库读取和写入结构化数据。

应该用于保存数据的数据库。

这些是使用您要求的三个数据存储选项的推荐方法。我希望这个答案会有所帮助。

【讨论】:

    【解决方案2】:

    选择本地数据库(SQLite)是更好的选择,请参阅下面的链接以供您参考 SQLLite 使用。

    http://www.ssaurel.com/blog/learn-to-persist-data-on-android-with-sqlite/ https://github.com/codepath/android_guides/wiki/Local-Databases-with-SQLiteOpenHelper

    【讨论】:

    • 使用本地数据库并不总是更好的选择。有时,对必须快速访问的少量数据使用共享首选项会更快。
    【解决方案3】:

    当您保存的数据不是非常大时,最好将一些数据保存在SharedPreference 上。我建议在以下情况下使用SharedPreference

    当您保存的数据很闲时(经常使用)

    当数据量不大时(因为它可能会导致瓶颈并拖慢您的应用程序)

    但是您的存储选择取决于手头的条件。我认为你应该考虑的事情是你的数据大小,数据将被使用的频率,当然还有读/写时间。我希望这会有所帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-26
      • 2019-05-11
      • 2013-06-11
      • 2016-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多