在数据库中存储大文本数据

我试图build立一个博客网站(sorting)。 用户可以写大博客(或文本),也可以像字体,大小,文字颜色等( 有点像堆栈溢出中的post多一些 )定制设施 。 我正在寻找使用mongo-db或数据库部分的沙发基地。 现在我对一些事情感到困惑

  • 我应该在哪里存储博客或post? 在数据库或文本文件? 如果在数据库中,我将如何存储字体,大小,颜色( 用户可以拥有不同的字体,大小为不同部分的post )? 这些post有时会非常大,所以build议将这样的大文本存储在数据库中。 我看到更容易的选项将它们存储为文件(文本文件),但我担心网站的性能,因为加载文本文件在网站上可能会很慢。 只是为了知识的缘故,谷歌如何存储谷歌文档?
  • 我是否应该使用其他更适合处理我提到的事情的数据库
  • 尽pipe在文章中对文章进行全面search并不是我现在正在研究的一个function,但是之后可能会发生。 所以,也要考虑一下你的答案。

请帮帮我。

老实说,MongoDB一直是我们NodeJS项目的最佳数据库。 之前它有一个4MB的最大BSON文件大小,但是它被增加到8 MB,现在增加到最新版本的16 MB。 这实际上是相当数量的文本。 根据我的计算,你应该能够在一个16MB的对象中存储2097152个字符(尽pipe这包括开销)

请注意,您可以使用GridFS非常轻松地将文本拆分为单独的BSON文档。

我看到你正在使用平面文件的想法。 虽然这可能很容易和快速,但您将很难索引文本以供以后使用。 MongoDB能够索引你所有的文本,实现search将是一个相当简单的function。

MongoDB速度非常快,我毫不怀疑它将成为您最快的数据库解决scheme。 与基于SQL的数据库相比,NodeJS + MongoDB中的开发已经耗费了几个月的时间。 我也看到了一些非常令人印象深刻的performance评论 。 请记住,去年的绩效评估是我去年看到的,而且我看到了更多令人印象深刻的评论,但这正是我今天很容易find的。