sql >> データベース >  >> NoSQL >> MongoDB

巨大なイベントストリームのギャップを見つけますか?

    これは、 lag()> タイムスタンプ順に並べられたstream_idによるパーティション上のウィンドウ関数。 lag() 関数を使用すると、パーティション内の前の行にアクセスできます。ラグ値がない場合は、前の行です。したがって、stream_idのパーティションが時間順に並べられている場合、前の行はそのstream_idの前のイベントです。

    SELECT stream_id, lag(id) OVER pair AS start_id, id AS end_id,
           ("timestamp" - lag("timestamp") OVER pair) AS diff
    FROM my_table
    WHERE diff > interval '2 minutes'
    WINDOW pair AS (PARTITION BY stream_id ORDER BY "timestamp");
    


    1. forループ内の複数の非同期関数の後のNodeJSコールバック

    2. NoSQLデータベースの戦い-MongoDBとFirebaseの比較

    3. Spring Boot+Redis-奇妙なキーを生成する

    4. FLASKとpythonでmongoを使用する