创建转储 - Amazon Kinesis Data Analytics
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建转储

泵是 Amazon Kinesis Data Analytics 存储库对象(SQL 标准的扩展),它提供持续运行的 INSERT INTO Stream SELECT... FROM 查询功能,从而允许将查询结果持续输入到命名流中。

您需要为查询和命名流指定列列表(这意味着一组源-目标对)。列列表需要在数据类型方面进行匹配,否则 SQL 验证器会拒绝它们。(它们不需要列出目标流中的所有列;您可以为一列设置泵。)

有关更多信息,请参阅 SELECT

以下代码首先创建和设置架构,然后在此架构中创建两个流:

  • “OrderDataWithCreateTime“它将作为泵的源流。

  • “OrderData“它将作为泵的目标流。

CREATE OR REPLACE STREAM "OrderDataWithCreateTime" ( "key_order" VARCHAR(20), "key_user" VARCHAR(20), "key_billing_country" VARCHAR(20), "key_product" VARCHAR(20), "quantity" VARCHAR(20), "eur" VARCHAR(20), "usd" VARCHAR(20)) DESCRIPTION 'Creates origin stream for pump'; CREATE OR REPLACE STREAM "OrderData" ( "key_order" VARCHAR(20), "key_user" VARCHAR(20), "country" VARCHAR(20), "key_product" VARCHAR(20), "quantity" VARCHAR(20), "eur" INTEGER, "usd" INTEGER) DESCRIPTION 'Creates destination stream for pump';

以下代码使用这两个流来创建泵。数据从” 中选择OrderDataWithCreateTime“并插入”OrderData“。

CREATE OR REPLACE PUMP "200-ConditionedOrdersPump" AS INSERT INTO "OrderData" ( "key_order", "key_user", "country", "key_product", "quantity", "eur", "usd") //note that this list matches that of the query SELECT STREAM "key_order", "key_user", "key_billing_country", "key_product", "quantity", "eur", "usd" //note that this list matches that of the insert statement FROM "OrderDataWithCreateTime";

欲了解更多详情,请参阅主题应用中流和泵在里面Amazon Kinesis Data Analytics.

语法

CREATE [ OR REPLACE ] PUMP <qualified-pump-name>                       [ DESCRIPTION '<string-literal>' ] AS <streaming-insert>

其中 streaming-insert 是一个插入语句,例如:

INSERT INTO ''stream-name'' SELECT "columns" FROM <source stream>