我正在尝试在我们的网站上开发一个记录用户操作的系统,以便稍后我们可以制作一些模式。我不确定我应该使用什么数据存储,但我认为NoSQL之类的东西是因为它很容易扩展。它应该是无模式的,因此我们可以在必要时轻松更改数据格式。此外,它应该非常快速地写入数据,但读取非常罕见。
数据应该是这样的:
userid = 1,action = act1,timestamp = 1234,additional_info1 = something_here userid = 2,action = act1,timestamp = 324,additional_info2 = something_else_here
存储后,我们希望为一个用户制作一些统计信息,一个操作,一个additional_info。
你能给我一些关于我应该使用什么存储空间的提示吗?
PS:Out webapp是用PHP编写的
答案 0 :(得分:2)
答案 1 :(得分:0)
据我所知,您需要易用性和动态/无架构。虽然信息不够,但我觉得你需要像Redis或MongoDB这样的东西。请注意,MongoDB存储JSON文档和查询有时会变得复杂,并且可能涉及一些学习曲线。另一方面,使用Redis,你可以很快进入。 但是你应该知道你需要的思考方式与RDBMS不同。数据分析部分没有连接和关系,因此您需要相应地理解和设计解决方案。
如果您需要概述NoSQL,我已在博客文章中解释了一些不同类型的NoSQL数据库, http://ttltheory.wordpress.com/2011/08/07/next-generation-data-storage/
答案 2 :(得分:-1)
你能给我一些关于我应该使用什么存储空间的提示吗?
不是,不。而你似乎已经决定使用NoSQL DB。
您(我们?)需要回答的信息是您想要捕获的信息(明确地),您希望如何分析它以及如何呈现结果。
一定要使用nosql系统实现完整的解决方案 - 但是如果你没有很好地定义你的需求,那么我强烈建议使用关系数据库来建模数据并生成样本报告。