4
我已經看到使用OrientDB模擬時間序列數據的例子,但我不知道插入的樣子。OrientDB時間序列數據
如果有人有這樣的例子,那將是很棒的。
問候, 湯姆
https://github.com/orientechnologies/orientdb/wiki/Time-series-use-case
我已經看到使用OrientDB模擬時間序列數據的例子,但我不知道插入的樣子。OrientDB時間序列數據
如果有人有這樣的例子,那將是很棒的。
問候, 湯姆
https://github.com/orientechnologies/orientdb/wiki/Time-series-use-case
,以獲得時間序列的效用有更明確的想法,你能想象這樣的詭辯:
您有關於某個日期指定日誌。在數據庫擁有數百萬條記錄的情況下,通過日期字段進行搜索會非常昂貴,因爲它會迫使查詢讀取所有記錄並檢查條件,而時間序列過濾發生在連接之間的每個通道班級(年,月,小時,然後是日誌),因此在讀取僅與日期匹配的記錄之後,而不是所有其他記錄。
下面一個小例子:
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:查找所有與日期相關的日誌21/8/2015 h10
SELECT EXPAND(month[8].day[21].hour[10].log) FROM Year WHERE value='2015'
希望它有幫助
嗨@TommyK,你有沒有機會嘗試我的解決方案? – LucaS