Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-3089

State API Should Support Data Expiration (State TTL)

    XMLWordPrintableJSON

    Details

      Description

      In some usecases (webanalytics) there is a need to have a state per visitor on a website (i.e. keyBy(sessionid) ).
      At some point the visitor simply leaves and no longer creates new events (so a special 'end of session' event will not occur).

      The only way to determine that a visitor has left is by choosing a timeout, like "After 30 minutes no events we consider the visitor 'gone'".

      Only after this (chosen) timeout has expired should we discard this state.

      In the Trigger part of Windows we can set a timer and close/discard this kind of information. But that introduces the buffering effect of the window (which in some scenarios is unwanted).

      What I would like is to be able to set a timeout on a specific state which I can update afterwards.

      This makes it possible to create a map function that assigns the right value and that discards the state automatically.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                azagrebin Andrey Zagrebin
                Reporter:
                nielsbasjes Niels Basjes
              • Votes:
                8 Vote for this issue
                Watchers:
                37 Start watching this issue

                Dates

                • Created:
                  Updated: