自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 一个我们都懂得Truth

格局小的人,往往容易陷入生活的琐碎之中,总喜欢计较,总喜欢抱怨,总喜欢生气,还这看不惯,那也看不惯,这样的人,注定人生过得很痛苦。当你到达了一定高度,有了钱,有了本事,有了实力,你的格局自然就大了,就不会再去纠结生活中的鸡毛蒜皮,也不会为那些琐碎的小事而烦恼。总有一天,你会明白,真正能够治愈你的,从来都不是时间,而是你心里那段释怀和格局,只要你内心不慌乱,就连世界都影响不到你。你一天收入10000元,有人骂你,你会毫不在意,甚至同情骂你的人。格局太小,纠结的都是鸡毛蒜皮,放大你的格局,你的人生将不可思议。

2025-02-23 20:44:21 171

原创 NotePad++快捷键

Ctrl + Alt + Shift + F:展开所有代码块。Ctrl + Shift + Tab:切换到上一个标签页。Ctrl + + / Ctrl + -:放大/缩小字体。Ctrl + Shift + ↑/↓:上下移动当前行。Notepad++ 功能更丰富,因此快捷键更多。Ctrl + Shift + F:在文件中查找。Ctrl + Shift + K:删除块注释。Ctrl + Alt + F:折叠所有代码块。Ctrl + Shift + S:另存为。Ctrl + K:删除行注释。

2025-03-05 10:45:55 412

原创 一道hql面试题:不用开窗函数怎么写?

我们把所有score看做s1,把去重后的score看做s2,每次拿一个s1里的分数与s2里的所有分数作比较,看s2中有几个比拿出的这个分数大,就排名第几。一个人排名第几,取决于这个人的分数 小于等于几个别的分数?如果不让用开窗函数+dense_rank 如何写?

2025-03-01 16:50:36 214

原创 关于远程连接工具不能用hostname而只能用ip连接上的问题

承接我的上一篇博客,安装完虚拟机后,明明虚拟机里我也做了映射,但是用远程连接工具(我用的是datagrip)就是登不上,输入ip却能连上。在本地找到hosts文件,建立虚拟机和本地的连接。hosts文件在C:\Windows\System32\drivers\etc。此时用datagrip连接试试。设置好之后,需要修改与我们的mysql对应或接近的版本。此时不管用mysql还是hive使用hostname都能连接上了。其实我觉得改一个bigdata01就能用了。

2025-02-24 13:48:40 244

原创 拼接:concat、concat_ws和形成集合collect_set、collect_list用法

collect_set() 将分组的数据变成一个set集合。里面的元素是不可重复的。concat_ws(分隔符,集合) : 将集合中的所有元素通过分隔符变为字符串。需求:将字符串变为map集合 使用一个函数 str_to_map。collect_list(): 里面是可以重复的。concat 进行字符串拼接。-- 将下面的数据格式。

2025-02-23 19:26:12 527

原创 如何把虚拟机拷贝到另一台VMware里?

当我们换一台新电脑想用之前已经用了好久的虚拟机怎么办,总不能再一点点重新传建开始吧,此时我们可以把旧电脑上的虚拟机拷贝到新电脑上。二、我们先把VMware下载好,然后选择“打开虚拟机”,导入我们之前从旧机拷贝下来的bigdata01诸如此字样的文件。三、进入虚拟机编辑设置,我们需要把“虚拟化引擎”的两个复选框都关了,不然还得麻烦的设置,不需要也行,我没设置。四、此时我们需要在黑窗口里更改一下虚拟机的ip,以前的不能用好了,先登录,账户密码输入进去。把里面的ip和网关改一下,这两处。

2025-02-22 13:27:42 981 1

原创 三元运算符

三元运算符用法

2025-02-14 16:10:14 122

原创 substring、substr、split用法区别

