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
相关推荐
白熊--π几秒前
读懂 Meta API 限流:从范围判断到工程优化
大数据·数据库·meta·facebook
greatofdream14 分钟前
git rebase时如何解决merge节点冲突问题
大数据·git·elasticsearch
深圳市恒星物联科技有限公司22 分钟前
如何用有限预算实现排水管网核心风险点全覆盖?
大数据·网络·智慧城市
小蒋观天下32 分钟前
安防设备自巡检 AI 落地——镜头遮挡、涂抹、移位、失焦自动检测系统
大数据·人工智能·深度学习·5g·机器学习
2603_9547083138 分钟前
如何进一步优化微能网协调控制箱的架构优势
大数据·数据库·人工智能·分布式·架构
CallFay云起未来1 小时前
2026年AI客服能不能减少人工回复?从知识检索到人机协同的技术实现
java·大数据·前端·人工智能·架构·文心一言
杨婷1231 小时前
2026 企业微信 SCRM 与服务商测评:私域获客、会话存档、AI 能力全维度评估
大数据·人工智能·企业微信
大大大大晴天️1 小时前
每天认识一个组件:Apache Paimon
大数据·开源组件
wespaul4 小时前
VeapAI 自然语言操作实战|第 05 篇:向量与召回——从知识条目到可检索资产
大数据·数据库·人工智能·milvus
李福春4 小时前
技术思考问题17:上了LangChain框架就等于AI-Agent工程化吗?
大数据·人工智能·langchain·深圳同盟·腾讯云架构师技术同盟·llm应用架构·编排抽象