エントリーから本物のフレグランスへのフリンク(3、コレクションやファイルからデータを読み取る)

環境への備えについては、https//blog.51cto.com/mapengfei/2546985を参照してください。

コレクションからデータを読み取る

新しいパッケージcom.mafei.apitestを作成し、新しいscala Objectクラスを作成し、

package com.mafei.apitest

import org.apache.flink.api.scala.createTypeInformation
import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment

//获取传感器数据

case class SensorReading(id: String,timestamp: Long, temperature: Double)
object SourceTest {

  def main(args: Array[String]): Unit = {
    //创建执行环境
    val env = StreamExecutionEnvironment.getExecutionEnvironment

    // 1、从集合中读取数据
    val dataList = List(
      SensorReading("sensor1",1603766281,41),
      SensorReading("sensor2",1603766282,42),
      SensorReading("sensor3",1603766283,43),
      SensorReading("sensor4",1603766284,44)
    )

    val stream1 = env.fromCollection(dataList)

    stream1.print()

    //执行
    env.execute(" source test")
  }

}


エントリーから本物のフレグランスへのフリンク(3、コレクションやファイルからデータを読み取る)
代码目
录図:运行構成SLF4J:クラス「org.slf4j.impl.StaticLoggerBinder」の読み込みに失敗しました。
SLF4J:デフォルトで無操作(NOP)ロガーの実装
SLF4J:詳細については、http//www.slf4j.org/codes.html#StaticLoggerBinderを参照してください。
2> SensorReading(sensor3,1603766283,43.0)
4> SensorReading(sensor1,1603766281,41.0)
3> SensorReading(sensor4,1603766284,44.0)
1> SensorReading(sensor2,1603766282,42.0)

ファイルからデータを読み取る

最初のステップと同様に、新しいパッケージcom.mafei.apitestを作成し、新しいscalaObjectクラスを作成します。

package com.mafei.apitest

import org.apache.flink.api.scala.createTypeInformation
import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment

//获取传感器数据

case class SensorReading(id: String,timestamp: Long, temperature: Double)
object SourceTest {

  def main(args: Array[String]): Unit = {
    //创建执行环境
    val env = StreamExecutionEnvironment.getExecutionEnvironment

    //从文件中读取数据
    val stream2= env.readTextFile("/opt/java2020_study/maven/flink1/src/main/resources/sensor.txt")

    stream2.print()

    //执行
    env.execute(" source test")
  }

}

resourcesディレクトリに新しいsensor.txtを作成し、次の内容の書き込み
sensor1,1603766281,41
sensor2,1603766282,42
sensor3,1603766283,43
sensor4,1603766284,44を

コード構造図:
エントリーから本物のフレグランスへのフリンク(3、コレクションやファイルからデータを読み取る)

コード実行効果:
1> sensor1,1603766281,41
1> sensor2,1603766282,42
2> sensor3,1603766283,43
3> sensor4,1603766284,44

おすすめ

転載: blog.51cto.com/mapengfei/2547230