/ 输出:apple banana,cherry,date。length(可选):要提取的子字符串的长度。从指定的起始位置开始,提取指定长度的子字符串。// 输出:World。:在 Java 中,split 是 String 类的一个方法,用于将字符串分割为数组。start:子字符串的起始位置(从0开始计数)。start:子字符串的起始位置(从0开始计数)。

2025-02-14 15:10:36 393

原创 对正则表达式说不!!!

可能大家都会和我一样,时常会遇到正则表达式,有时候会忘记某些字符而苦恼。今天就帮助大家克服它,虽然不多,但我认为掌握这些足够了,万变不离其宗,以不变应万变。

2025-02-13 17:21:51 652

原创 环形缓冲区

环形缓冲区,其实是一个数组,将数组分为两部分,分割的这个点就称之为轴心。存储KV键值对,是从左到右,类似于顺时针,因为每一个KV键值对都有对应的元数据。元数据是从轴心开始,从右向左执行。前面四个第一组::表示Value的起始位置,第二组:Key值的起始位置,第三组:分区信息,第四组:val的长度。这些内容称之为KV键值对的meta数据(元数据)。当两者数据占用空间达到80%的时候,需要清理数组,清理完之后,轴心发生了变化。(每四个是一组,共计4组)KV键值对的元数据,

2025-02-09 20:37:49 138

原创 Hdoop之MapReduce的原理

关于9 的再次解释: 总结:

2025-02-09 19:45:30 465

原创 hadoop之MapReduce:片和块

比如班里的同学一起搬砖,每人规定搬3块,假定砖还剩4块,到某个同学了,他就直接搬完即可,没必要让另一个同学因为一块砖,而专门跑一趟。一般片 = 块的,但是到最后一次的时候,有可能片> 块,但是绝对不能超过块的1.1倍。132M 跟 128M * 1.1 进行比较,发现小于这个值,直接一个Map任务搞定,不在启动第三个任务了。剩余44M 剩余的44M 和 128M*1.1倍比较,小于这个值,剩余的44M 就单独起一个Map任务。块是物理概念,一个块就是128M ,妥妥的,毋庸置疑。

2025-02-09 16:43:47 337

原创 hdfs:介绍三个脚本

如果我们想在Bigdata01 这台电脑上,查看整个集群的服务启动情况,可以使用这个脚本文件。/bin/bashUSAGE="使⽤⽅法:sh jps-cluster.sh"dodoneecho "--------jps-cluster.sh脚本执⾏完成!--------"记得赋权限不管在哪个地方都可以执行该命令 jps-cluster.sh。

2025-01-30 21:51:09 832

原创 hdfs之读写流程

客户端Client想将文件a.txt上传至hdfs,首先向Namenode发送请求进行权限校验,Namenode通过后会计算出来三个节点,并将这三个节点告知客户端,客户端将输入进行切割成块,一个一个的块进行传输,单位是packet,大小64kb,各个数据节点之间也会创建pipeline,中间也是传递的packet,各个节点传递成功后会进行应答响应,最后汇总在一起告知客户端传递好了。各个数据节点之间传递数据是同时进行的。

2025-01-29 20:07:22 214

原创 HDFS安全模式

在一定百分比(这个参数配置于dfs.safemode.threshold.pct,默认值是99.9%)的数据块被NameNode检测确认是安全之后,再过若干时间后(这个参数配置于dfs.safemode.extension,默认值是30秒),NameNode将退出安全模式状态。每个数据块都有一个指定的最小副本数(dfs.replication.min),当NameNode检测确认某个数据块的副本数目达到这个最小值,那么该数据块就会被认为是副本安全(safely replicated)的。

2025-01-27 16:19:02 318

原创 hdfs(防止namenode挂掉数据丢失)

