Graph OrientDB时间序列数据

Graph OrientDB时间序列数据,graph,time-series,orientdb,Graph,Time Series,Orientdb,我见过使用OrientDB对时间序列数据建模的示例,但我不知道插入是什么样子 如果有人能举个例子就好了 问候,, 汤姆 为了更清楚地了解时间序列的效用,您可以想象以下情况: 您拥有与特定日期相关的给定日志。在DB有数百万条记录的情况下,通过日期字段进行搜索将非常昂贵,因为这将迫使查询读取所有记录并检查条件,而时间序列过滤将在连接的类(年、月、小时,然后是日志)之间的每个通道进行,因此,在只读取与日期匹配的记录,而不是所有其他记录之后 举个小例子: CREATE CLASS Year extend

我见过使用OrientDB对时间序列数据建模的示例,但我不知道插入是什么样子

如果有人能举个例子就好了

问候,, 汤姆


为了更清楚地了解时间序列的效用,您可以想象以下情况:

您拥有与特定日期相关的给定日志。在DB有数百万条记录的情况下,通过日期字段进行搜索将非常昂贵,因为这将迫使查询读取所有记录并检查条件,而时间序列过滤将在连接的类(年、月、小时,然后是日志)之间的每个通道进行,因此,在只读取与日期匹配的记录,而不是所有其他记录之后

举个小例子:

CREATE CLASS Year extends V
CREATE CLASS Month extends V
CREATE CLASS Day extends V
CREATE CLASS Hour extends V
CREATE CLASS Log extends V

CREATE PROPERTY Year.value STRING
CREATE PROPERTY Year.month LINKMAP Month
CREATE PROPERTY Month.day LINKMAP Day
CREATE PROPERTY Day.hour LINKMAP Hour
CREATE PROPERTY Hour.log LINKSET Log

CREATE VERTEX Log SET priority='high'
CREATE VERTEX Log SET priority='medium'
CREATE VERTEX Log SET priority='low'

INSERT INTO Hour(log) VALUES ([#16:0,#16:1])
INSERT INTO Hour(log) VALUES ([#16:2])
INSERT INTO Day(hour) VALUES ({'15':#15:0})
INSERT INTO Day(hour) VALUES ({'10':#15:1})
INSERT INTO Month(day) VALUES ({'4':#14:0})
INSERT INTO Month(day) VALUES ({'21':#14:1})
INSERT INTO Year(value,month) VALUES ('2012',{'3':#13:0})
INSERT INTO Year(value,month) VALUES ('2015',{'8':#13:1})
查询1:查找与日期2012年4月3日h15相关的所有日志

SELECT EXPAND(month[3].day[4].hour[15].log) FROM Year WHERE value='2012'
查询2:查找与日期2015年8月21日h10相关的所有日志

SELECT EXPAND(month[8].day[21].hour[10].log) FROM Year WHERE value='2015'

希望有帮助

Hi@TommyK,您有机会尝试我的解决方案吗?括号中的值必须从value='2012'所在的年份开始引用
SELECT EXPAND(月[“3”].日[“4”].小时[“15”].log)