Skip to content

Conversation

@APozdniakov
Copy link
Member

Changelog entry

Add docs for watermarks

Changelog category

  • Documentation (changelog entry is not required)

Description for reviewers

...

@APozdniakov APozdniakov requested a review from uzhastik December 5, 2025 16:25
@APozdniakov APozdniakov self-assigned this Dec 5, 2025
@APozdniakov APozdniakov requested a review from a team as a code owner December 5, 2025 16:25
@github-actions
Copy link

github-actions bot commented Dec 5, 2025

✅ Documentation build

Revision built successfully
Revision preview link

Build logs

Warnings (8)

⚠️ ru/concepts/streaming_query/formats.md: 60: MD031 / blanks-around-fences Fenced code blocks should be surrounded by blank lines [Context: "```"]

⚠️ ru/concepts/streaming_query/index.md: 26: MD001 / heading-increment Heading levels should only increment by one level at a time [Expected: h2; Actual: h3]

⚠️ ru/public-materials/videos/2025.md: 25: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

⚠️ ru/public-materials/videos/2025.md: 39: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

⚠️ ru/public-materials/videos/2025.md: 45: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

⚠️ ru/public-materials/videos/2025.md: 59: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

⚠️ ru/public-materials/videos/2025.md: 7: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

⚠️ ru/public-materials/videos/2025.md: 9: MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]

@@ -0,0 +1,9 @@
# Водяные знаки
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Непонятно нужно ли как то настраивать ватермарки и как; нужны ли ватермарки если в запросе нет MR/HOP


Каждое [событие](../datamodel/topic.md#message) в системе потоковой обработки данных имеет ассоциированную с ним временную метку. Эта метка может равняться времени чтения события из [топика](../datamodel/topic.md), может быть получена из данных внутри события или из метаданных [топика](../datamodel/topic.md).

Поверх этого времени события можно делать сортировку на потоке (внутри [MATCH_RECOGNIZE](../../yql/reference/syntax/select/match_recognize.md#order_by)) или агрегацию на временнОм окне ([GROUP BY HoppingWindow](../../yql/reference/syntax/select/group-by.md#hopping_window)). Эти потоковые операции должны знать текущее время, чтобы на основе этой информации генерировать выходные данные и делать это в режиме реального времени. Времени, получаемого из события, не всегда достаточно, так как события могут приходить нерегулярно или отфильтровываться на более ранних этапах.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Непонятно что в данном предложении значит "времени события", это и есть временная метка?


Каждое [событие](../datamodel/topic.md#message) в системе потоковой обработки данных имеет ассоциированную с ним временную метку. Эта метка может равняться времени чтения события из [топика](../datamodel/topic.md), может быть получена из данных внутри события или из метаданных [топика](../datamodel/topic.md).

Поверх этого времени события можно делать сортировку на потоке (внутри [MATCH_RECOGNIZE](../../yql/reference/syntax/select/match_recognize.md#order_by)) или агрегацию на временнОм окне ([GROUP BY HoppingWindow](../../yql/reference/syntax/select/group-by.md#hopping_window)). Эти потоковые операции должны знать текущее время, чтобы на основе этой информации генерировать выходные данные и делать это в режиме реального времени. Времени, получаемого из события, не всегда достаточно, так как события могут приходить нерегулярно или отфильтровываться на более ранних этапах.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не всегда достаточно,

Как клиенту понять достаточно или не достаточно? Получается как будто врегда нужно использовать ватермарки . Может с одной партицией и не нужно?

* `projection.enabled` - флаг включения [расширенного партиционирования данных](../../../../concepts/federated_query/s3/partition_projection.md). Допустимые значения: `true`, `false`.
* `projection.<field_name>.type` - тип поля [расширенного партиционирования данных](../../../../concepts/federated_query/s3/partition_projection.md). Допустимые значения: `integer`, `enum`, `date`.
* `projection.<field_name>.<options>` - расширенные свойства поля [расширенного партиционирования данных](../../../../concepts/federated_query/s3/partition_projection.md).
{% if select_command == "SELECT STREAM" %}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Это же вроде для rtrm, т.е. наоборот нужно != "SELECT STREAM


Поверх этого времени события можно делать сортировку на потоке (внутри [MATCH_RECOGNIZE](../../yql/reference/syntax/select/match_recognize.md#order_by)) или агрегацию на временнОм окне ([GROUP BY HoppingWindow](../../yql/reference/syntax/select/group-by.md#hopping_window)). Эти потоковые операции должны знать текущее время, чтобы на основе этой информации генерировать выходные данные и делать это в режиме реального времени. Времени, получаемого из события, не всегда достаточно, так как события могут приходить нерегулярно или отфильтровываться на более ранних этапах.

Для решения этой проблемы нужен водяной знак. Это наибольшая временная метка, которая гарантированно находится в прошлом для каждой партиции.
Copy link
Collaborator

@kardymonds kardymonds Dec 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

этой проблемы

может явно написать что за проблема (что-то вроде проблема продвижение времени в отсутсвии данных или запоздании данных)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants