尚硅谷大数据技术NiFi教程-笔记02【NiFi(使用案例,同步文件、离线同步mysql数据到hdfs、实时监控kafka数据到hdfs)】

news2024/10/6 5:58:12

尚硅谷大数据技术-教程学习路线-笔记汇总表【课程资料下载】

  • 视频地址:尚硅谷大数据NiFi教程(从部署到开发)_哔哩哔哩_bilibili
  1. 尚硅谷大数据技术NiFi教程-笔记01【NiFi(基本概念、安装、使用)】
  2. 尚硅谷大数据技术NiFi教程-笔记02【NiFi(使用案例,同步文件、离线同步mysql数据到hdfs、实时监控kafka数据到hdfs)】

目录

尚硅谷大数据NiFi教程(从部署到开发)

第3章-NiFi的使用

P10【10_案例一_添加处理器】14:08

P11【11_案例一_实现同步文件到hdfs】15:08

P12【12_案例二_添加mysql连接池服务】07:07

P13【13_案例二_离线读取mysql数据设置读取时间】08:06

P14【14_案例二优化_修改数据格式为json】04:30

P15【15_案例二优化_写入动态目录】10:18

P16【16_案例二优化_修改文件名控制文件的滚动】06:23

P17【17_案例三_生产消费kafka数据】10:36

P18【18_nifi总结】04:19


尚硅谷大数据NiFi教程(从部署到开发)

第3章-NiFi的使用

  1. 同步文件,需求:同步本地磁盘文档上传到hdfs,通过NIFI自动监控磁盘文件上传到hdfs对应的文件夹。
  2. 离线同步mysql数据到hdfs需求:导出Mysql数据转换为Json串并保存到hdfs。
  3. 实时监控kafka数据到hdfs需求:实时监控kafka主题,将数据同步发送到hdfs。

P10【10_案例一_添加处理器】14:08

同步文件,需求:同步本地磁盘文档上传到hdfs,通过NIFI自动监控磁盘文件上传到hdfs对应的文件夹。

  1. zk.sh start
  2. /opt/module/nifi/nifi-1.19.1/bin/nifi.sh start
  3. /opt/module/nifi/nifi-1.19.1/bin/nifi.sh status

This node is currently not connected to the cluster. Any modifications to the data flow made here will not replicate across the cluster.

解决方法:重启node1节点。

  1. /opt/module/data   
  2. [^\.].*   默认正则表达式,可以匹配所有文件。

/opt/module/nifi/data/dataInput

/opt/module/hadoop/hadoop-3.1.3/etc/hadoop/core-site.xml,/opt/module/hadoop/hadoop-3.1.3/etc/hadoop/hdfs-site.xml​​​​​

P11【11_案例一_实现同步文件到hdfs】15:08

[atguigu@node001 ~]$ cd /opt/module/applog/
[atguigu@node001 applog]$ java -jar gmall2020-mock-log-2021-10-10.jar
[atguigu@node001 applog]$ nohup java -jar gmall2020-mock-log-2021-10-10.jar &

[atguigu@node001 log]$ echo "你好!" >> 1.txt
[atguigu@node001 log]$ ll
总用量 764
-rw-rw-r-- 1 atguigu atguigu     10 5月  15 14:52 1.txt
-rw-rw-r-- 1 atguigu atguigu 776559 5月  15 14:52 app.2023-05-15.log
[atguigu@node001 log]$ 

想要时效性高,就将调度时间调低一些。

P12【12_案例二_添加mysql连接池服务】07:07

离线同步mysql数据到hdfs需求:导出Mysql数据转换为Json串并保存到hdfs。

node001_mysql
jdbc:mysql://node001:3306/gmall
com.mysql.jdbc.Driver

/opt/jar
mysql-connector-java-5.1.27-bin.jar
/opt/jar/mysql-connector-java-5.1.27-bin.jar

P13【13_案例二_离线读取mysql数据设置读取时间】08:06

use gmall;
select * from activity_info
root
123456

更改ExecuteSQL的调度时间为86400秒,离线数仓的同步时间一般为一天同步一次,dataX全量同步。

P14【14_案例二优化_修改数据格式为json】04:30

P15【15_案例二优化_写入动态目录】10:18

