【问题标题】:Should I use a SQLite database or Pandas for my application [closed]我应该为我的应用程序使用 SQLite 数据库还是 Pandas [关闭]
【发布时间】:2019-12-06 23:47:06
【问题描述】:

我有一个用户可安装的应用程序,它需要一个 2-5 MB 的 JSON 文件,然后查询数据以获取指标。它将提取诸如唯一项目数或字段设置为特定值的项目数等指标。有时,它会提取更表格的指标,例如从 JSON 返回具有特定属性的所有项目及其所有字段.

我在做出技术选择时需要帮助。我介于使用带有 peewee 作为 ORM 的 Pandas 或 SQLite 之间。我不关心将 JSON 文件转换为 SQLite 数据库,我已经有了这个原型。我需要帮助评估 SQLite 数据库与 Pandas 的优缺点。

其他需要考虑的因素是我的应用程序可能需要跨多个相同结构的 JSON 文件分析指标。例如,在 3 个选定的 JSON 文件中有多少唯一项。

我是 Pandas 的新闻,所以我还不能提出强烈的支持或反对意见。我对带有 ORM 的 SQLite 感到满意,但我不想解决这种技术选择是否会限制未来的发展。我不想考虑学习曲线。我只想针对我的应用程序对技术进行正面评估。

【问题讨论】:

    标签: python json pandas sqlite


    【解决方案1】:

    您正在将数据库与内存中的处理库进行比较。它们是两个不同的想法。您是否需要对多次运行的代码进行持久存储?使用 SQLite(因为您使用的是指标,我猜这是您需要的路径)。您可以使用 Pandas 编写 CSV/TSV 并将其用作永久存储,但最终您将开始遇到瓶颈,必须将多个 CSV 加载到一个 Dataframe 中进行处理。

    在我看来,您的用例听起来更适合使用 SQLite。

    【讨论】:

    • 我正在使用内存中的 SQLite 数据库。因此,我将内存中的内存与内存中的内存进行比较。我也不需要持久存储。
    猜你喜欢
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    相关资源
    最近更新 更多