所以namenode的元数据非常的重要,每隔一个小时,会将namenode 中的内存数据数据备份一下,变成了fsimage的东西,而且只保留最近的两次。将老的fsimage 文件和 从未合并的edits文件合并在一起,生成一个新的fsimage,这个操作是每隔一个小时操作一次。每一个块都要有一个对应的元数据,元数据150个字节,这150个字节存在了namenode的内存中,假如namenode挂掉了,元数据也就消失了,整个集群报废了。数据节点,真正存储数据的地方,可以有1个,也可以有多个。

2025-01-26 12:03:55 390

原创 mysql之sql的优化方案(重点)

假如一个Staffs 这个表,将 name,age ,pos 组合成了一个联合索引,在where条件下,能够使用到的索引越多越好。

2025-01-08 18:00:17 1091

原创 Mysql之炸裂函数(难点★★★★★)

INSERT INTO `wow_info` VALUES (6, 'xd', '德鲁伊', 'xiaode', '皮甲', '恢复|平衡|野性|守护');INSERT INTO `wow_info` VALUES (1, 'fs', '法师', 'fashi', '布甲', '冰法|火法|奥法');INSERT INTO `wow_info` VALUES (2, 'ms', '牧师', 'mushi', '布甲', '神牧|戒律|暗牧');成立,刚好有冰法、火法、奥法。

2025-01-06 20:55:49 823

原创 mysql之缓冲池(也可当面试题)

作用就是尽可能减少磁盘的 IO,它是 Innodb 通过在缓冲池中提前读取多个数据页来优化 I/O 的一种方式。因为磁盘读写的时候,是按照页的方式来读取的(你可以理解为固定大小的数据,例如一页数据为 16K),每次至少读入一页的数据,如果下次读取的数据就在页中,就不用再去磁盘上读取了,从而减少了磁盘 I/O比如: select * from user where id = 10;这个时候用户只看到了一条数据,但是mysql其实读取了一页数据,这一页数据有多少条呢?

2025-01-06 12:45:27 427

原创 关于atlas_start.py启动报错的解决办法

从这两个地方可以知道,atlas依赖的是python2的版本,默认的python位置是在:/usr/bin/env ,如果你的当前环境中用的不是python2,那就会报这个语法错误。尽管官网已经不在维护python2版本了,python3才是趋势,但是为了兼容不同环境,我们还是需要安装一下python2的版本。1、安装虚拟环境conda,这一篇可以参考我【虚拟环境构建】专栏,conda是用来管理多环境的工具;安装python2.7版本成功,问题解决。

2024-12-16 17:07:57 178

原创 apache-atlas-2.1.0-hive-hook.tar.gz

链接: https://pan.baidu.com/s/1NehDR1o0_KlvlHhplj-k6g 提取码: q42b。编译好的apache-atlas-2.1.0-hive-hook.tar.gz送给大家。通过网盘分享的文件:Atlas源码编译包。

2024-12-15 22:35:05 128

原创 已经编译好的Atlas server包

链接: https://pan.baidu.com/s/1BtHS5YZ1l_jfGsmsmxGO-Q 提取码: q42b。生活不易,这个编译包弄了好久好不容易才弄出来,网上有这个包的仅限我这一家,拿走不谢留个赞就行~~~通过网盘分享的文件:Atlas源码编译包。

2024-12-15 22:10:56 125

原创 Atlas之源码编译遇到的问题

之所以删除是因为如果删除本地,黑窗口里就会执行mvn clean -DskipTests install时自己创建这两个适合的版本。,更改版本,但是并不能解决问题,仍然报错。所以我就尝试删除本地的这两个文件,在C:\Program Files (x86)\nodejs下存放,还有个全局C:\Users\<你的用户>\AppData\Roaming\npm。手动下载 POM 文件:作为临时解决方案,你可以尝试手动下载 POM 文件,然后将其放置在你的本地 Maven 仓库中。

2024-12-15 22:04:19 146

原创 关于笔记本如何定时关机(或者创建其他定时任务)

其他类型电脑也是这样。

2024-11-27 20:07:32 114

