我们有两个不同的要求: -
一个系统,记录用户触发的21种不同类型的事件,并在7年内搜索数据(约4TB),并具有亚秒级性能。
一个系统,用户记录3500种不同类型的事件,并在2年内搜索数据(再次约4TB),但性能可能超过一秒。
我们考虑使用Kafka监听器来监听这两个事件,并根据两个不同的要求将它们发布到两个不同的数据源(目前我们使用的是SQL DB)。
但是,我们正试图寻找一种可能性,如果我们可以使用某种技术来实现单一数据源,因为21个事件是3500事件的一部分。
将两个要求结合在一起变成: -
一个系统,记录用户触发的3500种不同类型的用户事件,并在亚秒级性能内搜索7年内的数据(约15TB)。
表格中的示例行: -
+------------+--------------+---------------+--------------------------+
| Account No | Time Created | Action/Event | Action Data |
+------------+--------------+---------------+--------------------------+
| 12345678 | 1527605672 | Account Login | User logged into account |
+------------+--------------+---------------+--------------------------+
需要亚秒级性能的查询是: -
从表中选择*,其中帐户编号= 12345678并且日期在'x'和'y'之间。 x和y将是过去两年内的任何范围。