我有一个Ember.js应用程序可以生成html模板,然后我想保存为html。
对于这些模板中的每一个,我将通过solr经由太阳黑子宝石搜索。
当用户搜索时,我希望solr返回结果,然后还返回每个结果的模板html以显示。
我使用mongodb存储数据但不确定将html文档存储到mongodb,文件系统或solr本身。
如果我将它们保存到mongo中,当我从solr获取结果时,我还有一个额外的步骤来查询mongodb。
任何人都有这方面的经验吗?
任何帮助或建议都会很棒!
感谢 里克
答案 0 :(得分:1)
我们有一个类似的设置,ASP.NET MVC4应用程序,由MongoDb和Solr支持。
我们使用Mongo存储数据+模板(我们使用Mustache进行模板化)。在Solr之外,我们只是查询Mongo的数据+模板,使用数据JSON编译Mustache模板并渲染它。
对于SOLR,我们存储(indexed=false
)已编译的HTML以及文档的其他结构化数据(stored=true indexed=true
)。这有助于我们避免对Mongo进行额外查询,还允许我们在文档上使用Facets。
如果您将HTML存储在Mongo中,并且您打算使用facet,那么每个facet选项将至少查看一个额外的Mongo查询。
当我为文档构建数据时,SOLR非常适合将html存储为文本,我不会将其编入索引。