- 博客(39)
- 收藏
- 关注
原创 14-Kafka-Day03
可以理解为分配的结果带有“粘性的”。即在执行一次新的分配之前, 考虑上一次分配的结果,尽量少的调整分配的变动,可以节省大量的开销。粘性分区是 Kafka 从 0.11.x 版本开始引入这种分配策略,首先会尽量均衡的放置分区 到消费者上面,在出现同一消费者组内消费者出现问题的时候,会尽量保持原有分配的分区不变化。
2024-06-20 17:33:45
1124
1
原创 PostGreSQL遇到的坑
前者是添加了字段a,后者是添加的是区分大小写的字段a,若后面是添加的“A”那么查询的时候也必须是select "A"....,区分大小写的形式查询, 否则是无法查询的,前者是不区分大小写的,无论是select a 或者 select A 或者 select "a"都可以查询,而后者只能 select "a"查询。总结:postgresql中“”双引号代表区分大小写的意思,谨慎使用。
2024-06-20 17:05:58
320
原创 14-Kafka-Day02
Kafka 集群中有一个 broker 的 Controller 会被选举为 Controller Leader,负责管理集群broker 的上下线,所有 topic 的分区副本分配和 Leader 选举等工作。(2)查看 hadoop11(或者 hadoop12、hadoop13)的/opt/installs/kafka3/datas/first-1 (first-0、first-2)路径上的文件。(3)创建副本存储计划(所有副本存储在 broker0、broker1、broker2 中)。
2023-12-08 14:44:18
415
原创 14-kafka-Day01
kafka 面试非常的重要,做实时或者准实时项目必用工具(绕不开)。Kafka就是用来存储消息的,消息中间件。Kafka是分布式的发布—订阅消息系统。它最初由LinkedIn(领英)公司发布,使用Scala语言编写,于2010年12月份开源,成为Apache的顶级项目。Kafka是一个高吞吐量的、持久性的、分布式发布订阅消息系统。它主要用于处理活跃live的数据(登录、浏览、点击、分享、喜欢等用户行为产生的数据)。kafka 在大数据技术中,属于实时计算架构中的一员悍将!Scala语言的底层是Java。
2023-12-08 14:29:01
312
原创 spark链接hive时踩的坑
而我们的hive数据是存放在hdfs上的,我们的spark进行查询数据时是使用hive的metastore连接的hive的数据库,也就是spark会从hdfs上读取数据,所以无论怎么查询都是查不出来数据的。同时hive中也可以看到这个数据库,建表插入数据也没有问题,但是当我们去查询数据库中的数据时,发现查不到数据,去查hive的元数据,发现,spark在创建数据库的时候将数据库创建在了本地文件系统中。这个数据库,如果没有,可能是spark创建在了其他的服务器节点上。还有另一种方法(慎用)
2023-12-08 13:54:28
788
原创 13-数据采集项目Day04
把timestamp+"\n"+密钥当做签名字符串,使用HmacSHA256算法计算签名,然后进行Base64 encode,最后再把签名参数再进行urlEncode,得到最终的签名(需要使用UTF-8字符集)。可以创建一个钉钉群,所有的大数据开发人员都在群里面,找一个群里的机器人,只要任务失败了,机器人就发送消息到群里,最好这个消息还能点击,跳转到Azkaban的界面。假如遇到了一个jar包,这个jar是一个非常小众的jar包,远程仓库没有,但是这个jar包已经在你手里面了。
2023-12-07 09:51:02
176
原创 impala入门
mpala是用于处理存储在Hadoop集群中的大量数据的MPP(大规模并行处理)SQL查询引擎。它是一个用C +和Java编写的开源软件。与其他Hadoop的SQL引擎相比,它提供了高性能和低延迟。换句话说,Impala是性能最高的SQL引擎(提供类似RDBMS的体验),它提供了访问存储在Hadoop分布式文件系统中的数据的最快方法。
2023-09-27 18:16:53
200
原创 13-数据采集项目03
因为我们上传到hdfs上的数据是json格式的。当你的分区下有tmp文件的时候,就会查询到null,这个是一个正常的现象。如果指定了时间,就抽取这个时间的前一天,如果没有指定时间,当前时间的前一天。映射到有数据的分区文件夹下,比如,我有20221008有数据。假如你flume抽取数据的时候,抽取不成功,什么错误都不报。使用一个脚本,创建news表,并且添加分区。4、编写一个脚本可以抽取数据到hdfs上。如果之前采集过,直接删除hdfs上的数据。5、将hdfs上的数据映射到hive表中。
2023-09-14 18:01:38
1530
原创 13-数据采集项目02
问题答疑:采集到hdfs上的数据,长这个样子因为我们需要将这个数据进行分析的,需要映射到hive表中,密文显然不行。需要明文# 原始日志格式# 解析# 解析结果content: {name: "毕湛英",gender: "女",age: "85",},# 通过flume拦截器解析结果 目标"element_page": "新闻列表页","carrier": "中国电信",需要使用拦截器(Flume的)将切割好的文件,上传至hdfs,并且解密。
2023-09-13 19:49:08
274
原创 13-数据采集项目1
做好的一个网站,只能在内网访问,不能外网访问,原因是没有公网IP,公网IP是需要购买的。我们穷,但是我们有技术--穷屌丝内网穿透工具-- natapp、花生壳等软件 花生壳是当前最正规的内网穿透工具natapp网站地址:https://natapp.cn/需要有一个网站,可以拿tomcat的官方页面当这个网站。找到tomcat,解压,点击bin/startup.bat 启动。访问网站IP : http://localhost:8080内网穿透工具的使用(可以帮助理解端口映射)
2023-09-13 09:06:22
255
原创 12-海豚调度器DolphinScheduler
自定义日期格式$[yyyyMMdd]也可以写成$[yyyy-MM-dd]$[HHmmss] 也可以添加: $[HH:mm:ss]
2023-09-11 17:13:03
5106
1
原创 11-azkaban
遇到了什么问题才会使用Azkaban?比如: 想启动hadoop集群先启动 zk集群,再启动 hdfs ,再启动 yarn,再启动日志系统工作过程中总会遇到 多个脚本执行的时候有顺序。任务可以有一个编排的工具。1. 一个完整的大数据分析系统通常都是由大量任务单元组成:shell脚本程序,mapreduce程序、hive脚本、spark程序等。hadoop jar topN.jar 参数hive -e "sql语句"spark任务 flink任务等。
2023-09-08 16:35:34
261
原创 09-Sqoop
2、为什么是4个文件呢,原因是sqoop 底层默认开启了4个map任务,所以有四个输出,可以自己修改map任务的数量。1、一定要记得的是 Sqoop的执行脚本,底层使用的MR中的map,所以输出文件的名字都是part-m 开头。现在创建一个表,字段跟数据的文件字段数量和类型都一样,最重要的是数据类型和存储位置一定要要分析的文件一样。假如从hdfs导出到mysql的时候,出现了列的顺序不一致问题,可以通过追加--columns 来解决。在数据库中新增两条数据,再次执行这个任务,就能看到增量导入的效果。
2023-09-05 16:13:03
258
原创 08-Flume
flume 其实就是水管 数据起始就是水,将水引入到不同的容器中Sqoop -- 一般用于采集数据库中的数据Flume -- 一般采集我们的日志数据 user.logFlume 其实可以看做一个水管。一头接着水源,一头接着桶,从水源地抽取数据到桶里去。Agent : 是Flume中的基本单位,一个Flume配置文件,可以有多个Agent.每一个Agent中有三个组件组成,缺一不可:1、Source 来源,数据过来的地方。
2023-09-04 17:33:22
186
原创 07-hive---基础部分4
--指定表内的字段进行分桶。sorted by (id asc|desc) ---指定数据的排序规则,表示咱们预期的数据是以这种规则进行的排序举例:sorted by 指定分桶表中的每一个桶的排序规则--指定getPartition以哪个字段来进行hash,并且排序字段也是指定的字段,排序是以asc排列--相当于distribute by (id) sort by (id)想当于:distribute by (id) -- 指定getPartition以哪个字段来进行hash。
2023-09-01 15:47:08
91
原创 07-hive---基础部分3
内部表:表面来看,我们建的所有的表,默认都是内部表,内部表又叫做管理表,它的位置也很固定/user/hive/warehouse下面。外部表:创建的时候需要加关键字external 修饰,而且,外部表它的数据的存储位置可以不在/user/hive/warehouse,可以指定位置。id int,这个location 是本地的意思还是hdfs的路径呢?答案是必须在hdfs上。
2023-09-01 15:33:11
211
原创 07-hive---基础部分2
再思考一个问题:既然hive中的数据是在hdfs上的,我们也可以手动的上传数据,能上传至/home,为何不能上传至:/user/hive/warehouse/yhdb.db/t_user。修改集群的三个core-site.xml,记得修改一个,同步一下,并且重启hdfs。查看hdfs上的user.txt 发现不见了,去哪里了,被移动走了!metastore服务意义:为别人连接mysql元数据提供服务的。hive中的数据,不要load 也可以被正常使用。查看数据,发现有两份,想覆盖怎么办?
2023-09-01 15:07:42
518
1
原创 07-hive---基础部分1
Hive 是一个框架,可以通过编写sql的方式,自动的编译为MR任务的一个工具。在这个世界上,会写SQL的人远远大于会写java代码的人,所以假如可以将MR通过sql实现,这个将是一个巨大的时长,FaceBook就这么干。(脸书)FaceBook --> Meta (元宇宙) --> 社交网站(校内网)在大数据中,发展趋势:所有的技术全部都变为SQL1、Hive是一个数据仓库工具2、可以将数据加载到表中,编写sql进行分析。
2023-09-01 14:47:14
72
1
原创 06-zookeeper---2
第一步:检查mapred-site.xml ,里面只有yarn配置和historyServer的配置,不需要修改。HA: High Availability,高可用集群,指的是集群7*24小时不间断服务。第九步:同步 core-site.xml 和 hdfs-site.xml 到剩余两台上去。第三步:将mapred-site.xml 和 yarn-site.xml进行同步。第四步:检查是否安装了hadoop集群,如果以前安装过了,清空数据。以前配置的yarn以及日志服务的配置不动,添加ha的相关配置。
2023-09-01 14:38:04
61
1
原创 06-zookeeper---1
1、理论Apache YARN(Yet another Resource Negotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于一个分布式的操作系统平台,而MapReduce等计算程序则相当于运行于操作系统之上的应用程序。YARN被引入Hadoop2,最初是为了改善MapReduce的实现,但是因为具有足够的通用性,同样可以支持其他的分布式计算模式,比如Spark,Tez等计算框架。大数据技术大致分为四代:1、MapReduce (淘汰)
2023-09-01 14:24:46
185
1
原创 05-hadoop03之MapReduce
1)实现Writable 接口 2) 实现WritableComparable接口如果自定义的数据类型,是当做Key值,因为Key值必须能排序才行,所以需要实现WritableComparable接口,当做Value值,直接实现Writable接口即可。手机号码Key PhoneFlowWritable 是Value在MR程序中,只有能排序的数据类型才能当做Key。因为Key需要排序。Map端很多地方输出的结果都是有序的,什么有序?--》 key值有序。/**
2023-09-01 12:38:56
100
1
原创 05-hadoop03之MapReduce
需求:假定拿到了一些关于手机流量的日志文件,统计每个手机号码的上行流量,下行流量,以及总流量。1363157995033 15920133257 5C-0E-8B-C7-BA-20:CMCC 120.197.40.4 sug.so.360.cn 信息安全 20 20 3156 2936 200第二列是手机号码 15920133257倒数第三列是上行流量 3156倒数第二列是下行流量 2936map任务:......reduce 任务:15989002119 对相同的手机号码进行合并。
2023-09-01 12:03:10
143
1
原创 05-hadoop02之HDFS
目前遇到的问题是什么?1、你是否有这样的困惑?整个集群,每一个服务器上都需要输入 jps 查看服务。能否实现,在bigdata01上输入一个命令,直接出三台服务器上的所有正在运行的jps。它来了:所有的自定义的脚本文件,存放在/usr/local/bin 下面创建 vi jps-cluster.sh编辑保存退出。
2023-09-01 11:39:24
204
1
原创 07-Hive优化---高级部分3
不过,某个特定的job可能包含众多的阶段,而这些阶段可能并非完全互相依赖的,也就是说有些阶段是可以并行执行的,这样可能使得整个job的执行时间缩短。其实数据倾斜这个问题,在MapReduce编程模型中十分常见,根本原因就是大量相同的key被分配到一个reduce里(例如:要将a-q的有10条数据,q-z有100万条数据,这就造成第一个reduce几乎瞬间就能完成,而第二个reduce需要很长时间才能完成),造成一个reduce任务处理不过来,但是其他的reduce任务没有数据可以处理。
2023-09-01 08:58:51
299
1
原创 05-Hadoop01之HDFS
相当于在整个集群中,进行了初始化,初始化其实就是创建文件夹。目前有两台,克隆第一台(因为第一台上安装了hadoop), 克隆结束后,进行修复操作。位置: /opt/installs/hadoop/etc/hadoop。路径:/opt/installs/hadoop/etc/hadoop。跟put上传不一样的是,move结束后,本地文件会消失。HDFS三种模式:本地模式,伪分布模式,全分布模式。shell命令操作:东西特别的多,只学其中一些。上传文件,创建文件夹,删除文件,下载等等。
2023-08-31 11:08:37
227
1
原创 04-Linux06-shell(高级部分)
每次都要创建一个新的文件,比较麻烦,而且每次都要写 #!/bin/bash 这句话。uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用。以上的替换都是没有修改原来的数据的,sed也可以直接对原数据进行直接更改。b.sh中使用a.sh中的数组(使用之前要加载,类似于java中的导包)wc 跟上文件名 显示文件的字节数,单词数,文件的行数。打印4.txt 中每个学生的姓名以及前两门的成绩。a.sh 中定义了一个数组,b.sh中直接使用。3、列出6.txt中的3~5行的数据。
2023-08-31 10:32:19
1515
1
原创 04-Linux04-shell(高级部分)
编写一个脚本,提示请输入用户名 ,请输入密码,假如用户名是root 密码是123456。所谓的脚本就是将我们经常使用的linux命令汇总在一个文件中而已。查找子字符串,是分开查找的,不能看做是查找子字符串。提示登录成功,否则显示登录失败。unset 不能删除 只读变量。提出问题,远远比答案本身重要。类似于Java的Scanner。关系运算符的一些转换字符。
2023-08-31 09:54:35
70
1
原创 07-Hive--高级部分2
来一个需求:求每个部门的员工信息以及部门的平均工资。在mysql中如何实现呢。看见这种既要明细信息,也要聚合信息的题目,直接开窗!查询明细和统计,本来是两个矛盾的操作,在添加了窗口函数后,两个操作就可以同步进行,窗口函数中不加入参数时没统计的是整个数据集,在添加参数后,统计的是根据你的参数指定的一个或多个分类字段进行的统计。上案例:数据order.txt指标一:需求:查询每个订单的信息,以及订单的总数指标二:查询在2018年1月份购买过的顾客购买明细及总人数。
2023-08-30 11:44:24
185
原创 03-Linux01
远程连接工具非常多:XShell、FinalShell、SSH、Moba双击连接,第一次会出现提示点击:接收并保存,以后就不提示了。如果连接不上,如下进行:1、输入 ip addr 看是否有IP地址,如果没有,重置一下。2、关闭linux的防火墙3、直接重置网卡1) 先将所有的linux关闭2)3)4)这样就可以了。
2023-08-29 12:20:21
72
2
原创 虚拟机的安装
在普通的物理机上,虚拟出来一块资源,安装另一个操作系统,这样的软件就称之为虚拟机。它可以自动的切割一些资源(内存,硬盘,CPU,网络)相当于是模拟器(windows -->模拟器--> 安卓系统-->王者荣耀)
2023-08-29 12:13:40
299
1
原创 02-Git
Git的创始人是Linus Torvalds, 也是Linux的创始人。行业内比较有名的版本控制工具:CVS(老了)SVN(还行,在git之前很火)Git(刚开始只有Linux)我还用过StarTeam(收费的)总结:目前市场上使用的是SVN和GitSVN是集中式版本控制系统,版本库是集中放在中央服务器的。局域网的一个电脑而Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。
2023-08-29 11:38:28
66
原创 01-Maven
依赖管理和项目构建。依赖管理--管理Jar包。项目构建--帮我们创建项目,运行项目,测试项目,编译项目,打包项目。一个项目一般都经历从生到上线这样一个过程,我们的Maven帮助我们简化步骤。负责上线的同事:编写了一个脚本文件,可以自动的识别本次大家更改的代码,并且自动抽取出来,创建对应的文件夹,并且可以自动上传至服务器,重启服务。使用Ant工具编写的脚本。Ant能够完成的事情,其实就是项目构建。已经属于一个老的技术了。目前比较流行的是Maven。
2023-08-29 11:03:20
44
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人