大数据技术框架的演进将我们带入了Flink的世界。Flink是一个分布式、高性能的流批处理框架,通过检查点、状态、定时、窗口等基础技术,已经成为处理实时和持久数据的强大工具。流处理处理无限的实时数据流,而批处理则针对需要持久性的有限数据集。
Flink架构巧妙地分为两部分:JobManager和TaskManager。JobManager负责调度资源,TaskManager执行实际工作。Flink提供了丰富的编程模型,可以适应不同场景的需求。在集群部署方面,本地模式比较简单,但很少使用,建议使用单机模式或通过YARN进行扩展。您需要确保安装了JDK1.8或更高版本,并且安装了Flink1.7.2或更高版本。。
Flink之旅的起点是Scala-shell,它附带了分别对应于批处理和流处理的benv和senv预设。单节点集群通过`bin/`命令启动,验证过程可以通过访问`flinkwebui`(https://node1:8081)来访问。实际演示:通过``统计单词数(输入jar路径,/output)。如果操作失败,请不要忘记删除临时文件夹(rm-rf/tmp/.yarn-properties)。-根)。要停止集群,请使用“bin/”。
配置步骤需要修改`conf/`,调整`conf/master`和`conf/slave`配置,并设置Hadoop配置。,并分发flink目录。HA集群中引入Zookeeper来提高容错能力,使用HDFS来存储和组织ZK集群。例如,启用HA模式、high-availability:zookeeper,并设置`eDir`和ZK集群地址。JobManager的元数据和主节点配置也必须调整,并且“”必须跨节点同步更新。
在企业生产环境中,我们推荐使用`flinkonyarn`来预留资源,利用YARN提高资源利用率。提交WordCount作业以在YARN集群上运行Flink作业的命令是“flinkrun/export/servers/flink/examples/batch/”,您可以通过“yarnapplication-killappid”轻松终止会话。
会话模式有利有弊。优点是集群环境是预先设置好的,不需要为每个作业创建新的环境,适合大规模作业。尽管有大量的小任务,但它的缺点是即使没有任务也会继续占用资源。学习这些选项,如“-d,--detached”将帮助您更好地管理资源。
提交YARN作业(例如“bin/flinkrun-myarn-cluster-yn2-yjm1024-ytm1024/export/servers/flink/examples/batch/”)时,参数include的意思很明确。`yjm`和`ytm`定义工作内存,`ys`指定TaskManager中的槽数,`yn`指定TaskManager的数量。
一般来说,入门Flink需要灵活运用编程模型、选择数据分布策略、微调任务调度和资源管理,具体实例如下:用Scala编写的WordCount示例。事实上,创建Flink项目、配置log4j、编写并运行WordCount代码以确保YARN集群上的高效运行是Flink入门的必备步骤。
上一篇:内存条上的参数怎么看
下一篇:电脑什么也没开内存占一半