2016-05-17 95 views
1

我有一個要求,我必須捕獲過去幾個月的user_session細節。當我查詢user_sessions表時,我只有最後三天,四天的信息。無論如何,我們可以獲得最近6個月的user_sessions詳細信息?Vertica中的User_Sessions

謝謝 Sadagopan

回答

1

USER_SESSION是對3 DIFFRACT數據收集表頂視圖,數據採集器表包括有關的許多事件和活動對Vertica的存在的信息,這個信息正在磁盤上仍然存在一些默認保留期限。 您有兩個主要選項可以有6個月的會話歷史視圖 1.將相關DC表的保留期的設置更改爲6Mounts 2.開發每隔幾天運行一次的腳本或流程,併合並user_session爲用戶定義本地表。

對於選項#1,您需要爲每個DC表運行以下API(小心使用此選項需要Vertica端存在額外的磁盤空間)。選擇set_data_collector_time_policy('SessionEnds','1 day':: interval);選擇set_data_collector_time_policy('SessionEnds','1 day':: interval);選擇set_data_collector_time_policy('SessionEnds','1 day':: interval);選擇set_data_collector_time_policy
SELECT set_data_collector_time_policy('SessionStarts','1 day':: interval);
SELECT set_data_collector_time_policy('RuntimePriorityChanges','1 day':: interval);

+0

謝謝@elirevach。我們正在做選項#2,腳本以增量方式每天更新用戶表。由於一些遷移,此腳本停止運行,我們正試圖獲取最近幾個月的詳細信息。如果我們打開選項#1,這隻會從今天開始生效。正確? – Sadagopan

+0

是的,只有前進 – elirevach

+0

好的,非常感謝。這非常有幫助。 – Sadagopan