DStream::latestKeyedSink
语法
DStream::latestKeyedSink(name, keyColumn, timeColumn, [asyncWrite=true],
[compress=true], [cacheSize], [retentionMinutes=1440], [flushMode=0],
[preCache], [cachePurgeTimeColumn], [cachePurgeInterval],
[cacheRetentionTime])
详情
将流数据输出到最新键值流表。该表根据时间戳决定是否更新记录。
有关最新键值流数据表的更多信息,请参阅 latestKeyedStreamTable 手册。
参数
name 字符串,指定目标表名。
keyColumn 是一个字符串或向量,表示主键。主键的数据类型必须属于以下类别:INTEGRAL, TEMPORAL, LITERAL 或 FLOATING。
timeColumn 字符串标量或长度为 2 的向量,分别用于指定 1 个或 2 个时间列。当仅指定 1 个时间列时,该列可以为整型或时间类型;当指定 2 个时间列时,第 1 列必须是 DATE 类型,第 2 列则是 TIME, SECOND 或 NANOTIME 类型。通过这两列,可以共同确定唯一的时间值。
asyncWrite 可选参数,是一个布尔值,表示是否异步持久化数据到磁盘。默认值为 true,流数据写入内存即为写入成功,持久化到磁盘的操作将会由另一个线程执行。
持久化数据到磁盘包含两个步骤:
-
写内存数据到操作系统缓存
-
写缓存数据到磁盘(是否开启同步刷盘由参数 flushMode 决定)
返回值
返回一个 DStream 对象。
