数字化转型必备:数睿通 2.0 数据中台升级详解

引言

转眼又过了一个月的时间,数睿通 2.0 数据中台也迎来了本月的更新,本次更新主要包括:

  • 数据资产完善(资源评价)
  • 数据集市完善,打通审批流程
  • 修复数据生产由于 Druid SQLUtils 不支持 Doris 导致无法建表的问题
  • 优化贴源数据模块,改为读取数据库的元数据,与同步的数据做关联匹配

此外,数据生产模块很多朋友对于 Hadoop 模式下的生产任务用不明白,所以本篇文章会讲解一下数据生产模块 Hadoop Yarn Per-Job 模式和 Yarn Application 模式的使用方式,希望可以对大家有所启发。对数睿通 2.0 数据中台感兴趣的朋友,如果想要获取源码,部署文档等资料,下拉至文末查看。

数据集市完善

该版本对数据资产和数据集市做了进一步完善优化,数据资产完善了资源评价模块,在数据资产模块可以查看评价,数据集市模块则可以评价资源。
资源评价
在数据集市可以申请数据资产上挂载的资源,管理员通过服务审批模块对用户提交的申请进行审批和授权,对于 API 资源,如果多次申请同一资源,调用次数会在原来的基础上进行累加处理。
我的申请
查看申请
服务审批
数据集市新增了我的应用子模块,用于获取调用 API 所需的 token,具体逻辑跟数据服务的权限模块基本一致。
我的应用
数据集市具体的流程流转会在使用视频中进行讲解,在这里就不过多赘述了。

问题处理优化

该版本修复了数据生产由于 Druid SQLUtils 不支持 Doris 导致无法建表的问题,现在数据生产已经可以正常进行 Doris 数据库的DDL 建表操作,后续建表会提供可视化建表,方便对数据模型进行更加直观的梳理。

贴源数据(ODS)模块的数据之前是执行数据接入任务产生的,比如同步了一张 A 表,贴源数据模块就会添加一张 A 表,但是如果人为向中台库中添加 ods 表,这里并不会显示,又或者删除了 A 表,这里也不会同步删除,这就导致实际数据跟库中不一致,所以本次更新改为直接查询中台库的表元数据信息,同时与同步的数据做关联匹配,跟库中实际的表保持一致。

Hadoop 模式讲解

下面我们着重讲解一下数据生产模块 Hadoop Yarn Per-Job 模式和 Yarn Application 模式的使用方式,Local(本地测试用),Standalone,Yarn Session 模式大家都可以轻松驾驭,这三种模式本质其实都是一样的,都是事先启动好一个 Flink 集群实例,然后提交任务,而 Yarn Per-Job 和 Yarn Application 模式则是在任务提交的时候去动态创建 Flink 实例,任务执行完毕后销毁 Flink 实例,不会一直占用服务器资源。

耗时短且密集的任务可以采用 Standalone 和 Yarn Session 模式,避免资源来回释放造成的性能损耗,反之则可以考虑使用 Yarn Per-Job 和 Yarn Application 模式。

Yarn Per-Job 模式在执行前需要获取作业所需的依赖项,通过执行环境分析并取得逻辑计划,将依赖项和 JobGraph 上传到集群中,只有在这些都完成之后,才会触发Flink运行,真正地开始执行作业。试想,如果所有用户同时提交作业,较大的依赖会消耗更多的带宽,而较复杂的作业逻辑翻译成 JobGraph 也需要吃掉更多的CPU和内存,客户端的资源反而会成为瓶颈,为了解决它,社区在传统部署模式的基础上实现了 Application 模式。

在 Yarn Application 模式下,客户端只需要发送部署请求,其他剩余的工作转移到了JobManager 里,执行我们封装好的 Jar 包中的 main 方法,如果一个 main() 方法中有多个 env.execute()/executeAsync() 调用,在Application模式下,这些作业会被视为属于同一个应用,在同一个集群中执行(如果在Per-Job模式下,就会启动多个集群)。

