既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
小生认为,以后是 Ubuntu
的天下了,但小生头铁,偏爱 Debian
,有兴趣的朋友,真的建议学一学,以后真的没有人会在 Windows
进行开发了,千万不要觉得学前端设计学的好就好了,也不要觉得后端会写代码就好了,小生还是希望大家多了解一些东西,能力全面的人是任何公司都爱的。
别的不多说,如果大家考研,这点东西都不会,复试的老师是不会让大家过的,小生言尽于此,衷心希望大家考研过过过!!!
镜像选择:CentOS—7—x86_64—Everything—2009.iso
下载链接:
- 阿里源: CentOS—7—x86_64—Everything—2009.iso (aliyun.com)
- 清华源:CentOS—7—x86_64—Everything—2009.iso (tsinghua.edu.cn)
官网链接:
2. 清华开源镜像站:Index of /centos/7/isos/x86_64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
3. Java
jdk 这里采用甲骨文公司的 Java 8,当然这个版本问题在我看来其实不会太影响,想用 Java 11、Java 17、Java 21 在理论上也可以的,但是建议各位为了后续的学习不出问题,尽量选择 LTS(长期支持) 版,短期支持版像18、19、20 虽然也不是不能用,但毕竟维护时间太短了,不建议大家使用,当然各位肯定比我更清楚,毕竟小生主 Python
开发,Java 学的也不怎样,这边我们选择下载的是 jdk—8u401—linux—x64.tar.gz
,没有太大的说法,其实因为大家学的是 CentOS
,下载 jdk—8u401—linux—x64.rpm
,看起来会更省心一些,还不用自己添加环境变量,简直是省大事情,插个眼,要是小生时间足够,就两个都会给大家写一下,纯作了解。最后说一下,不用太担心老师给的是 jdk—8u162—linux—x64.tar.gz
,这个会不会有问题之类的,在我看来,一点问题没有,所以大家不用担心,这个方法是通用的,小生也会尽量给大家用通用的办法去写的,所以大家不用担心,当然如果要跟着小生下载的,可以看看下面,然后下载的时候需要注册一个甲骨文的账户,嫌麻烦的话,建议大家还是用老师的包。
Java 安装包选择:jdk—8u401—linux—x64.tar.gz
4. Hadoop
Hadoop 小生选用的是 hadoop—3.3.6
的版本,在小生看来,Hadoop 3以上的版本基本都没有太大的差别,可能会有一点不同的地方,但是总结大差不差;有兴趣深入学习的可以点这儿Hadoop – Apache Hadoop 3.1.3找到老师发的 hadoop—3.1.3 的官方文档进行学习,后续配置也会根据官方文档给出的配置文档范例进行配置;如果是跟小生使用 3.3.6 的版本,则可以点这儿Hadoop – Apache Hadoop 3.3.6找到官网文档;如果还需要其他版本的文档,可以点这儿Index of /docs (apache.org)找到。
Hadoop 的配置涉及到三种模式,单机模式
、伪分布模式
、完全分布模式
,单机和伪分布模式只需要一台机器开一台或多台虚拟机即可实现,而完全分布模式则是需要真实拥有多台机器进行连接;其中小生认为伪分布模式与完全分布模式差别不算是特别大,这里小生推荐大家跟着老师参考这篇:Hadoop安装教程—伪分布式配置—CentOS6.4/Hadoop2.6.0—厦大数据库实验室博客 (xmu.edu.cn)博客进行学习,当然小生并不是说照抄就可以了,这篇博客只有参考作用,喜欢自定义的有兴趣的同学可以自行深入摸索。
Hadoop 安装包选择:hadoop—3.3.6.tar.gz
下载链接:hadoop—3.3.6.tar.gz
5. HBase
HBase 咱这选择的是 hbase—2.4.17
,课程时间不长,所以咱这也不知道各位选取的是哪一个版本,但理论上是 2.1.x ~ 2.4.x
的版本;问题不大,大概的都差不多,但是 HBase
依赖于 Hadoop
,所以会有一定的版本对应关系,下面是一些版本的对应关系,但不一定涵盖完全,所以如果各位有想法深入了解,可以点这儿Apache HBase ™ Reference Guide查看官方文档进行学习。
✓:代表经过测试,功能齐全
✕:已知功能不全,或者存在CVE,因此我们在较新的次要版本中放弃支持
— :不适配
HBase—2.0.x | HBase—2.1.x | HBase—2.2.x | HBase—2.3.x | HBase—2.4.x | HBase—2.5.x | |
---|---|---|---|---|---|---|
Hadoop—3.1.3 | ✕ | ✓ | ✓ | ✓ | ✓ | ✕ |
Hadoop—3.3.6 | — | — | — | ✓ | ✓ | ✓ |
根据上表,我们就很清楚我们会用到的版本依赖关系。当然,HBase
不止依赖 Hadoop
,还会有 jdk
的版本依赖,请看下表:
当然,大家所使用的 jdk8
肯定是没有问题的,所以放心好了,这个当做了解而已。下面附上链接,当然用老师的也可以,作为探索,我就不用老师的版本了,其实都一样的,不用担心兼容问题,有问题私信小生,小生再帮大家解决。
HBase 安装包选择:hbase-2.4.17-bin.tar.gz
6. MySQL
本来应该是用不到 Mysql 的,但是由于 Hive 只是一个架构,需要建设在实体的数据库上边,而 HBase 各位同学后续也不会真正接触,所以这边需要将 Hive 架设到 MySQL 数据库上。这里选择安装的是 MySQL 8,各位同学如果想安装 MySQL 5 版的也可以参考 MySQL 8 的安装方式。MySQL 文档众多,这里就不一一列举了,想要查看的可以点击MySQL :: MySQL Documentation查看官方文档。
MySQL 没有特别的依赖说明,安装方式也很简单,鉴于大家在先前的学习中已经有过接触,这里也不过多赘述。为了大家的方便,我们就不选择在线安装的方式了,我们直接下载所有的离线包进行安装,为了简便一些,我们选择全部组件都进行安装,如果有想要了解各个组件的作用进行适当的选装的朋友们,可以自行查阅官方文档内容进行选择。
MySQL 安装包选择:mysql-8.2.0-1.el7.x86_64.rpm-bundle.tar
7. Hive
Hive 这边,我选用的是 Hive-3.1.3
,Hive 与 Hadoop 也有一定的依赖关系,各位可以通过下载并解压缩包来安装Hive的稳定版本,也可以下载源代码并使用 Maven(0.13版及更高版本)或 Ant(0.12版及更早版本)构建Hive,鉴于大家并不是特别需要懂源码编译安装,所以这边选择稳定版本的安装就可以,如果有想深入了解安装配置等的可以选择点这儿Home - Apache Hive - Apache Software Foundation查看 Hive 的文档。
以下是一定的依赖关系说明:
- Java 版本选择:Java 1.7(首选)
注意:Hive 1.2版本以上需要Java 1.7或更高版本。Hive版本0.14到1.1可以与Java 1.6兼容,但更喜欢1.7。强烈建议用户开始迁移到Java 1.8(参见HIVE-8607)。- Hadoop 版本选择:Hadoop 2.x(首选),1.x(不受Hive 2.0.0以上版本支持)。
Hive 0.13之前的版本也支持Hadoop 0.20.x、0.23.x。- Hive通常用于生产Linux和Windows环境。Mac是一种常用的开发环境。本文档中的说明适用于Linux和Mac。在Windows上使用它需要稍微不同的步骤。
Hive 3.0.0 | Hive 3.1.x | Hive 4.0.0-alpha-1 | Hive release 4.0.0-alpha-2 | |
---|---|---|---|---|
Hadoop 3.x.y | ✓ | ✓ | ✓ | ✕ |
上面的依赖关系仅仅是列出了有限的一部分,邮箱深入了解的可以自行学习,这里就不一一列举了。
Hive 安装包选择:apache-hive-3.1.3-bin.tar.gz
二、系统安装
安装 VMware 的部分,在下就不在这里过多赘述了,大家根据提示下载安装好即可,当然安装完后也可能会有其他问题,在这部分我尽量对目前我已知的问题进行一些说明,希望能帮助大家解决一些简单的配置上的问题。
1. 虚拟网络编辑器
用于 Workstation Pro 提供桥接模式网络连接、网络地址转换 (NAT)、仅主机模式网络连接和自定义网络连接选项,用于为虚拟机配置虚拟网络连接。在安装 Workstation Pro 时,已在主机系统中安装用于所有网络连接配置的软件,想深入了解的可以到VMware Workstation Pro 文档查看官方文档。
提到这个部件是因为在 Workstation Pro 的网络配置中会有三种模式,桥接模式、NAT模式和仅主机模式,这三种模式都有一定的区别,他们将会在系统创建两个以太网适配器(如下图所示),如果大家计算机网络还有印象,应该知道以太网适配器是计算机中的硬件设备,也称为网络接口卡(Network Interface Card,NIC)。它的主要作用是使计算机能够连接到局域网(LAN)或广域网(WAN),并通过以太网协议进行通信。简单来说,如果没有它,那么计算机之间将不能进行通信,就是断网了。
其中我们可能会用到的是桥接模式和NAT模式,通过下表,大家可以了解一下它们的作用:
选项 | 说明 |
---|---|
桥接模式 | 通过使用主机系统上的网络适配器将虚拟机连接到网络。虚拟机在网络中具有唯一标识,与主机系统相分离,且与主机系统无关。 |
NAT | 虚拟机和主机系统共享一个网络标识,此标识在外部网络中不可见。当虚拟机发送请求以访问网络资源时,它会充当网络资源,就像请求来自主机系统一样。 |
这个我们不详细说明,大家稍微有点了解即可,有兴趣的同学可以自行学习。
写这么多,只是希望大家能确保这两个以太网适配器存在且可用,否则将无法进行后续的学习和操作!!!
- 打开 VMware Workstation,请大家点击
编辑(E) --> 虚拟网络编辑器(N)
- 打开后,请大家点击
更改设置(C)
3. 然后可以看见出现了三种网络模式的选项,我们需要分别点击 VMnet1
和 VMnet8
,并且确保下方红色框中的内容已被勾选,这样可以确保上述提到的两个以太网适配器存在且可用。
2. 操作系统安装
这部分将会给大家讲解操作系统安装的一些细节,纯属个人见解,只能保证大家能顺利渡过这门课程,不能保证大家工作生活自定义的时候不会产生冲突,这里先叠个甲。
- 打开 VMware Workstation,点击
创建新的虚拟机
,或者使用快捷键Ctrl + N
2. 为了保证我们见到的东西都差不多,所以请大家选择 自定义(高级)(C) --> 下一步(N)>
,选择 典型(推荐)(T)
会让大家省很多事情,但是为了保证大家以后售后简单一些,这边还是选择自定义安装。
3. 硬件的兼容性大家可以不用管,无论是 15 还是 17 都不重要,反正虚拟机只在你的电脑上运行,又不用拿到别人那里,所以没有关系的,如果需要移动虚拟机到其他电脑上,可以根据两台电脑中 VMware Workstation 的版本,选择较低版本的进行兼容,左边的 兼容产品
栏会显示可兼容的版本号(注意选择较低的版本进行兼容)。
4. 接下来各位的各种出现的顺序不能保证,我只能根据我这边的顺序给大家写,大家如果发现图对不上,可以往下面翻一翻,会有一样的;如果没有,又拿不定主意的可以私信我或者私信老师或者查找搜索引擎寻找一定的办法。这里需要大家选择稍后安装操作系统(S)
,如果大家打开了变成驱动光盘了,请选择第一个安装程序光盘(D)
,也不是说打开了不能选择其他两种方式安装,大家自己看着来就好,然后就可以点击下一步(N)>
。
5. 到这里我们需要选择操作系统,CentOS 7
是 Linux 的其中一个发行版,也就是俗称的分支,所以这里我们选择 Linux(L)
,在版本上,我们选择是 CentOS 7 64 位
,现在的个人 PC 机器的芯片架构一般都是 X86_64
,所以我们选择的是 64 位的操作系统,具体可以到系统配置中查看自己的 CPU 是多少位的,现在已经很少见 32 位的了,最后点击 下一步(N)>
。
6. 这部分是为你的虚拟机命名以及选择虚拟机文件存储在计算机中的位置,名称并不是虚拟机里面的主机名,而是一个标记的名称,只要自己能够认出来即可;再次提醒!!!不是虚拟机的主机名,只是一个普通的名称而已,都选择好之后就可以点击下一步(N)>
。
7. 这部分需要选择分配给虚拟机的处理器个数以及每个处理器中的内核个数;这部分我想了好一会,还是决定给大家讲清楚一些,这里我们尽量简单一些,只关注最后的数字,也就是处理器的内核总数
,计算方式就是
处理器的数量
×
每个处理器的内核数量
=
处理器的内核总数
处理器的数量 × 每个处理器的内核数量 = 处理器的内核总数
处理器的数量×每个处理器的内核数量=处理器的内核总数;这里各位在安装的时候尽量保证处理器的内核总数不要超过
本机
C
P
U
内核总数的
2
3
本机 CPU 内核总数的 \frac{2}{3}
本机CPU内核总数的32即可;这里以Windows 11 为例,使用快捷键 Win + i
打开控制面板,找到系统 --> 系统信息
,在设备规格中我们可以找到处理器型号
然后需要复制处理器的型号并且上网处理器的信息,这里可以清楚找到 CPU 的内核总数
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
0bd9d1e103059c94a58.png)
[外链图片转存中…(img-MiRL0npg-1715603549894)]
[外链图片转存中…(img-cS7uFqwi-1715603549894)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!