如何存储网站的用户数据

时间:2014-06-14 06:58:22

标签: database

在MySQL数据库或文件夹中存储用户配置文件数据的更好方法是什么? 我正在制作一个广告网站,其中包含用户广告如何存储该广告。

3 个答案:

答案 0 :(得分:2)

数据库是:

  1. 减少您所描述的文件夹概念等想法的开销
  2. 使搜索速度极快(我认为MySQL使用B-Trees来索引它的数据)。
  3. 将数据与其他数据以及许多其他数据相关联。
  4. 你绝对应该使用数据库,MySQL是一个很好的起点。它得到了广泛的支持,是一个很好的基础数据库。您应该参考有关如何使用MySQL的文档。如果您需要更好的后端系统I also recommend Django

答案 1 :(得分:1)

  

哪种方法可以将用户配置文件数据存储在MySQL数据库中   或在文件夹中,为什么。我正在制作一个广告网站   用户广告如何存储该广告。

两者。你应该使用MySQL来存储URL,ad id,客户信息和数据库的数据库。各种各样的信息。但实际的广告本身 - 我认为是图像 - 应该存储在文件夹/目录中的文件系统中。永远不要将图像作为BLOB(二进制大对象)存储在数据库中。始终存储&通过文件系统提供图像内容。

为了解释为什么不应该将图像存储在数据库中,从文件系统读取图像文件的Web服务器将更快更好。比数据库存储图像的系统更不容易出错,然后由脚本提取图像。然后由服务器提供服务。你不仅需要为原始映像提供服务而且需要帮助脚本必须是中间人才能获得额外的重载。连接到文件系统资源的URL可以更快地从Web服务器上提供。

此外,数据库大小受到控制,而没有图像存储为BLOB。这使备份&恢复更容易处理。

这似乎是一个轻微的宗教辩论 - 正如this question & answer thread here所证明的那样 - 但总的来说:

  • 图像是文件&应存储在Web服务器可以轻松获取它们的文件系统上。
  • 数据应存储在可以获取该内容的数据库中。很容易操纵。

但是那说,为什么重新发明轮子?你应该研究像Revive Adserver (formerly OpenX Source)这样的开源系统。

答案 2 :(得分:0)

您选择最适合问题的解决方案。假设这些广告是视频格式(?),我最明显的解决方案是将视频存储在文件夹中的服务器上,然后将每个广告的绝对文件路径映射到关联的用户ID和用户配置文件数据。存储在数据库中。

传统上,关系数据库的重点是减少数据冗余并提高数据完整性,这是使用平面文件方法无法获得的好处