Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.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
Java 从Flink中的表对象中选择基于长度批次的平均值_Java_Apache Flink_Flink Streaming - Fatal编程技术网

Java 从Flink中的表对象中选择基于长度批次的平均值

Java 从Flink中的表对象中选择基于长度批次的平均值,java,apache-flink,flink-streaming,Java,Apache Flink,Flink Streaming,我在Apache-Flink中创建了一个BatchTableEnvironment,并将一些数据加载到名为HTable的表对象中。此数据中有ID、DateTime、Result、UnixDateTime列。这些是INT、Timestamp、Double、Long数据类型。现在我想创建另一个表,该表过滤HTable,根据最后100行的Result列创建翻滚平均值。因此,第1-100行、101-200行等的平均结果应基于行数或ID,而不是时间。问题是我不知道这个的确切语法。请参阅下面的代码

我在
Apache-Flink
中创建了一个
BatchTableEnvironment
,并将一些数据加载到名为
HTable
对象中。此数据中有
ID、DateTime、Result、UnixDateTime
列。这些是
INT、Timestamp、Double、Long
数据类型。现在我想创建另一个表,该表过滤
HTable
,根据最后100行的
Result
列创建翻滚平均值。因此,第1-100行、101-200行等的平均结果应基于行数或ID,而不是时间。问题是我不知道这个的确切语法。请参阅下面的代码

        Table AverageTable = HTable
           .filter("ID.isNotNull && dateTime.isNotNull && result.isNotNull && unixDateTime.isNotNull")
           .select("ID, dateTime, result, unixDateTime")
           .window(Tumble.over("100.rows").on("dateTime").as("movingAverage100"))
            .groupBy("movingAverage100")
           .select("avg(result) as avgResult");

HTable,是Hbase源文件吗?不是,源文件是CSV文件。我尝试此操作时,您可以尝试.window(翻滚10行)吗:
Table Table=HTable.window(翻滚2行)on(“dateTime”).as(“a”).groupBy(“mType”)我得到以下错误:
org.apache.flink.table.api.WindowGroupedTable无法转换为org.apache.flink.table.api.table
。当我删除GROUPBY子句时,我得到了相同的错误。