我们正在开发一个项目,该项目将具有某些操作(例如点击)的实时统计数据。每次点击时,我们都会记录日期、年龄和性别(这些来自 Facebook)、位置等信息。
我们正在讨论存储这些信息并将其用于实时统计的最佳位置。我们将显示汇总统计信息:例如,点击次数、男性/女性点击次数、按年龄组划分的点击次数(例如 18-24、24-30...)。
由于在该站点上我们到处都在使用 MongoDB,我的同事认为我们也应该在其中存储统计信息。然而,我更喜欢基于 SQL 的数据库来完成这项任务,比如 MySQL(或者 Drizzle),因为我相信 SQL 在执行数据聚合等操作时会更好。虽然解析 SQL 会产生开销,但我认为 MySQL/Drizzle 实际上可能比 No-SQL 数据库更快。使用 INSERT DELAYED 查询时,插入也不慢。
请注意,我们不需要执行 JOINS 或从多个表/集合中收集数据。因此,我们不在乎数据库是否不同。但是,我们确实关心可扩展性和可靠性。我们正在构建一些(希望)变得非常大的东西,并且我们在设计每一行代码时都考虑到了可扩展性。
你怎么看待这件事?有什么理由比 MySQL/Drizzle 更喜欢 MongoDB 吗?还是无动于衷?如果你是我们,你会用哪一个?
谢谢你,亚历山德罗