0

我在 Flink 1.4.0 上使用 Table API。我有一些Table对象要转换为DataSettype Row。该项目使用 Maven 构建并在 IntelliJ 上导入。我有以下代码,IDE 无法解析方法tableenv.toDataSet()方法。请帮帮我。谢谢你。

ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
BatchTableEnvironment tableEnvironment = TableEnvironment.getTableEnvironment(env);
...
tableEnvironment.registerTableSource("table1",csvSource);
Table table1 = tableEnvironment.scan("table1");
DataSet<Row> result = tableEnvironment.toDataSet(table1, Row.class);

最后一条语句导致错误

“无法解析 toDataSet() 方法”

4

2 回答 2

0

如果DataSet要从csv文件中读取 a,请执行以下操作:

DataSet<YourType> csvInput = env.readCsvFile("hdfs:///the/CSV/file") ...

更多信息:https ://ci.apache.org/projects/flink/flink-docs-release-1.4/dev/batch/#data-sources

于 2018-03-04T17:27:46.393 回答
0

您可能没有导入正确的BatchTableEnvironment.

请检查您是否导入org.apache.flink.table.api.java.BatchTableEnvironment而不是org.apache.flink.table.api.BatchTableEnvironment. 前者是 Java 和 Scala 变体的通用基类。

于 2018-03-04T17:57:18.723 回答