通过上述讲解,大家对执行模式应该有了更加深刻的理解,接下来我们具体讲解一下在数睿通2.0中应该如何正确提交运行 Yarn Per-Job 和 Yarn Application 模式的任务,注意:数据生产微服务必须在 linux 上执行才可以正常提交任务,具体原因是由于 hadoop 本身没有对 windows 平台做兼容,导致在 window 向 hadoop 提交任务的时候会报类找不到的异常。

启动 Hadoop 集群(hdfs,yarn,jobhistory)

Yarn Per-Job 和 Yarn Application 模式任务的运行需要依赖 Hadoop 集群,Hadoop(版本3.3.2) 集群的安装这里不再赘述,产品快速部署指南中有具体的安装教程,安装完毕,配置完环境变量后,通过以下命令启动 Hadoop 集群

# 启动 hdfs
start-dfs.sh
# 启动 yarn
start-yarn.sh
# 启动 jobhistory
mr-jobhistory-daemon.sh start historyserver

启动完毕后,访问 http://ip:9870 查看 hdfs 集群,访问 http://ip:8088/ 查看 yarn 集群,若均访问正常,则启动成功,否则查看日志排查。

上传 flink 运行所需 jar 包

在 hdfs 新建以下几个文件夹:/flink-jar/lib (存放相关依赖包),/flink-app (存放 application模式下的 app 包),/checkpoints,/savepoints。
新建文件夹
把 flink1.14.3 安装包下的 lib 文件夹下的 jar 包上传到 /flink-jar/lib 下,如果需要程序运行需要依赖其他 jar 包 可以自行添加。
jar包
如果是 yarn-application 运行模式,上传代码中的 srt-cloud-framework/srt-cloud-flink/build/app/flink-app.jar 到 hdfs 的 flink-app 目录下。
flink-app
系统添加 hadoop 集群实例

打开系统的数据开发/资源中心/Hadoop 集群配置模块,添加刚刚部署的 Hadoop 集群实例,ip 改为自己部署的实际 ip
在这里插入图片描述
配置 app 路径

如果是 yarn-application 运行模式,还需要配置 flink-app.jar 的路径,打开系统的数据开发/配置中心模块,修改 application 模式的 flink-app.jar 文件路径,改为自己实际配置的路径:
app路径
准备工作完毕后,就可以在数据生产模块选择 yarn-per-job 或 yarn-application 模式向 hadoop 集群提交任务了,在 yarn 管理界面可以查看提交的任务以及运行日志(点击 ID -> Logs)。
yarn 集群
执行任务的时候,如果是本地搭建的 hadoop,可能会有 yarn 资源不够用的情况,这个时候任务便会执行失败,报内存不足的错误,日志如下:
全量日志
内存不足
以上就是 Hadoop 模式的具体使用方式以及注意事项,没有玩明白的小伙伴可以根据以上步骤自行尝试。

git 私服托管代码

数睿通 2.0 的源码目前是加入知识星球获取的,之前的代码都是通过网盘的方式分享给大家,每次都需要重新下载并且不方便比对合并,此次更新搭建了一个 git 私服,星球内的成员可以通过加入私服来查阅代码文件。

结语

本次中台的新功能介绍就到此结束了,目前系统大体的模块该有都有了,剩下的就是不断完善打磨了,希望大家可以继续支持。

目前源码,部署指南,讲解视频等相关资料是付费获取的,价格相比其他同系列的产品连个零头都不到,可以说是非常良心了。我创建了一个知识星球,星球内可以获取到数睿通 2.0 的最新源码资料等,功能发布之后也会第一时间分享。

