如何在scala
中从Flink
中读取avro
?
批处理/流/表是否相同:StreamExecutionEnvironment
/ExecutionEnvironment
/TableEnvironment
?
会不会像:val custTS: TableSource = new AvroInputFormat("/path/to/file", ...)
下面是java avro实现ref(连接器(,但在任何地方都找不到scala ref:
AvroInputFormat<User> users = new AvroInputFormat<User>(in, User.class);
DataSet<User> usersDS = env.createInput(users);
你可以使用 Flink 的 InputFormats
,包括 Java 和 Scala API 的 AvroInputFormat
:
- 流式传输和批处理:
val avroInputStream = env.createInput(new AvroInputFormat[User](in, classOf[User]))
- 表 API:
tableEnv.registerTable("table", avroInputStream.toTable)