在哪里保存大型博客帖子数据-in文件或数据库?

时间:2010-08-11 14:00:22

标签: xml database

我正在开发一个博客网站,我想知道如何保存大型博客文章数据 - 在XML文件中,作为HTML文件或直接在数据库中。有什么建议吗?

4 个答案:

答案 0 :(得分:8)

数据库将 更好。因此,保存XML文件(或任何其他文件),您需要覆盖整个事物。数据库允许您一次添加/更新记录。

更不用说如果您正在查找包含特定字词或短语的所有博文,数据库更容易搜索...

答案 1 :(得分:3)

博客文章不大。图像可能是。

有些问题:

  • 您使用的数据库是什么?如果你正在使用MySQL(ick),你可能想要使用TEXT(适用于< 64K)或MEDIUMTEXT(适用于64K和16M之间)。
  • “XML”是什么意思? XHTML是XML。 HTML5具有XML序列化。
  • 你的意思是每个帖子一个文件?我假设你这样做。

您可能会考虑的问题:

您正在考虑的问题是什么?

  • 读取性能:从数据库中获取文件名然后读取文件或从数据库中获取数据是否更快?如果将所有内容保存在数据库中,则会跳过一些系统调用。您还可以避免大多数文件系统擅长的“大量小文件”(大约或低于4K)问题。
  • 写入性能:编写文件可能比写入数据库更快,因为数据库提供了更多保证(事务完整性)。另一方面,无论如何你都必须写入数据库,因此添加更多文件可能意味着更多的搜索。
  • 数据库开销:在数据库中存储更多数据会使VACUUM ANALYZE花费更长时间。
  • 交易:如果数据库写入失败,则交易失败。如果磁盘已满,则正常的文件写入将部分完成。你的代码是否正确处理了这个问题,还是只是保存帖子的开头?
  • 正在删除(与交易相关):您还需要记住删除该文件。如果删除文件失败怎么办?如果删除行失败怎么办?
  • 迁移:您需要复制数据库。你想复制很多小文件吗?
  • 易于访问:您是否要在文本编辑器中修改帖子?
  • 孤立/丢失的文件:如果有没有文件的帖子或没有帖子的文件怎么办?

答案 2 :(得分:1)

选择一个。

我不会建议使用HTML,因为您可能会选择在某些时候以其他方式呈现它,但XML和DB都有它们的上下两侧。 XML文件,假设您的意思是每个文件一个帖子,具有高度可移植性,易于编辑等优点。数据库存储更易于搜索和检索,并且一点不太可能意外删除。

答案 3 :(得分:1)

在保存/加载/序列化/反序列化大数据时,XML不是一个好的选择。我建议使用数据库。