原创 面试题:spark部分(下)

广播变量(Broadcast Variables)​广播变量通常情况下,当一个RDD的很多操作都需要使用driver中定义的变量时,​每次操作,driver都要把变量发送给worker上的executor中的所有task一次;​如果这个变量中的数据很大的话,会产生很高的传输负载,导致执行效率降低;​使用广播变量可以使程序高效地将一个很大的只读数据发送给多个worker节点,而且对每个worker节点只需要传输一次,每次操作时executor可以直接获取本地保存的数据副本,不需要多次传输.

2024-11-25 19:21:48 198

原创 面试题:spark部分(上)

2.RDD容错机制:checkpoint检查点机制。1.RDD容错机制:persist持久化机制​。1.RDD容错机制:persist持久化机制​。2)persist算子。

2024-11-25 19:14:58 205

原创 部分面试题

1)HashMap 的底层工作原理1、哈希函数与哈希值: 每个键都会通过哈希函数计算出一个哈希值,然后通过哈希值决定数据应该存储在哪个桶(bucket)中。桶是一个数组的存储位置。2、哈希函数的主要目的是将数据均匀地分布在不同的桶中,从而减少哈希碰撞(即两个不同的键映射到同一个桶中的情况)。3、数组和链表: HashMap 的底层是一个数组,每个数组元素存放一个链表或红黑树(在 JDK 1.8 之后,链表过长时会转化为红黑树)。

2024-11-21 19:05:29 295

原创 java代码保存学生信息导入到kafka的topic里,然后kafka把数据导入到hdfs

a1.sinks.k1.hdfs.path = /home/output/%Y-%m-%d # 替换为你的 HDFS URI。

2024-11-12 20:39:58 274

原创 关于为什么启动不了kafka,集群也启动不了kafka的问题解决方案

这是集群命令启动后的正常状态,zookeeper和kafka都启动了。把datas里所有清空,或者直接删除这个文件夹,再新建datas的空文件夹。你再次启动集群kafka时还会出现数据,不要怕,这里保存的只是临时日志文件。这种很可能是存放日志的你自己建的文件夹满了,或者有问题。

2024-11-12 15:02:04 508

原创 因为电脑卡死或者没网直接关机电脑导致虚拟机进不去的解决办法(亲测最有效)

情况一(解决办法):打开虚拟机的安装目录,找到损坏虚拟机里的目录,把带有.lck字样的文件夹删除即可。(最重要的一点,我就是这种情况二,同事们都是情况一解决的)问题解决,逃不出这两种情况。

2024-11-11 20:16:09 401

原创 Linux中查看文件方式的几种区别

可以通过enter键,继续往后查看,继续往后查看,每次查看一行数据,点击space键,每次查看一页数据如果不想看了,可以输入 q。可以通过enter键,继续往后查看,每次查看一行数据,点击space键,每次查看一页数据,如果不想看了,可以输入 q。cat /etc/services 查看该文件,并且全部展示(管你有几万行我也全部展示),一般用于查看小文件。tail -f /etc/services 滚动查看某个文件(一般该文件是日志文件,不断的有内容往里面写入)head 查看文本文件前10行。

2024-11-11 19:07:07 172

原创 Kafka面试夺命连环30问

Topic是逻辑上的概念,而partition是物理上的概念,每个partition对应于一个log文件,该log文件中存储的就是Producer生产的数据。由于数据同步的时候先进入Leader,随后同步给Follower,假如Follower挂掉了,Leader和其他的Follower继续往前存储数据,挂掉的节点从ISR集合中剔除,此时挂掉的Follower又重启了,他会先从上次挂掉的节点的HW开始同步数据,直到追上最后一个Follower为止,会重新回归到ISR。Partition 表示分区号;

2024-11-09 12:07:41 722

原创 Linux中的软连接、硬链接的相关知识与使用

