zoukankan      html  css  js  c++  java
  • pipelineDB学习笔记-3. Continuous Transforms (连续转换)

      以下内容为本人根据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. 你也可以创建自己的输出函数,以便与”连续转换”一同使用.下面的例子就是将“连续转换”的指定的数据插入到一张表中.

        

  • 相关阅读:
    【255】◀▶IEW-Unit20
    【254】◀▶IEW-Unit19
    【253】◀▶IEW-Unit18
    【252】◀▶IEW-Unit17
    [LeetCode] Restore IP Address
    1030
    (Relax 数论1.8)POJ 1284 Primitive Roots(欧拉函数的应用: 以n为模的本原根的个数phi(n-1))
    新知识的遗忘数度真是可怕
    【自由谈】城域网IPv6过渡技术——4v6场景技术总结(1)
    Graph Databases—The NOSQL Phenomenon阅读笔记
  • 原文地址:https://www.cnblogs.com/zhaohuaxishi/p/10101007.html
Copyright © 2011-2022 走看看