需求:添加动态参数控制数据写入到hdfs的路径。

默认情况下所有的上传文件都会发送到同一个文件夹,导致文件混乱。

通过引入NiFi Expression Language函数可以动态修改最终导出的路径。具体内容可以参考官方网站Apache NiFi Expression Language Guide。

${now():format('yyyy-MM-dd')}
${now():format('yyyy-MM-dd HH:mm:ss')}
Apache NiFi Expression Language Guide

P16【16_案例二优化_修改文件名控制文件的滚动】06:23

${now():toNumber()}.data
${now():format('yyyy-MM-dd HH')}.data

多目录用来控制文件夹的滚动,文件名用来控制文件的滚动。

P17【17_案例三_生产消费kafka数据】10:36

实时监控kafka数据到hdfs需求:实时监控kafka主题,将数据同步发送到hdfs。

node001:9092,node002:9092,node003:9092
nifi
/nifi_kafka/${dt}
${now():format('yyyy-MM-dd HH')}.kafka

kafka-console-producer.sh --broker-list node001:9092 --topic nifi
kafka-console-consumer.sh --bootstrap-server node001:9092 --topic nifiOutput

P18【18_nifi总结】04:19

实时监控mysql中变化的数据,Maxwell、flink-cdc。CDC是“Change Data Capture”的缩写。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/530147.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索古文明,玛雅文明衰落的原因

说起玛雅文明,大家在各种小说或者电影中或多或少的都有听说过,那么这个文明到底是怎么一回事呢?今天老铁就带大家好好的了解下。 玛雅文明存在的时间大致是在公元前2000年至公元1500年之间,这个文明见证了中美洲地区的一段辉煌的…

Cefsharp109.1.110(winfrom)最新支持H264-MP3-MP4功能体验,导出pdf和下载方法有变调整

最新版的支持H264版本(109.1.11,109.1.18)5154分支,也是win7/8/8.1最后一个支持版本 此贴仅分项版本变化和注意事项,本篇文章不提供dll编译文件,有需要单独联系,仅供学习参考 109版本体验测试(音频和视频功能),版本较100.0.230变化提醒及注意变更的内容。 上视频支…

C++每日一练:难题-大数加法

文章目录 前言一、题目二、代码及思路总结 前言 这题好像是指定了C,那就用C来做嘛,确实在C/C中一不小心就超出范围了,说实在的,C这个语言有时候真的很让人无语。很显然这是要用字符串来计算了。这题坑比较多,笔者这也…

数据库使用自增ID好还是UUID好?为什么?

数据库使用自增ID好还是UUID好?为什么? 答: 自增ID 优点: 数字类型,占用空间小数据库自动增量排序,对检索有利,读写速度快(聚簇索引的优势)系统编码过程中&#xff0…

知识推理学习笔记

OWL本体语言 基于RDF语法,最规范,最严谨,表达能力最强 一 语法 三元组 二 逻辑基础 描述逻辑:基于对象的知识表示的形式化,是一阶谓词逻辑的一个可判定子集 三 描述逻辑系统 一个描述逻辑包含4个基本组成部分 …

【Python数据存储】零基础也能轻松掌握的学习路线与参考资料

Python是一种高级编程语言,被广泛应用于数据科学中。数据存储是数据科学中至关重要的一环,因为人们需要将收集到的数据保存在一些地方。Python中的数据存储有很多种,因此在学习过程中需要明确自己的需求,掌握不同数据存储方式的优…

深入理解 python 虚拟机:多继承与 mro

深入理解 python 虚拟机:多继承与 mro 在本篇文章当中将主要给大家介绍 python 当中的多继承和 mro,通过介绍在多继承当中存在的问题就能够理解在 cpython 当中引入 c3 算法的原因了,从而能够帮助大家更好的了理解 mro 。 python 继承的问题…

【Linux】shell编程之—函数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、概述二、函数的查看和删除1.查看 declare2.删除 declare 三、函数的返回值1.return 返回值2.echo 返回值 四、函数的参数传入与变量范围五、函数的应用1.阶乘2.…

十五、Gateway网关

