flink平台项目-cnblog

Posted deepJL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flink平台项目-cnblog相关的知识,希望对你有一定的参考价值。

flink平台项目

目录

title: flink平台项目
date: 2023-01-30T11:26:01Z
lastmod: 2023-02-02T19:27:41Z


架构

以前架构

问题:

  • 需要第三方组件进行持久化,需要增加维护的工作量
  • kafka计算的各分层数据存储在kafka集群中,增加持久化的链路
  • Debezium 定继单节点 出现单点故障
  • hbase存储的时候, kv键值对 , rowkey是主键,使用rowkey查询非常快,但是与非主键数据拉宽,效率较低

比如id 是rowkey,name不是rowkey ,关联name的时候不是rowkey,关联的时候就不快(可以使用二级索引(phenx)加快)

现在架构的说明

dinky 千表入湖

hudi = kafka + hive(操作的是hdfs)

海量数据不丢失

hudi分钟级 准实时. T+1延迟问题得到解决

读取schema不再需要严格定义schema类型

支持数据库表结构的变化

hudi新版本现在支持外部表 0.11.0 ,doris直接外部表读hudi数据,也就是只是hudi中存一份数据

CDH&集群规模

6.3 一台一万

阿里云主机(128G内存 20核cpu 40线程 8THDD 2TSSD) 每年5万

人员配备

开发周期

为什么用flinkcdc

支持全量+增量的功能

项目好处

链路短好维护

  • 时效性
  • 流批一体
  • 复杂的链路

千表入湖工具

阿里云用ververica

flink操作hive

和spark-thrift类似

flink集成hive的步骤

flink 借用了hive 的metastore

  1. 将jar包上传到flink lib 目录下
  2. 配置sql-conf , 主要hive catelog ,后续的操作都是基于hive 库和表
    1. catelog是什么: 指定读取哪里的元数据

flinksql 数据源为kafka

flink读写sql有两种模式

自带的模式

hive的模式

用处:


Temporal Join(时态表join)

单流驱动

一般指的是两个数据流

反应历史不同变化的维度数据

lookup join

指的是数据流和外部表 mysql redis 进行关联统计, 没有历史变化的信息

常见面试题

一站式Flink&Spark平台解决方案——StreamX

大家好,我是独孤风。今天为大家推荐的是一个完全开源的项目StreamX。该项目的发起者Ben也是我的好朋友。

****什么是StreamX,StreamX 是Flink & Spark极速开发脚手架,流批一体一站式大数据平台。 自2021年3月开源以来,贡献者已累计发展到10多位。

随着Flink&Spark生态的不断完善,越来越多的企业选择这两款组件,或者其中之一作为离线&实时的大数据开发工具,但是在使用他们进行大数据的开发中我们会遇到一些问题,比如:

  1. 任务运行监控怎么处理?
  2. 使用Cluster模式还是Nodeport暴露端口访问Web UI?
  3. 提交任务能否简化打包镜像的流程?
  4. 如何减少开发压力?

而StreamX就是专为解决这些问题而出现的,其提供了如下的一些功能:

  • 开发脚手架
  • Kubernetes部署模式支持
  • YARN-Application部署模式支持
  • 多版本Flink支持(1.12.x, 1.13.x, 1.14.x )
  • 一系列开箱即用的Connectors
  • 支持项目编译功能(CICD/maven编译)
  • 快捷的日常操作(任务启动、停止、savepoint)
  • 支持Notebook(在线任务开发)
  • 在线参数配置
  • 项目配置和依赖版本化管理
  • 在线管理依赖(maven pom)和自定义jar
  • 自定义 udf、连接器等支持
  • Flink SQL WebIDE

有的同学可能会使用Zeppelin比较多,两者是有一定区别的,侧重点不同。未来也会写文做一下两者的对比。

StreamX近期也发布了最新的版本StreamX 1.2.0

在最新的版本中支持了以下功能:

  • 与 Hadoop 解耦, 平台在启动时不在强制依赖 Hadoop 环境
  • 较完整的支持了 Kubernetes 部署模式(Native Application/Native Session)
  • Kubernetes 部署模式下, 任务的状态追踪监控
  • 支持自动 build/push 镜像
  • Flink 最新1.14.0 支持, 目前已经支持 Flink 1.12.x / 1.13.x / 1.14.0
  • 新增打包机模块,任务打包 fat-jar 更方便

在2021年11月18日,StreamX 也成功的入选了开源中国的2021年度最有价值开源项目。

未来的StreamX也进行着与doris,dolphinscheduler等整合的计划,也会继续增强StreamX在Flink流上的开发部署能力与运行监控能力,努力把StreamX打造成一个功能完善的流数据 DevOps。

StreamX是一个完全由国人发起的开源项目。也欢迎大家联系我们,加入到开源项目中来,为中国开源崛起献上一份自己的力量,未来共同向着成为Apache顶级项目而努力。

Streamx 官网:

http://streamxhub.com

Streamx Github:

https://github.com/streamxhub/streamx

Streamx Gitee:

https://gitee.com/streamxhub/streamx

on K8s 部署:

http://www.streamxhub.com/zh/doc/flink-k8s/1-deployment

大数据流动 专注于大数据实时计算,数据治理,数据可视化等技术分享与实践。 请在后台回复关键字下载相关资料。相关学习交流群已经成立,欢迎加入~

以上是关于flink平台项目-cnblog的主要内容,如果未能解决你的问题,请参考以下文章

Flink从入门到精通100篇(二十二)-微博基于Flink的机器学习实战项目

袋鼠云:基于Flink构建实时计算平台的总体架构和关键技术点

资源消耗降低2/3,Flink在唯品会实时平台的应用(有彩蛋)

一站式Flink&Spark平台解决方案——StreamX

日均百亿级日志处理:微博基于Flink的实时计算平台建设

flink模拟项目: 项目整体介绍