以下内容为本人根据pipelineDB官网内容进行翻译,如有不妥之处请指正,谢谢大家

        Continuous Transforms (连续转换)

  一、定义:

    Continuous Transforms (我意译为“连续转换”),是用来将没有进行存储的时序化数据连续不断的进行转换。由于没有数据被存储,所以“连续转换”不支持聚合功能。由“连续转换”得到的结果可以通过管道(pipe)连接到其他的流或者写入到外部数据来进行存储。简单的说就是将时序化数据转换为一个新的stream或者持久化数据进行存储。

   二、创建:

    创建语句与创建连续视图的语句相似,将”action”的参数换为”transform”即可。

    语句:CREATE VIEW  名称   (WITH action=transform  [ , outputfunc=输出函数(参数列表) ]) AS query;

    query: pipelineDB是基于postgreSQL改进的,这里的query是指 postgreSQL中的 “select ” 语句.

    

    (以上是官网关于 query 的截图,表示query可以支持的选项)

  三、 删除:

    DROP   VIEW    要删除的连续转换的名称;

  四、查看所有定义的“连续转换”:

     SELECT  *   FROM   pipelinedb.transforms;

  五、“连续转换”的输出流:

    所有的“连续转换”都有一个与它自身相关联的输出流,通过使用这个输出流可以“读取” “连续转换”所指定的数据.

    例如:通过join关联stream与table所生成的“连续转换”,“连续转换”中的数据可以通过 output_of( ) 函数读取。

  六、内置输出函数:

      为了比内置输出函数提供更多的灵活性,pipelinedb提供了一个使用“触发器函数”来接收“连续转换”中所有数据列的接口。 通过将“触发器函数”附加到“连续转换”上,你可以对接收到的数据做任何你想做的事,包括“写入”到其他的stream中.

      pipelineDB提供了一个内置触发器 “pipelinedb.insert_into_stream”,可以与“连续转换”一同使用。这个触发器会将数据插入到所有在参数列表中指定的stream中。下面的例子就是将stream中所有的偶数插入到“even_stream”中    注意:被插入数据的stream,必须是已经存在的,否则会抛出错误。

      

  七、创建自己的输出函数:

    1. 你也可以创建自己的输出函数,以便与”连续转换”一同使用.下面的例子就是将“连续转换”的指定的数据插入到一张表中.

    

pipelineDB学习笔记-3. Continuous Transforms (连续转换)的更多相关文章

  1. pipelinedb学习笔记 - 1. Continuous Views (连续视图)

    Continuous Views 一.Continuous Views 英文直译过来叫连续视图, 在pipelindb中是被定义为专门用来展示 Stream中数据用的.例如:Stream中有一些用户信 ...

  2. pipelineDB学习笔记-2. Stream (流)

    一.流的定义: 所谓的“流”(stream)在pipelineDB中是指那些被允许的数据库客服端推送到 Continuous View(连续视图) 的时序化数据的一种“抽象”.流中的每一个raw(数据 ...

  3. C++ Primer 学习笔记_60_重载操作符与转换 --赋值、下标、成员訪问操作符

    重载操作符与转换 --赋值.下标.成员訪问操作符 一.赋值操作符 类赋值操作符接受类类型形參,通常该形參是对类类型的const引用,但也能够是类类型或对类类型的非const引用.假设未定义这个操作符, ...

  4. C++ Primer 学习笔记_61_重载操作符与转换 --自增/自减操作符

    重载操作符与转换 --自增/自减操作符 引言: 自增,自减操作符常常由诸如迭代器这种类实现,这种类提供相似于指针的行为来訪问序列中的元素.比如,能够定义一个类,该类指向一个数组并为该数组中的元素提供訪 ...

  5. C++ Primer 学习笔记_62_重载操作符与转换 --调用操作符和函数对象

    重载操作符与转换 --调用操作符和函数对象 引言: 能够为类类型的对象重载函数调用操作符:一般为表示操作的类重载调用操作符! struct absInt { int operator() (int v ...

  6. C++ Primer 学习笔记_63_重载运算符和转换 --转换和类类型【上】

    重载运算符和转换 --转换与类类型[上] 引言: 在前面我们提到过:能够用一个实參调用的位 unsignedchar 相同范围的值,即:0到255. 这个类能够捕获下溢和上溢错误,因此使用起来比内置u ...

  7. kettle学习笔记(九)——子转换、集群与变量

    一.概述 kettle中3个重要的步骤: 子转换/映射 在转换里调用一个子转换,便于封装和重用. 集群 集群模式 变量和参数 变量和参数的用法 二.子转换 1.定义子转换 主要由映射输入与映射输出定义 ...

  8. kettle学习笔记(六)——kettle转换步骤

    一.概述 转换步骤分类: 1. 增加新的列 2. 字符串处理 3. 行列变换 4. 排序/排重/字段选择 5. 其他转换步骤 二.增加新的列 1.增加常量列 增加一列常量的列 其它增加列的操作大同小异 ...

  9. Maven 学习笔记——将普通的Java项目转换成Maven项目(3)

    将一个普通的java项目转换成Maven项目并不是一个很大的任务,仅仅只需要下面的几步就能将转换成功.下面我是用一个简单的Selenium测试小demon作为例子来说的. 移调项目中所有关联的Libr ...

随机推荐

  1. CSS如何设置列表样式属性,看这篇文章就够用了

    列表样式属性 在HTML中有2种列表.无序列表和有序列表,在工作中无序列表比较常用,无序列表就是ul标签和li标签组合成的称之为无序列表,那什么是有序列表呢?就是ol标签和li标签组合成的称之为有序列 ...

  2. Json用途

    Json用途 转自:https://www.cnblogs.com/daikefeng/p/6366229.html  JSON定义 JSON(JavaScript Object Notation)  ...

  3. 结合源码,重温 Android View 的事件处理知多少 ?

    前言 Android View 的 事件处理在我们的编程中,可谓是无处不在了.但对于大多数人而言,一直都是简单的使用,对其原理缺乏深入地认识. 学 Android 有一段时间了,最近发现,很多基础知识 ...

  4. canvas入门,就是这个feel!

    钙素 Canvas 是在HTML5中新增的标签用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图.也就是说我们将通过JS完成画图而不是css. canva ...

  5. PowerMock学习(六)之Mock Final的使用

    Mock Final mockfinal相对来说就比较简单了,使用powermock来测试使用final修饰的method或class,比较简单,接口调用部分,还是service调用dao. 对于接口 ...

  6. mybatis精讲(四)--ObjectFactory

    目录 前言 mybatis的ObjectFactory 源码 setProperties create instantiateClass 使用场景 # 加入战队 微信公众号 前言 ObjectFact ...

  7. Selenium+Java(一)Selenium基础环境配置

    前言 Selenium在Java中是以Jar包的形式存在,如要使用Java编写Selenium自动化测试用例,需要导入Jar包. selenium需要的Jar包下载地址: http://seleniu ...

  8. linux常见配置文件路径

    1:/etc/sysconfig/i18n                        (语言配置文件). 2:/etc/sysconfig/network-scripts/ifcfg-eth0   ...

  9. 请求头里显示Provisional headers are shown的问题

    1.问题描述: 在工作中遇到了一个坑.登录一个系统的时候,退出登录不好使了,前端确实调用了logout的接口(退出接口),但是这个接口的请求头显示Provisional headers are sho ...

  10. CentOS 7上利用systemctl添加自定义系统服务

    Centos 7 之 systemctl CentOS 7继承了RHEL 7的新的特性,例如强大的systemctl,而systemctl的使用也使得以往系统服务的/etc/init.d的启动脚本的方 ...