加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

用于大型数据集的sqlite或mysql

发布时间:2020-12-12 19:05:00 所属栏目:百科 来源:网络整理
导读:我正在处理大型数据集(数百万条记录,有时是数百万条记录),并希望使用与R链接良好的数据库程序.我正在尝试在 mysql和sqlite之间做出决定.数据是静态的,但我需要做很多查询. 在这link to sqlite help中,它指出: “默认页面大小为1024字节,SQLite数据库的大小
我正在处理大型数据集(数百万条记录,有时是数百万条记录),并希望使用与R链接良好的数据库程序.我正在尝试在 mysql和sqlite之间做出决定.数据是静态的,但我需要做很多查询.

在这link to sqlite help中,它指出:

“默认页面大小为1024字节,SQLite数据库的大小限制为2 TB(241字节).即使它可以处理更大的数据库,SQLite也会将整个数据库存储在一个磁盘文件中,并且许多文件系统限制了最大值如果你正在考虑这么大的数据库,你最好考虑使用一个客户端/服务器数据库引擎,它将内容分布在多个磁盘文件中,也可能跨多个卷.“

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

有一个discussion on stackoverflow触及了这个并引用了相同的sqlite信息页面,但它没有完全解决这个问题.

我非常感谢从文件系统中理解这个最大文件大小限制的任何见解,以及它如何影响索引表和运行查询的速度.这可以帮助我决定使用哪个数据库进行分析.

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

就个人而言,既然你已经完成了测试并且mysql速度更快,我只需要使用mysql.它将在未来更具可扩展性,并允许您做更多.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读