我想存储一些分析数据。例如,用户执行操作X的次数或过去一天登录的用户数量等。
最佳做法是将另一个表添加到现有的应用程序数据库中吗?或者在这里添加新数据库?我认为第二种选择有点矫枉过正。
答案 0 :(得分:1)
这完全取决于您的业务/安全/公共利益需求,用例和资金。
例如,如果通过分析,您的意思是“计算出有多少匿名用户阅读这个微小的公共维基”,那么表格可能会很好。如果该wiki增长,那么出于性能原因,您可能需要单独的数据库。
但是,如果分析数据库包含有关网站成员的信息 - 尤其是不需要直接存储在公共网站上的信息 - 那么您有法律责任采取所有合理的预防措施来保护数据。这可能意味着将其存储在单独的业务内部数据库中,而不是存储在面向公众的站点数据库中。
至少,您应该为Web应用程序中的分析设置单独的数据库连接设置,单独的连接和单独的游标,以便以后可以轻松将它们拆分为单独的数据库。这通常是为了在webapps中分离读写,所以如果你遇到困难,你应该能够找到它的例子。
通过某个小型网站加载,无论如何,您都希望将其放在单独的数据库中以获得性能。除非您使用的是某种为性能而构建的分布式,水平可扩展的数据库,否则就是这样。
答案 1 :(得分:1)
使用单独的数据库。它使您的架构更清晰,更容易管理数据库用户及其访问权限(因为您不需要每表权限),并且如果您需要走这条路,它可以更轻松地管理复制。 / p>
答案 2 :(得分:-1)
只需在现有数据库中添加另一个表,如果添加另一个数据库,则必须同时从一个数据库切换到另一个数据库意味着必须处理mysql_connect()
或者需要在连接之前关闭先前的数据库连接其他db,它会有点忙乱