Joh*_* M. 7 mysql database flat-file
一位朋友和我正在讨论他是否应该使用MySQL或flatfile数据库作为他网站的后端.我告诉他要使用MySQL,因为它是结构化的,记录良好,并且是一致的.另一方面,他说他宁愿追求速度.读取文件比连接MySQL要快得多,这让我想知道他是否是对的.例如,为什么不创建一个文件夹中的每个表,就像这样:users/ groups/ posts/,内夹有(按ID命名的文件1,2,3),然后对数据使用的格式,像这样:username: John\npassword: e2fc714c4727ee9395f324cd2e7f331f\nemail: example@example.com?
换句话说,MySQL相对于flatfiles有什么优势?
Qua*_*noi 11
换句话说,MySQL相对于flatfiles有什么优势?
MySQL提供索引和连接(用于执行性能),事务(用于数据完整性)和SQL(用于开发性能).
它你的项目只涉及一个3自给自足的文本文件,你不需要MySQL.
Pek*_*ica 10
读取文件比连接MySQL要快得多,这让我想知道他是否是对的.
Hobcobbles.像mySQL这样的数据库也将其数据存储在文件中,但具有大量的优化功能,最明显的是它的索引功能,与读取(或写入)大型平面文件相比,可以实现巨大的性能提升.
在某些非常有限的情况下,平面文件可能更快,但数据库引擎使用几代开发人员的经验,致力于使数据访问更快,更可靠.例如,当脚本的两个实例尝试将数据写入数据库时,只需考虑竞争条件和锁定.
如果使用的数据量超过CSV文件中的几行 - 或者在文件中很容易管理,例如Wiki的页面 - 请使用数据库.它增加了一层复杂功能,但为您节省了很多麻烦.
只需考虑快速SELECT * FROM posts WHERE MONTH(post_date) = "2010-03-10"在平面文件上进行操作,并从头开始编写实现该文件的必要条件.