Heim >Java >javaLernprogramm >So entwickeln Sie mit Java eine Stream- und Batch-Verarbeitungsanwendung basierend auf Apache Flink
So verwenden Sie Java, um eine Stream-Verarbeitungs- und Stapelverarbeitungsanwendung basierend auf Apache Flink zu entwickeln
Einführung:
Apache Flink ist ein leistungsstarkes Open-Source-Stream-Verarbeitungs- und Stapelverarbeitungs-Framework mit hohem Durchsatz, hoher Zuverlässigkeit und geringen Verzögerungskosten Eigenschaften. In diesem Artikel wird die Verwendung von Java zum Entwickeln einer Stream-Verarbeitungs- und Stapelverarbeitungsanwendung basierend auf Apache Flink vorgestellt und detaillierte Codebeispiele gegeben.
1. Umgebungsvorbereitung
2. Projekterstellung
3. Abhängigkeiten einführen
Fügen Sie die folgenden Abhängigkeiten in der build.gradle-Datei des Projekts hinzu:
dependencies { compileOnly project(":flink-dist") compile group: 'org.apache.flink', name: 'flink-core', version: '1.12.2' compile group: 'org.apache.flink', name: 'flink-streaming-java', version: '1.12.2' compile group: 'org.apache.flink', name: 'flink-clients', version: '1.12.2' }
4. Implementieren Sie die Flink-Stream-Verarbeitungsanwendung. Erstellen Sie ein neues Paket im Verzeichnis src/main/java und nennen Sie es „com.flinkdemo.stream“.
package com.flinkdemo.stream; import org.apache.flink.streaming.api.datastream.DataStream; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment; public class StreamProcessingJob { public static void main(String[] args) throws Exception { // 创建一个执行环境 final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); // 从socket接收数据流 DataStream<String> text = env.socketTextStream("localhost", 9999); // 打印接收到的数据 text.print(); // 启动执行环境 env.execute("Stream Processing Job"); } }
Klicken Sie in der IDE mit der rechten Maustaste auf die StreamProcessingJob-Klasse und wählen Sie „Ausführen als“ -> „Java-Anwendung“, um die Anwendung zu starten.
Erstellen Sie ein neues Paket im Verzeichnis src/main/java und nennen Sie es „com.flinkdemo.batch“.
package com.flinkdemo.batch; import org.apache.flink.api.java.ExecutionEnvironment; import org.apache.flink.api.java.DataSet; import org.apache.flink.api.java.tuple.Tuple2; public class BatchProcessingJob { public static void main(String[] args) throws Exception { // 创建一个执行环境 final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment(); // 从集合创建DataSet DataSet<Tuple2<String, Integer>> dataSet = env.fromElements( new Tuple2<>("A", 1), new Tuple2<>("A", 2), new Tuple2<>("B", 3), new Tuple2<>("B", 4), new Tuple2<>("C", 5) ); // 根据key进行分组,并计算每组的元素个数 DataSet<Tuple2<String, Integer>> result = dataSet .groupBy(0) .sum(1); // 打印结果 result.print(); // 执行任务 env.execute("Batch Processing Job"); } }
Klicken Sie in der IDE mit der rechten Maustaste auf die Klasse BatchProcessingJob und wählen Sie „Ausführen als“ -> „Java-Anwendung“, um die Anwendung zu starten.
Das obige ist der detaillierte Inhalt vonSo entwickeln Sie mit Java eine Stream- und Batch-Verarbeitungsanwendung basierend auf Apache Flink. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!