本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建流
CREATE STREAM 语句创建一个(本地)流。流的名称必须与同一 schema 中任何其他流的名称不同。最好添加流的描述。
与表一样,流也有列,您可以在 CREATE STREAM 语句中为这些列指定数据类型。它们应映射到您正在为其创建流的数据源。对于 column_name,任何有效的非保留 SQL 名称都可用。列值不能为空。
如果流已存在,则指定 OR REPLACE 会重新创建流,从而允许对现有对象进行定义更改,无需先使用 DRP 命令即可隐式删除该流。在已经有数据正在运行的流上使用 CREATE OR REPLACE 会终止直播并丢失所有历史记录。
只有在指定了 OR REPLACE 时才能指定重命名。
有关 type_specifical 中类型和值的完整列表,例如 TIMESTAMP、INTEGER 或 varchar (2),请参阅 Amazon Kinesis Data Analytics SQL 参考指南中的主题 Amazon Kinesis Data Analytics 类型。
对于 option_value,可以使用任何字符串。
未解析日志数据的简单流
CREATE OR REPLACE STREAM logStream ( source VARCHAR(20), message VARCHAR(3072)) DESCRIPTION 'Head of webwatcher stream processing';
直播采集来自智能出行系统管道的传感器数据
CREATE OR REPLACE STREAM "LaneData" ( -- ROWTIME is time at which sensor data collected LDS_ID INTEGER, -- loop-detector ID LNAME VARCHAR(12), LNUM VARCHAR(4), OCC SMALLINT, VOL SMALLINT, SPEED DECIMAL(4,2) ) DESCRIPTION 'Conditioned LaneData for analysis queries';
从电子商务管道直播采集订单数据
CREATE OR REPLACE STREAM "OrderData" ( "key_order" BIGINT NOT NULL, "key_user" BIGINT, "country" SMALLINT, "key_product" INTEGER, "quantity" SMALLINT, "eur" DECIMAL(19,5), "usd" DECIMAL(19,5) ) DESCRIPTION 'conditioned order data, ready for analysis';