| //// |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| http://www.apache.org/licenses/LICENSE-2.0 |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| //// |
| :documentationPath: /plugins/transforms/ |
| :language: en_US |
| :page-alternativeEditUrl: https://github.com/apache/incubator-hop/edit/master/plugins/engines/beam/src/main/doc/beamtimestamp.adoc |
| = Beam Window |
| |
| == Description |
| |
| The Beam Window transform adds event-time-based window functions using the Beam execution engine. |
| |
| == Options |
| |
| [width="90%", options="header"] |
| |=== |
| |Option|Description |
| |Transform name|Name of the transform, this name has to be unique in a single pipeline. |
| |Window type a| |
| |
| * Fixed |
| * Sliding |
| * Session |
| * Global |
| |Window size (duration in seconds)|Sets the window duration size in seconds, default 60. |
| |Every x seconds (Sliding windows)|Sets the slide window duration in seconds. |
| |Window start field|The field containing the window start time. |
| |Window end field|The field containing the window end time. |
| |Window max field|The field containing the max duration between events. |
| |=== |
| |
| == Window Types |
| |
| === Fixed |
| |
| Fixed or tumbling windows are used to repeatedly segment data into distinct time segments and do not overlap. Events cannot belong to more than one window. |
| |
| === Sliding |
| |
| Sliding windows produce an output only when an event occurs and continuously move forward. Every window will have at least one event and can overlap. Events can belong to more than one window. |
| |
| === Session |
| |
| Session windows group events which arrive at similar times and filter out periods of time when there is no data. |
| |
| The window begins when the first event occurs and extends to include new events within a specified timeout. If events keep occurring the window will keep extending until maximum duration is reached. |
| |
| === Global |
| |
| Global windowing is the default in Beam and ignores event time (spanning all of event time) and uses triggers to provide snapshots of that window. |