Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用mysql外部数据包装器的PIpelineDB连续视图_Mysql_Postgresql_Join_Postgres Fdw_Pipelinedb - Fatal编程技术网

使用mysql外部数据包装器的PIpelineDB连续视图

使用mysql外部数据包装器的PIpelineDB连续视图,mysql,postgresql,join,postgres-fdw,pipelinedb,Mysql,Postgresql,Join,Postgres Fdw,Pipelinedb,当我在外部表上完成流连接时,与将连续视图连接到外部表时,得到的结果不同。我认为相同的两个查询似乎不同。本地管道实例与fdw中的表之间的延迟是否会对连续流联接产生影响?我正在尝试聚合外部选项卡上id上的rx_字节和tx_字节 我正在使用最新版本的mysql_fdw 创建外部表 CREATE EXTENSION mysql_fdw; CREATE SERVER local_mysql FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host 'lo

当我在外部表上完成流连接时,与将连续视图连接到外部表时,得到的结果不同。我认为相同的两个查询似乎不同。本地管道实例与fdw中的表之间的延迟是否会对连续流联接产生影响?我正在尝试聚合外部选项卡上id上的rx_字节和tx_字节

我正在使用最新版本的mysql_fdw

  • 创建外部表

    CREATE EXTENSION mysql_fdw;
    
    CREATE SERVER local_mysql
        FOREIGN DATA WRAPPER mysql_fdw
        OPTIONS (host 'localhost', port '3306', secure_auth 'true');
    
    CREATE USER MAPPING FOR pipeline
        SERVER local_mysql 
        OPTIONS(username 'username', password 'password');
    
    CREATE FOREIGN TABLE "foo_instance" (
         "id" bigint,
         "foo_id" bigint,
    )
    SERVERlocal_mysql
    OPTIONS(dbname 'schema', table_name 'foo_instance');
    
  • 在10次插入之后,我希望这两个查询会产生相同的结果:

  • (a)

    (b)


    显然,结果不一样。我可以从连续视图连接到外部表,但更愿意使用流连接。

    有趣的是,找到任何解决方案。。。?
        CREATE CONTINUOUS VIEW total_bytes
        AS SELECT date_trunc('minute', time_stamp::timestamp) AS minute,
            id::integer,
            sum(tx_bytes::bigint) AS tx_bytes,
            sum(rx_bytes::bigint) AS rx_bytes
         FROM byte_count_stream GROUP BY minute, id;
    
        SELECT minute, sum(tx_bytes) AS tx_bytes, sum(rx_bytes) AS rx_bytes, foo_id 
        FROM total_bytes JOIN foo_instance 
             ON total_bytes.id=foo_instance.id GROUP BY minute, foo_instance.foo_id;
    
               minute        | tx_bytes | rx_bytes | foo_id 
        ---------------------+----------+----------+---------
         2016-02-22 09:04:00 |      450 |      513 |    7939
         2016-02-22 09:04:00 |     2762 |     2210 |    7940
         2016-02-22 09:04:00 |      143 |      332 |    7941
         2016-02-22 09:04:00 |      371 |     1042 |    7942
         2016-02-22 09:04:00 |      865 |      987 |    7943
         (5 rows)
    
        CREATE CONTINUOUS VIEW joined_foo_total_bytes
            AS SELECT date_trunc('minute', byte_count_stream.time_stamp::timestamp) AS minute,
                sum(byte_count_stream.tx_bytes::bigint) AS tx_bytes,
                sum(byte_count_stream.rx_bytes::bigint) AS rx_bytes,
                foo_instance.foo_id
            FROM byte_count_stream JOIN foo_instance ON byte_count_stream.id::integer = foo_instance.id
            GROUP BY minute, foo_instance.foo_id;
    
    
    
        pipeline=# select * from joined_user_total_bytes;       
               minute        | tx_bytes | rx_bytes | foo_id 
        ---------------------+----------+----------+---------
         2016-02-22 09:04:00 |      371 |     1042 |    7942
         2016-02-22 09:04:00 |      143 |      332 |    7941
         2016-02-22 09:04:00 |      865 |      987 |    7943
         2016-02-22 09:04:00 |     2762 |     2210 |    7940
         (4 rows)