目录 Zuul网关和gateway网关的区别: Gateway路由配置 1、新建服务网关项目,并在项目pom文件中引入gateway网关依赖 2、在application.yml配置gateway 3、如果不用配置的方式配置gateway路由,还可以通过代码的形式配置 4、启动网关服务&…

达梦:创建用户并授予用户只读权限

需求描述: 1.想创建一个用户,这用户能访问其他3个用户的资源,权限是只读,这种创用户的sql怎么写? 2.怎么修改用户密码呢? 环境: 通用机 一、创建用户并授权 1.创建业务用户步骤 step1:创建用户使…

短期光伏发电量短期预测(Python代码,基于LSTM模型)

一.代码流程(运行视频:短期光伏发电量短期预测(Python代码,基于LSTM模型)_哔哩哔哩_bilibili) 数据预处理: 读取CSV文件,并使用Pandas库将数据加载到DataFrame中。将时间列转换为日期…

PoseiSwap缘何成DEX赛道新宠?POSE价值分析

区块链技术以去中心化、伪匿名以及公开透明作为主要特点,虽然这种意识形态是具备先进性的,但以此为基础所带来的加密原生特性,也正在阻碍着链上世界的发展。作为一种透明、非许可的分布式网络,隐私与合规始终是现阶段,…

【AWK命令】

目录 一、awk的工作原理:二、命令演示1、按行输出文本2、按字段输出文本1、使用三元运算符 三、通过管道,双引号调用shell命令1、查看时间的命令2、getline 获取内容3、OFS输出分割符4、awk来排序数组 一、awk的工作原理: 1、逐行读取文本&a…

华为OD机试真题 Java 实现【日志采集系统】【2023Q1 100分】

一、题目描述 日志采集是运维系统的的核心组件。日志是按行生成,每行记做一条,由采集系统分批上报。 如果上报太频繁,会对服务端造成压力;如果上报太晚,会降低用户的体验;如果一次上报的条数太多&#xf…

MSQL系列(一) Mysql实战-索引结构 二叉树/平衡二叉树/红黑树/BTree/B+Tree

Mysql实战-索引结构 二叉树/平衡二叉树/红黑树/BTree/BTree 我们在项目中都会使用索引,所以我们要了解索引的存储结构,今天我们就着重讲解下Mysql的索引结构存储模型,并且看下 二叉树,平衡二叉树,红黑树,B…

沉浸式翻译 – 沉浸式的阅读与学习双语的翻译工具

为何称为沉浸式呢 智能识别网页主内容区进行翻译,与同类插件翻译整个网页不同,降低对原网页的“侵入性”,提升阅读体验,因此得名“沉浸式翻译”。 受宠的缘由 自从谷歌翻译不再对大陆用户提供服务后。内心是一阵酸痛的&#xf…

ML之LoR:基于泰坦尼克号数据集分别利用Platt校准和等距回归校准算法实现概率校准进而提高二元分类模型的预测准确性(模型提效)应用案例

ML之LoR:基于泰坦尼克号数据集分别利用Platt校准和等距回归校准算法实现概率校准进而提高二元分类模型的预测准确性(模型提效)应用案例 目录 基于泰坦尼克号数据集分别利用Platt校准和等距回归校准算法实现概率校准进而提高二元分类模型的预测准确性(模型提效)应用…

网络安全35岁是新时代挑战?

前言 对于一个工作不下于4年的人来说,我觉得我有一定的思考沉淀来回答这个问题。 说说我的一些经历吧。 普通一本毕业,专业是自动化,大学由于挂科太多没拿到学位证到上海找实习,一开始做的是开发,从16年到19年都是做…

如何在线安装Axure插件?

当我们需要进行原型设计时,Axure 成为了专门为此而生的专业级设计产品,也是产品经理必备的工具之一。通过使用 Axure,设计人员可以更好地了解实际项目的实施方式,并与产品经理进行更有效的合作,以评估范围和技术可行性…

HTTP1.1(五)URI编码

一 URI编码 ① ASCII wiki 说明: man ascii 观察 ② 为什么要进行URI编码 RFC3986规定:uri中只允许包含a-zA-Z、0-9、-_.~4个特殊字符以及所有保留字符 URI特殊字符 ③ 保留字符与非保留字符 ④ URI百分号%编码方式 说明: 一般是非…