ln, link的缩写,连接的意思,分为软链接和硬链接,一般都使用软链接。软链接:类似于Windows系统中的快捷方式,相当于复制但与复制的区别是它不占用内存空间,它包含有另一文件的位置信息,而不是文件的实际数据。它的功能是某一文件在另外一个位置建立一个同步的链接,当同一文件需要在多个位置被用到的时候,就会使用到软连接。硬链接:相当于复制,占用内存空间,硬链接一旦创建,源文件和链接文件任何一方修改文件都会同步修改。

2024-11-06 20:01:51 315

原创 python中的jieba分词器

语法:jieba.cut(“语句”) / jieba.cut_for_search(“语句”)精确模式:将句子最精确地按照语义切开,适合文本分析,提取语义中存在的每个词。# 中华,中华人民,中华人民共和国,华人,人民,人民共和国,共和,共和国。搜索引擎模式:在精确模式的基础上,对长词再次切分,适合用于搜索引擎分词。jieba.cut("语句", cut_all=False)jieba.cut("语句", cut_all=True)jieba.cut_for_search("语句")写代码之前先要导入包。

2024-10-31 20:15:17 224

原创 Canal的安装与使用

我们都知道一个系统最重要的是数据,数据是保存在数据库里。但是很多时候不单止要保存在数据库中,还要同步保存到Elastic Search、HBase、Redis等等。这时我注意到阿里开源的框架Canal,他可以很方便地同步数据库的增量数据到其他的存储应用。所以在这里总结一下,分享给各位读者参考~我们先看官网的介绍canal,译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费。这句介绍有几个关键字:增量日志,增量数据订阅和消费。

2024-10-13 20:15:13 565

原创 如何测试拉链表开发正确以及过程中会遇到的问题

因为我们从mysql导入数据到hive的时候,hive表是自己创建的,那么就会出现mysql的字段是timestamp,但是导入hive的时候变成了bigint。1、自己手动创建hive表,这样创作的表数据类型更加精准,特别是一些精度要求非常高的字段。2、可以在sqoop导入的时候,指定数据类型,以上sqoop就是指定了数据类型,使用了。如果你想测试这个效果,需要先删除之前的表,再次创建时才会看到效果。hive 的表是 sqoop 创建的,它的时间类型是 string。接着模拟第二天数据有新增,有修改。

2024-09-24 20:28:26 406

原创 关于Warning: Permanently added the ECDSA host key for IP address ‘192.168.80.133‘ to the list o解决方案

1. 删除本地known_hosts里面的缓存信息即可。命令:ssh-keygen -R "你的远程服务器ip地址"2. 输入命令:vi /etc/ssh_config。如果每次登陆虚拟机都出现这种报错!

2024-09-21 09:08:14 813

原创 【已解决】Hadoop通过主机名无法访问HDFS,或者查看文件失败报错

然后再在Windows 下打开 C:\Windows\System32\drivers\etc\。修改 hosts 文件权限(对本机用户赋予写入权限),右键改文件,做以下修改。打开 hosts 文件,将集群主机的地址和主机名的映射写入文件,保存退出。在windows本机,修改hosts映射关系。

2024-09-19 20:25:21 657 1

原创 使用kettle将数据从mysql导入到hdfs出现的错误

假如报:无法读取 hdfs://bigdata01:9820/home/aaaa 的问题。假如你使用了 hdfs 自带的文件夹,比如/home,会报没有权限的错误。1、查看本地是否配置了 HADOOP_HOME 的环境变量。2、spoon.bat 中是否添加了 utf8 字符集。假如你使用的是一个全新的路径,是不会报权限错误的。

2024-09-12 19:19:50 231

原创 mysql 导入 hive时报错,或者只导出一行或者两行数据

然后不需要重启 hiveserver2 以及 kettle,直接运行即可。输入是 表输入,使用 mysql ,输出是表输出,使用 hive。

2024-09-12 19:08:54 215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除