gpt4 book ai didi

mysql - 用于大型数据集的 sqlite 或 mysql

转载 作者:IT王子 更新时间:2023-10-29 06:25:05 24 4
gpt4 key购买 nike

我正在处理大型数据集(数千万条记录,有时是数亿条记录),并希望使用与 R 链接良好的数据库程序。我正在尝试在 mysql 和 sqlite 之间做出决定。数据是静态的,但我需要做很多查询。

在此link to sqlite help ,它指出:

“默认页面大小为 1024 字节,SQLite 数据库的大小限制为 2 TB(241 字节)。即使它可以处理更大的数据库,SQLite 也会将整个数据库存储在单个磁盘文件和许多文件系统中将文件的最大大小限制为小于此值。因此,如果您正在考虑这种规模的数据库,最好考虑使用客户端/服务器数据库引擎,该引擎将其内容分布在多个磁盘文件中,甚至可能分布在多个卷中。 "

我不确定这是什么意思。当我试验过 mysql 和 sqlite 时,似乎 mysql 更快,但我没有构建非常严格的速度测试。由于我的数据集的大小,我想知道 mysql 对我来说是否比 sqlite 更好。上面的描述似乎表明可能是这种情况,但我的数据还不到 2TB。

对于了解文件系统的最大文件大小限制以及这如何影响索引表和运行查询的速度的任何见解,我将不胜感激。这真的可以帮助我决定使用哪个数据库进行分析。

最佳答案

SQLite 数据库引擎将整个数据库存储到一个文件中。对于非常大的文件,这可能不是很有效(SQLite 的限制是 2TB,正如您在帮助中找到的那样)。此外,SQLite 一次仅限一个用户使用。如果您的应用程序是基于 Web 的或最终可能是多线程的(例如 Android 上的 AsyncTask),则 mysql 可能是最佳选择。

就个人而言,由于您已经完成测试并且 mysql 更快,所以我会选择 mysql。它将在未来更具可扩展性,并允许您做更多事情。

关于mysql - 用于大型数据集的 sqlite 或 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6316319/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com