用于大型数据集的sqlite或mysql

前端之家收集整理的这篇文章主要介绍了用于大型数据集的sqlite或mysql前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在处理大型数据集(数百万条记录,有时是数百万条记录),并希望使用与R链接良好的数据库程序.我正在尝试在 mysqlsqlite之间做出决定.数据是静态的,但我需要做很多查询.

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

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

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

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

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

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

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

猜你在找的Sqlite相关文章