开源网站有哪些,网站套站,免费网站制作新闻,卫浴网站建设文章目录 前言Flink 简介Flink 集群剖析Flink应用场景Flink基础运行环境搭建Docker安装docker-compose文件编写创建并运行容器访问Flink web界面 前言
前面我们分别介绍了大数据计算框架Hadoop与Spark,虽然他们有的有着良好的分布式文件系统和分布式计算引擎#xff0c;有的有… 文章目录 前言Flink 简介Flink 集群剖析Flink应用场景Flink基础运行环境搭建Docker安装docker-compose文件编写创建并运行容器访问Flink web界面 前言
前面我们分别介绍了大数据计算框架Hadoop与Spark,虽然他们有的有着良好的分布式文件系统和分布式计算引擎有的有着分布式数据集和基于内存的分布式计算引擎但是却不能对无边界数据流进行有效处理今天我们就分享一个第四代大数据分布式计算框架Flink简介与架构剖析并搭建基础运行环境
Flink 简介
Apache Flink 是一个框架和分布式处理引擎用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行并能以内存速度和任意规模进行计算。
有状态的 Flink 程序针对本地状态访问进行了优化。任务的状态始终保留在内存中如果状态大小超过可用内存则会保存在能高效访问的磁盘数据结构中。任务通过访问本地通常在内存中状态来进行所有的计算从而产生非常低的处理延迟。Flink 通过定期和异步地对本地状态进行持久化存储来保证故障场景下精确一次的状态一致性。
Flink 集群剖析
Flink 运行时由两种类型的进程组成一个 JobManager 和一个或者多个 TaskManager。
Client 不是运行时和程序执行的一部分而是用于准备数据流并将其发送给 JobManager。之后客户端可以断开连接分离模式或保持连接来接收进程报告附加模式。客户端可以作为触发执行 Java/Scala 程序的一部分运行也可以在命令行进程./bin/flink run …中运行。 可以通过多种方式启动 JobManager 和 TaskManager直接在机器上作为standalone 集群启动、在容器中启动、或者通过YARN或Mesos等资源框架管理并启动。TaskManager 连接到 JobManagers宣布自己可用并被分配工作。
Flink应用场景
1、驱动型应用 事件驱动型应用是一类具有状态的应用它从一个或多个事件流提取数据并根据到来的事件触发计算、状态更新或其他外部动作。 典型的事件驱动型应用实例 # 反欺诈 异常检测 基于规则的报警 业务流程监控 社交网络Web 应用 2、数据分析应用 数据分析任务需要从原始数据中提取有价值的信息和指标为了得到最新数据的分析结果必须先将它们加入分析数据集并重新执行查询或运行应用随后将结果写入存储系统或生成报告。 典型的数据分析应用实例 # 电信网络质量监控 移动应用中的产品更新及实验评估分析 消费者技术中的实时数据即席分析 大规模图分析 3、数据管道应用 提取-转换-加载ETL是一种在存储系统之间进行数据转换和迁移的常用方法。ETL 作业通常会周期性地触发将数据从事务型数据库拷贝到分析型数据库或数据仓库。 电子商务中的实时查询索引构建 电子商务中的持续 ETL
Flink基础运行环境搭建
Docker安装
安装docker和docker-compose并赋予权限
docker与docker-compose安装
#安装docker社区版
yum install docker-ce
#版本查看
docker version
#docker-compose插件安装
curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-uname -s-uname -m -o /usr/local/bin/docker-compose
#可执行权限
chmod x /usr/local/bin/docker-compose
#版本查看
docker-compose versiondocker-compose文件编写
vim docker-compose-flink.yaml
version: 3.3
services:jobmanager:image: registry.cn-hangzhou.aliyuncs.com/senfel/flink:1.9.2-scala_2.12expose:- 6123ports:- 8081:8081command: jobmanagerenvironment:- JOB_MANAGER_RPC_ADDRESSjobmanagertaskmanager:image: registry.cn-hangzhou.aliyuncs.com/senfel/flink:1.9.2-scala_2.12expose:- 6121- 6122depends_on:- jobmanagercommand: taskmanagerlinks:- jobmanager:jobmanagerenvironment:- JOB_MANAGER_RPC_ADDRESSjobmanager创建并运行容器
docker-compose -f docker-compose-flink.yaml up -d访问Flink web界面
ip:8081