flink-1.17.2的单节点部署

Apache Flink 是一个开源的流处理和批处理框架,用于大数据处理和分析。它旨在以实时和批处理模式高效处理大量数据。Flink 支持事件时间处理、精确一次语义、有状态计算等关键功能。

以下是与Apache Flink相关的一些主要特性和概念:

  1. 流处理和批处理:

    • 流处理: Flink 支持流处理,允许您实时处理数据。
    • 批处理: Flink 也支持批处理,以分布式和容错的方式处理大量数据。
  2. 事件时间处理:

    • Flink 允许根据实际发生时间而不是到达时间来处理事件,对于准确和有意义的事件数据分析至关重要。
  3. 精确一次语义:

    • Flink 支持精确一次处理语义,确保每个事件仅被处理一次,即使发生故障也不会丢失数据完整性。
  4. 有状态计算:

    • Flink 支持有状态应用程序的开发,允许您跨事件和时间保留和更新状态。这对于需要在一段时间内记住和聚合信息的场景非常重要。
  5. 容错性:

    • Flink 设计为容错的,提供从故障中恢复而不丢失数据完整性的机制。
  6. 丰富的 API 集:

    • Flink 提供了 Java、Scala 和 Python 的 API,使其适用于各种开发人员。API 包括用于批处理的 DataSet API 和用于流处理的 DataStream API。
  7. 库和连接器:

    • Flink 配备了多个库和连接器,用于常见用例,如 FlinkML 用于机器学习、Flink Gelly 用于图处理,以及与 Apache Kafka、Apache Hadoop 等的连接器。
  8. 社区和生态系统:

    • Flink 拥有充满活力的开源社区,是 Apache Software Foundation 的一部分。它具有由社区开发的扩展和工具的不断增长的生态系统。
  9. 动态扩展:

    • Flink 支持动态扩展,允许您在运行时调整操作符的并行实例数以适应变化的工作负载。
  10. 兼容性:

    • Flink 可在各种集群管理器上运行,包括 Apache Mesos、Apache Hadoop YARN 和 Kubernetes。它还与其他大数据技术集成。

总体而言,Apache Flink 是构建实时和批处理数据处理应用程序的强大而灵活的框架,适用于大数据领域的各种用例。

1.Local本地模式

1.1 原理

主节点JobManager(Master)和从节点TaskManager(Slave)在一台机器上模拟

  1. Flink程序由JobClient进行提交

  2. JobClient将任务提交给JobManager

  3. JobManager只负责协调分配资源和分发任务,资源分配完成后将任务提交给相应的TaskManager

  4. TaskManager启动一个线程开始执行任务,TaskManager会向JobManager报告状态的变更, 例如:开始执行、正在执行、执行完成

  5. 作业执行完成后,结果将发送回客户端(JobClient)

1.2 安装

复制代码
yum install java-1.8.0-openjdk.x86_64
yum install -y  java-1.8.0-openjdk-devel

wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.17.2/flink-1.17.2-bin-scala_2.12.tgz

mkdir -p /opt/flink
tar -zxvf flink-1.17.2-bin-scala_2.12.tgz -C /opt/flink 

1.3 测试

复制代码
/opt/flink/flink-1.17.2/bin/stop-cluster.sh
/opt/flink/flink-1.17.2/bin/start-cluster.sh 

访问http://10.6.8.227:8081/
复制代码
# 可以只执行上面这个,也可以加上下面的参数
/opt/flink/flink-1.17.2/bin/flink run /opt/flink/flink-1.17.2/examples/batch/WordCount.jar  --input /root/words.txt  --output /root/out

停止Flink:
/opt/flink/flink-1.17.2/bin/stop-cluster.sh
相关推荐
代码匠心18 小时前
从零开始学Flink:Flink SQL四大Join解析
大数据·flink·flink sql·大数据处理
武子康2 天前
大数据-242 离线数仓 - DataX 实战:MySQL 全量/增量导入 HDFS + Hive 分区(离线数仓 ODS
大数据·后端·apache hive
SelectDB3 天前
易车 × Apache Doris:构建湖仓一体新架构,加速 AI 业务融合实践
大数据·agent·mcp
武子康3 天前
大数据-241 离线数仓 - 实战:电商核心交易数据模型与 MySQL 源表设计(订单/商品/品类/店铺/支付)
大数据·后端·mysql
IvanCodes3 天前
一、消息队列理论基础与Kafka架构价值解析
大数据·后端·kafka
武子康4 天前
大数据-240 离线数仓 - 广告业务 Hive ADS 实战:DataX 将 HDFS 分区表导出到 MySQL
大数据·后端·apache hive
字节跳动数据平台5 天前
5000 字技术向拆解 | 火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
武子康5 天前
大数据-239 离线数仓 - 广告业务实战:Flume 导入日志到 HDFS,并完成 Hive ODS/DWD 分层加载
大数据·后端·apache hive
字节跳动数据平台6 天前
代码量减少 70%、GPU 利用率达 95%:火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
得物技术6 天前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark