عبارة العلامة المائية

ينطبق على:check marked yes Databricks SQL check marked yes Databricks Runtime 12.0 وما فوق

إضافة علامة مائية إلى علاقة في عبارة تحديد. WATERMARK تنطبق العبارة فقط على الاستعلامات حول بيانات الدفق ذات الحالة، والتي تتضمن الصلات والتجميع.

بناء الجملة

from_item
{ table_name [ TABLESAMPLE clause ] [ watermark_clause ] [ table_alias ] |
  JOIN clause |
  [ LATERAL ] table_valued_function [ table_alias ] |
  VALUE clause |
  [ LATERAL ] ( query ) [ TABLESAMPLE clause ] [ watermark_clause ] [ table_alias ] }

watermark_clause
  WATERMARK named_expression DELAY OF interval

المعلمات

  • named_expression

    تعبير يوفر قيمة من النوع timestamp. يجب أن يكون التعبير مرجعا إلى العمود الموجود، أو تحويلا حتميا مقابل الأعمدة (الأعمدة) الموجودة. يضيف التعبير عمودا من نوع الطابع الزمني الذي يستخدم لتعقب العلامة المائية. يتوفر العمود المضاف للاستعلام.

  • interval_clause

    قيمة حرفية فاصل زمني تحدد حد التأخير للعلامة المائية. يجب أن تكون قيمة موجبة أقل من شهر.

الأمثلة

-- Creating a streaming table performing time window row count, with defining watermark from existing column
> CREATE OR REFRESH STREAMING TABLE window_agg_1
  AS SELECT window(ts, '10 seconds') as w, count(*) as CNT
  FROM
  STREAM stream_source WATERMARK ts DELAY OF INTERVAL 10 SECONDS AS stream
  GROUP BY window(ts, '10 seconds');

-- Creating a streaming table performing time window row count, with deriving a new timestamp column to define watermark
> CREATE OR REFRESH STREAMING TABLE window_agg_2
  AS SELECT window(ts, '10 seconds') as w, count(*) as CNT
  FROM
  STREAM stream_source WATERMARK to_timestamp(ts_str) AS ts DELAY OF INTERVAL 10 SECONDS AS stream
  GROUP BY window(ts, '10 seconds');