Mysql 文件系统v/s数据库

Mysql 文件系统v/s数据库,mysql,database,performance,filesystems,Mysql,Database,Performance,Filesystems,我的问题是面向方法的。我目前正在做一些项目。所有项目都将面临大量数据的获取和维护。我的一个项目是网络爬虫系统。正如它定义的那样,网络爬网将存储大量的数据。我现在正在mysql数据库中维护数据。但我怀疑,如果数据库庞大,会发生什么。?我不想对系统的速度妥协。 我有两个问题 1) 当数据库变得庞大时,MySql会面临速度问题吗? 2) 如果我为每个网站创建单独的文件并将其数据存储在该文件中会怎么样。这对速度问题有帮助吗 只要适当优化表和查询,MYSQL服务器就应该能够扩展,只要提供适当的资源,如RA

我的问题是面向方法的。我目前正在做一些项目。所有项目都将面临大量数据的获取和维护。我的一个项目是网络爬虫系统。正如它定义的那样,网络爬网将存储大量的数据。我现在正在mysql数据库中维护数据。但我怀疑,如果数据库庞大,会发生什么。?我不想对系统的速度妥协。 我有两个问题

1) 当数据库变得庞大时,MySql会面临速度问题吗?
2) 如果我为每个网站创建单独的文件并将其数据存储在该文件中会怎么样。这对速度问题有帮助吗

  • 只要适当优化表和查询,MYSQL服务器就应该能够扩展,只要提供适当的资源,如RAM/CPU。您可能还想考虑使用像MeMcCache这样的工具来缓存查询。
  • 将数据存储在平面文件中会降低您的Web应用程序的速度,请坚持使用数据库

  • 一般来说,数据库是为性能而构建的,并且对于大量数据来说非常好。他们甚至为数据建立索引以实现快速访问,并且在快速获取数据(查询优化)方面非常聪明


    因此,在我看来,如果您不必在数据库上执行昂贵的查询(使用许多、许多连接),或者不必执行SQL中没有包含的查询,那么使用关系数据库就完全可以了。如果您担心磁盘空间,您可以尝试使用PostgreSQL,它还具有压缩功能(这样可以在内存中保存更多数据以获得更好的性能)

    您是否研究过其他数据库,如MongoDB或其他文档数据库?关于这些问题,我要说的可能会被一些人的答案彻底淹没,但我会深入研究这些问题,看看你的应用程序的需求是否能得到满足。另外,Mongo有自己的“Map Reduce”功能,我注意到它在使用时的查询时间非常快。他们支持PHP吗?如果您可以为Mongo提供任何文档链接,这将非常有帮助。谢谢。再加上您的答案,在某些情况下,NoSQL数据库(如MongoDB)可能是一个不错的选择。这完全取决于数据的具体需求和使用情况。不过,平面文件是最糟糕的选择