感兴趣的朋友请关注公众号 螺旋编程极客 加入星球,我们一起成长,一起进步。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: USB2.0是一种高速数据传输协议,它支持同步和异步通信,可在多种设备之间传输各种数据,如音频、视频和图像。此协议的最大传输速度达到480 Mbps,传输速度比其前身USB1.1快40倍。此外,USB2.0也支持热插拔,插入和拔出USB设备时无需重新启动电脑。 在USB2.0协议中,数据通过四个线路传输:数据线D+、数据线D-、电源线和地线。D+和D-通过差分传输向外发送和接收数据,从而抑制了电磁干扰和噪声。同时,USB2.0还支持四种传输方式:控制传输、批量传输、中断传输和等时传输,以满足不同应用中对数据传输质量和实时性的需求。 在操作系统中,系统会自动安装USB2.0驱动程序,以支持USB2.0设备。还可以通过设备管理器查看USB2.0设备的硬件信息和状态,例如设备名称、制造商、驱动程序版本等。此外,USB2.0也兼容USB1.1设备,即使连接老旧设备也不会影响通信速度。 总之,USB2.0协议通过高速传输、多种传输方式和热插拨等特性,使得USB设备在数据传输中更快、更稳定、更方便。 ### 回答2: USB2.0(Universal Serial Bus)是一种数字数据传输技术,是该技术的第二个版本,比之前的版本快速和更稳定。在USB2.0 中,数据传输速度最高可达480 Mbps,传输距离可达5米,并且同时支持高速和全速传输,兼容USB1.1协议。USB2.0协议采用了从主机到设备的点对点通讯模式,支持hot-swap热插拔,连接主题设备的最大数量是127个,所以可以多个设备同时连接到USB总线,连接电脑和主题设备的接口被称为A型和B型两种。 USB2.0协议主要分为设备级协议、主机级协议和传输层协议。设备级协议定义了USB2.0设备功能,包括设备描述符、端点描述符和接口描述符等。主机级协议定义了USB2.0主机架构,包括USB主机控制器、USB主机控制器驱动程序和USB1.1兼容性架构等。传输层协议定义了USB2.0传输模型,包括传输类型、数据包的格式和错误检测和纠正等。 在USB2.0协议中,还有一些重要的概念要了解,比如控制传输,批量传输和中断传输等,这三种传输类型是USB2.0协议的重要组成部分。控制传输用于在主机和设备之间传递命令和请求,包括设置设备地址、配置和控制端点、发送和接收数据等。批量传输用于传递大块数据,如音频和视频等。中断传输用于传递小块数据,如建立设备连接和断开连接等。以上三种传输类型都必须支持收发方向。 总的来说,USB2.0协议是现代计算机传输技术的重要组成部分,不仅方便了普通用户的数据传输和外设的连接,还在适配接口上继续发展,并不断强化其易用性和稳定性。 ### 回答3: USB2.0是一种传输协议,它是USB1.1的改进版,比USB1.1有更快的传输速度和更高的带宽。该协议可以将数据传输速度提高至480Mbps,支持多种数据传输方式(如ASYNCHRONOUS、BULK、CONTROL和INTERRUPT等),并支持热插拔。 USB2.0协议采用主从式的传输方式,即由主机控制所有设备的读写操作。主机通过VBus电压将数据传输到USB设备,并在传输结束后断开VBus电压。USB设备通过D+和D-线路接收和发送数据。USB2.0协议也支持电源管理,当某些设备未连接时,系统会将其置于低功耗状态,以节省电源。 USB2.0协议的物理接口有四个,分别是Type A、Type B、Mini-AB和Mini-B。Type A接口是常见的USB插头,被广泛应用在计算机、电视、音响等设备上。Type B接口主要应用在USB打印机、扫描仪和影像设备上;Mini-A和Mini-B接口适用于小型便携式设备上。 总之,USB2.0协议是一种快速、方便、可靠的传输协议,带来了许多方便和改进。随着USB技术的不断升级,USB3.0协议也已问世,其传输速度更加快速,将继续给用户带来更好的使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值