Postgresql 如何在pipelinedb中列出所有流和连续视图?

Postgresql 如何在pipelinedb中列出所有流和连续视图?,postgresql,pipelinedb,Postgresql,Pipelinedb,在pipelinedb中,我似乎找不到列出我创建的所有流和连续视图的方法 我可以通过查找创建的“mrel”表返回CVs,但它有点笨重 是否有我可以查询的系统表或视图可以列出它们 您可能拥有较旧版本的pipelinedb,或者您可能正在查看较旧版本的文档 您可以使用psql检查您的版本,如下所示: pipeline=# select * from pipeline_version();

在pipelinedb中,我似乎找不到列出我创建的所有流和连续视图的方法

我可以通过查找创建的“mrel”表返回CVs,但它有点笨重


是否有我可以查询的系统表或视图可以列出它们

您可能拥有较旧版本的pipelinedb,或者您可能正在查看较旧版本的文档

您可以使用psql检查您的版本,如下所示:

pipeline=# select * from pipeline_version();
                                                                     pipeline_version                                                                      
-----------------------------------------------------------------------------------------------------------------------------------------------------------
 PipelineDB 0.9.0 at revision b1ea9ab6acb689e6ed69fb26af555ca8d025ebae on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4, 64-bit
(1 row)
在最新版本中,可以通过以下方式获得有关视图的信息:

pipeline=# select * from pipeline_views();
 id | schema | name |         query         
----+--------+------+-----------------------
 11 | public | cv   |  SELECT x::integer,  +
    |        |      |     count(*) AS count+
    |        |      |    FROM ONLY s       +
    |        |      |   GROUP BY x::integer
(1 row)
pipeline=# select * from pipeline_streams();
 schema | name | inferred | queries |                tup_desc                
--------+------+----------+---------+----------------------------------------
 public | s    | t        | {cv}    | \x000000017800000006a4ffffffff00000000
(1 row)
关于流的信息可以如下获得:

pipeline=# select * from pipeline_views();
 id | schema | name |         query         
----+--------+------+-----------------------
 11 | public | cv   |  SELECT x::integer,  +
    |        |      |     count(*) AS count+
    |        |      |    FROM ONLY s       +
    |        |      |   GROUP BY x::integer
(1 row)
pipeline=# select * from pipeline_streams();
 schema | name | inferred | queries |                tup_desc                
--------+------+----------+---------+----------------------------------------
 public | s    | t        | {cv}    | \x000000017800000006a4ffffffff00000000
(1 row)
使用\d+可以获得更多信息:

pipeline=# \d+ cv
             Continuous view "public.cv"
 Column |  Type   | Modifiers | Storage | Description 
--------+---------+-----------+---------+-------------
 x      | integer |           | plain   | 
 count  | bigint  |           | plain   | 
View definition:
 SELECT x::integer,
    count(*) AS count
   FROM ONLY s
  GROUP BY x::integer;

pipeline=# \d+ s
                     Stream "public.s"
      Column       |            Type             | Storage 
-------------------+-----------------------------+---------
 arrival_timestamp | timestamp(0) with time zone | plain
很简单,豌豆

只要写

select * from pipeline_streams();
要查看pipelinestreams及其内部,您可以查看哪个流具有哪些视图

编辑: 以上代码片段仅适用于PipelineDB的0.9.x版本,因为它是版本为1.x的PostgreSQL扩展。您将使用外部表作为流

psql -c "\dE[S+];"
此代码将显示psql(pipelinedb上的流)上的所有外部表


有关更多信息:

文档说明:
SELECT*FROM pipeline.pipeline_views()应该可以工作,但函数不存在。是的。我用的是旧版本。这就解释了为什么几周前我在文档中什么都没看到。是时候升级了。谢谢