2016-12-21 1 views
1

pipelinedbのstreamからデータをグループ化する方法N分ごとにcontinuous viewを選択しますか?Pipelinedb:連続ビューでN分ごとにストリームデータをグループ化する方法

Pipelinedbのストリームは、多くのリモートホストからのイベントに関するデータを取得します。私はこのイベントをタイプ、IP、時間間隔で5分単位でグループ化し、それらを数える必要があります。

だから入力時に、私は(非常に大まか)があります。

time | ip    | type  
------------------------------------ 
22:35 | 111.111.111.111 | page_open <-- new interaval, ends in 22:40 
22:36 | 111.111.111.111 | page_open 
22:37 | 111.111.111.111 | page_close 
22:42 | 111.111.111.111 | page_close <-- event comes in next interval, ends in 22:45 
22:42 | 222.111.111.111 | page_open 
22:43 | 222.111.111.111 | page_open 
22:44 | 222.111.111.111 | page_close 
22:44 | 111.111.111.111 | page_open 

、連続ビューに何を選択する必要があり:

time | ip    | type  | count 
--------------------------------------------- 
22:40 | 111.111.111.111 | page_open | 2 
22:40 | 111.111.111.111 | page_close | 1 
22:45 | 111.111.111.111 | page_open | 1 
22:45 | 111.111.111.111 | page_close | 1 
22:45 | 222.111.111.111 | page_open | 2 
22:45 | 222.111.111.111 | page_close | 1 

P.S.を 私の英語には申し訳ありません

答えて

0

それにはdate_round(column, interval) [0]機能を使用できます。私は、必要に応じて例えば、

CREATE CONTINUOUS VIEW bucketed AS 
    SELECT date_round(time, '5 minutes') AS bucket, COUNT(*) 
    FROM input_stream GROUP BY bucket; 

[0] http://docs.pipelinedb.com/builtin.html?highlight=date_round

+0

苦しみの月後、それが動作します。わたしは、あなたを愛しています。 – Zaklinatel

関連する問題