mysql - 我的 Web 应用程序需要 mongodb 或 mysql 吗?

标签 mysql mongodb postgresql solr elasticsearch

我是一个有球的新手:)我正在开发一个具有巨大潜力的网络应用程序(至少在 GB 意义上)。想想书签(比如 diigo)。我想存储书签,其中包含 url、标题、描述、标签以及添加书签时的实际 html 内容。我希望所有内容都可以搜索。

什么数据库最适合我的需求?我一直在阅读有关 mongodb、elasticsearch、solr、mysql 和其他 sql 变体的文章,但我无法弄清楚什么最适合我。

为了告诉您我需要什么(某个特定用户上下文中的所有内容),我需要:

  • 搜索网址、标题和标签(我猜任何数据库都可以做得很好?)
  • 一般搜索(即上述内容 + 实际网站存储的 html 文件)

此外我需要:

  • 一般搜索任何内容(用户、日期、网址、标题、标签、html 页面等)

当我的服务规模很小时,所有选项可能都可以,但是如果我突然发现自己的用户爆炸式增长,那该怎么办?

<小时/>

编辑: 我被Algolia震惊了!令人难以置信的文本搜索!而且快!请参阅this与 Elasticsearch 的比较。

最佳答案

  1. 过早的优化是万恶之源
  2. 如果您或您的团队拥有使用一种 RDBMS 的经验,请使用您已经知道的知识。
  3. Postgres 不仅仅在 no-sql 领域占据一席之地:http://thebuild.com/presentations/pg-as-nosql-pgday-fosdem-2013.pdf
  4. Postgres 全文索引摇滚:http://blog.lostpropertyhq.com/postgres-full-text-search-is-good-enough/
  5. 我在 postgres 扩展方面没有太多经验,但有很多成功案例:https://www.braintreepayments.com/braintrust/scaling-postgresql-at-braintree-four-years-of-evolution

关于mysql - 我的 Web 应用程序需要 mongodb 或 mysql 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23069653/

相关文章:

javascript - Angular 谷歌地图/NodeJS : Display Markers from Database

mongodb - 返回嵌入式数组的联合

python - SQL - 有条件地连接和替换两个表之间的值

php - 使用ajax动态显示html表行中的sql数据

mysql - 从一个mysql数据库复制到另一个数据库并将表数据分离到不同的表中

mysql - SQL查询速度慢

node.js - Mongodb子文档填充

mysql - 如何将查询分组写入融合表?

sql - 在文件系统中查找文件的完整路径

mysql - 哪个数据库管理器适用于 100Go 表?