0

也许我误会了问题并将答案与问题混为一谈,但请告诉我。我想(与您共同)考虑一个基于任何 MVC 框架(PHP 或 ASP.NET MVC 等)的网站,该框架将使用搜索引擎(lucene/solr、FAST ESP 等) ) 作为模型的后端。也就是说,项目本身没有数据库。只是一个巨大的半结构化内容文档索引。

我希望了解 - 并记住该网站主要是只读的 - 我可能会遇到麻烦。是什么让你从一开始就认为这是一个坏主意。另外,请假设搜索引擎周围会有一个强大的缓存基础设施——因此,尽管欢迎 perf 评论,但我们认为它们不是主要问题。

谢谢!

4

1 回答 1

0

一般来说,我会使用像 Lucene 这样的工具来搜索内容,并使用数据库来检索它。这并不意味着它不会起作用。这更多的是您为什么不想使用数据库的问题。是的,它可以工作,并且可能会工作(取决于站点的功能要求,请继续阅读),但这仍然不能使像 Lucene 这样的工具成为适合工作本身的工具。

话虽如此,它也确实取决于网站的类型。它真的是一个只有一大堆可搜索数据而没有其他东西的网站,还是比这更多?如果答案是第一个,那就太好了!如果是后者,我能想到一些问题:

  • 数据更新可能很麻烦。“即时更新”通常是不行的,因为 Lucene 必须重建它的索引,这很耗时。如果数据没有太多更新,那很好。如果可行,您可以每天或每晚重新创建几次索引。
  • 尝试将任何不适合索引的数据填充到索引中通常不是一个好主意。如果该站点允许用户在您的站点上注册,那么该用户数据应该真正进入数据库。将它存储在 lucene 索引中并非不可能,它只是不适合这项工作的工具。将索引用作一堆索引文档,但也不要将其用作数据库。
于 2009-07-07T09:11:29.680 回答