3
- 我连续存储电子邮件事件数据(打开,点击,退订等)从我的电子邮件活动。
- 今年我发送了超过8200万封电子邮件,并发送了许多电子邮件给同一个人(这导致了我的下一个要点)。
- 我担心每个事件使用一行(例如打开)效率不高。
问题:什么可能是更好的方式来组织数据?有没有办法为单个行中的每个联系人/人员聚合事件数据,并且仍然允许SQL访问每个事件/属性?
以下是我可能想象存储数据:再次
但后来,我想数据为Microsoft SQL处理,而不是由PHP,我不知道如何这可以做到。任何见解都会有所帮助。谢谢。
不是一个数据库的存储大量数据的?按预期方式使用它,每个事件使用单行,对于我来说,要比在文本字段中存储不同的事件更加高效,并且每次要查询时都必须解析JSON。您将如何回答“有多少人点击了广告系列XXX”等问题?除此以外? – CompuChip
我猜我认为记录的数量最终会增长到数十亿,并且我很难看到它在这样的大型表上运行测试的效率。尽管你的第二个问题确实碰到了头部。是的,找出有多少人点击广告系列“XXX”并不是非常可行。 – Frumples
在阅读你的问题和CompuChip的一个非常好的评论之后,我会建议看看SQL Server表分区(成本钱只在企业版中可用),但你真的在这里处理大量的数据,一年有8200万行,到明年年底你将处理将近150行,我认为表分区将会帮助你很多。 –