Cassandra历史状态信息表设计



我的要求是为历史状态信息(不完全是时间序列)设计一个表。例如:我有设备连接和断开与管理平台的连接。我想知道在给定间隔(开始和结束时间)内连接到管理平台的所有设备的详细信息,如(名称、mac地址、操作系统、映像等)。

关于这个用例的表设计有什么帮助吗?

如果你只想知道它是否在间隔期间连接,这应该在传统的时间序列方法中工作:

create table device_state(
deviceid,
timeofevent,
state,
details,
PRIMARY KEY (deviceid, timeofevent, state)
select details from device_state 
  where timeofevent > '2001-01-01 12:01:01.000' 
  and timeofevent < '2001-01-01 12:15:59.000' 
  and state = 'CONNECTED';

如果您想知道设备是否一直处于连接状态,您可能需要实现一些客户端逻辑。

相关内容

最新更新