我是个新手:)我正在开发一个具有巨大潜力的web应用程序(至少在GB意义上是这样)。想想书签(比如diigo)。我想存储书签,包括url、标题、描述、标签,以及书签时的实际html内容。我希望这一切都是可搜索的。
什么数据库最适合我的需求?我一直在读关于mongodb、elasticsearch、solr、mysql和其他sql变体的文章,但我不知道什么对我最有利
为了告诉你我需要什么(在一个特定用户的上下文中的一切),我需要:
- 在url、标题和标签中搜索(我想任何数据库都会在那里做得很好?)
- 一般搜索(意思是上面+实际站点存储的html文件)
此外,我需要:
- 一般搜索任何内容(用户、日期、url、标题、标签、html页面等)
当我的服务很小的时候,所有的选择都可能是可以的,但如果我突然发现自己的用户爆炸性地膨胀,那该怎么办?
编辑:我被Algolia迷住了!令人难以置信的文本搜索!而且速度快!请参阅与Elasticsearch的比较。
- 过早优化是万恶之源
- 如果您或您的团队有使用一种RDBMS而非另一种RDMS的经验,请使用您已经知道的内容
- Postgres在没有sql的舞台上坚持了下来:http://thebuild.com/presentations/pg-as-nosql-pgday-fosdem-2013.pdf
- Postgres全文索引摇滚:http://blog.lostpropertyhq.com/postgres-full-text-search-is-good-enough/
- 我对postgres扩展没有太多经验,但有很多成功的故事:https://www.braintreepayments.com/braintrust/scaling-postgresql-at-braintree-four-years-of-evolution