我有一个使用事件采购的应用程序。
创建用户,当发生这种情况时,例如“用户wascreated”存储在事件流中。
问题
我想显示“在过去24小时内连接的用户总数”。
我不确定如何通过预测处理。我了解预测的方式是,它将在第一次创建事件流时读取事件流,然后会收听事件以进行一些工作。
无论我想对过去24小时内创建的用户计算的投影,它还不够听“用户wascreated”,因为我也必须停止对过去的用户进行计数。
我怎么能接近这个?
如何在事件采购系统中的过去24小时内获得大量用户?
通常的答案:设置一个过程,该过程读取将要写入事件故事的事件,并将您需要的信息复制到另一个更适合查询的数据存储中。
例如,如果您知道如何从关系数据库中获取“在过去24小时内创建的用户”,那么您创建一个过程,该过程从事件存储中读取事件并将所需信息复制到关系数据库中。
这个问题使我想起了数据集市的维度模型。
为了简单起见,我们使用关系数据库。
在这种情况下,日期时间和用户是维度。创造是加入这两个维度的事实。这是非常强大的模式,可以为您的许多问题提供答案。
但是,如果Yagni和您需要专门针对此问题的投影,则一张具有两个列的表格,user_id和nocendure_at,就足够了。在所有用户造成的(或用户注册?)事件上迭代并进行保湿很容易迭代。