网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
- spark是多线程运行,mapreduce是多进程运行。进程的启动和关闭和会耗费一定的时间。
- 兼容性:spark可单独也可以部署为on yarn模式,mapreduce一般都是on yarn模式
- shuffle与排序,mapreduce有reduce必排序
- spark有灵活的内存管理和策略
七、结构化数据与非结构化数据
结构化数据
结构化的数据是指可以使用关系型数据库表示和存储,表现为二维形式的数据。一般特点是:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。eg:Excel工作表、mysql等
非结构化数据
就是没有固定结构的数据。各种文档、图片、视频/音频等都属于非结构化数据。对于这类数据,我们一般直接整体进行存储,而且一般存储为二进制的数据格式。eg:视频、音频、图片、图像、文档、文本等形
八、进入Linux新手村
搭建实验环境
实验过程
实验任务一:文件与目录操作
[root@localhost ~]# pwd
/root
格式:pwd
功能:显示当前所在目录(即工作目录)。
[root@localhost ~]# ls -a /
. bin dev home lib64 mnt proc run srv tmp var
… boot etc lib media opt root sbin sys usr
格式:ls [选项] [文件|目录]
功能:显示指定目录中的文件或子目录信息。当不指定文件或目录时,显示 当前工作目录中的文件或子目录信息。
命令常用选项如下:
-a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来。
-l :长格式显示,包含文件和目录的详细信息。(说明:命令“ls –l”设置了别名:ll,即输入 ll 命令,执行的是 ls –l命令。)
-R :连同子目录内容一起列出来。
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts
格式:cd [路径]
功能:用于切换当前用户所在的工作目录,其中路径可以是绝对路径也可以 是相对路径。
[root@localhost ~]# mkdir test
[root@localhost ~]# ls
anaconda-ks.cfg test
格式: mkdir [选项] 目录
功能:用于创建目录。创建目录前需保证当前用户对当前路径有修改的权 限。参数 -p 用于创建多级文件夹。eg:[root@localhost ~]# mkdir -p /test/test1/test2
[root@localhost ~]# rm -rf /test/
格式: rm [选项] [文件]
功能:用于删除文件或目录,常用选项-r -f,-r 表示删除目录,也可以用于 删除文件,-f 表示强制删除,不需要确认。删除文件前需保证当前用户对当 前路径有修改的权限。
[root@localhost ~]# cp /etc/profile ./
[root@localhost ~]# ls
anaconda-ks.cfg profile test
格式: cp [选项] [文件] [目标文件]
功能:复制文件或目录。
[root@localhost ~]# ls
anaconda-ks.cfg profile test
[root@localhost ~]# mv profile test/
[root@localhost ~]# ls test/
Profile
格式:mv [选项] [文件] [目标文件]
功能:移动文件或对其改名。常用选项-i -f -b,-i 表示若存在同名文件,则向用户 询问是否覆盖;-f 直接覆盖已有文件,不进行任何提示;-b 当文件存在时,覆盖 前为其创建一个备份。
[root@localhost ~]# cat -n test/profile
格式:cat [选项] [文件]
功能:查看文件内容。常用选项:-n 显示行号(空行也编号)。
[root@localhost ~]# ls
anaconda-ks.cfg test
[root@localhost ~]# tar -cvf test.tar test
test/
test/profile
[root@localhost ~]# ls
anaconda-ks.cfg test test.tar
[root@localhost ~]# tar -zcvf test.tar.gz test
test/
test/profile
[root@localhost ~]# ls
anaconda-ks.cfg test test.tar test.tar.gz
[root@localhost ~]# tar -zxvf test.tar.gz -C /opt/
test/
test/profile
[root@localhost ~]# ls /opt/
Test
格式:tar [选项] [档案名] [文件或目录]
功能:为文件和目录创建档案。利用 tar 命令,可以把一大堆的文件和目录 全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便 于网络传输是非常有用的。该命令还可以反过来,将档案文件中的文件和目 录释放出来。
常用选项:
-c 建立新的备份文件。
-C 切换工作目录,先进入指定目录再执行压缩/解压缩操作,可用于 仅压缩特定目录里的内容或解压缩到特定目录。
-x 从归档文件中提取文件。
-z 通过 gzip 指令压缩/解压缩文件,文件名为*.tar.gz。
-f 指定备份文件。
-v 显示命令执行过程。
[root@localhost ~]# useradd teacher
[root@localhost ~]# id teacher
uid=1000(teacher) gid=1000(teacher) 组=1000(teacher)
格式:useradd 用户名
功能:创建新用户,该命令只能由 root 用户使用。
[root@localhost ~]# passwd teacher
格式:passwd 用户名
功能:设置或修改指定用户的口令。
更改用户 teacher 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# chown teacher:teacher test.tar.gz
[root@localhost ~]# ll
总用量 20
-rw-------. 1 root root 1241 12月 20 2021 anaconda-ks.cfg
drwxr-xr-x. 2 root root 21 11月 9 23:19 test
-rw-r–r–. 1 root root 10240 11月 10 00:01 test.tar
-rw-r–r–. 1 teacher teacher 1008 11月 10 00:02 test.tar.gz
[root@localhost ~]# chown -R teacher:teacher test
[root@localhost ~]# ll
总用量 20
-rw-------. 1 root root 1241 12月 20 2021 anaconda-ks.cfg
drwxr-xr-x. 2 teacher teacher 21 11月 9 23:19 test
-rw-r–r–. 1 root root 10240 11月 10 00:01 test.tar
-rw-r–r–. 1 teacher teacher 1008 11月 10 00:02 test.tar.gz
[root@localhost ~]# ll test/
总用量 4
-rw-r–r–. 1 teacher teacher 1795 11月 9 23:17 profile
格式:
chown [选项]
功能:
将文件或目录的拥有者改为指定的用户或组
,用户可以是用户名或者
用户
ID
,组可以是组名或者组
ID
,文件是以空格分开的要改变权限的文件
列表支持通配符。选项
“-R”
表示对目前目录下的所有文件与子目录进行相同
的拥有者变更。
[root@localhost ~]# chmod 764 test.tar.gz
[root@localhost ~]# ll
总用量 20
-rw-------. 1 root root 1241 12月 20 2021 anaconda-ks.cfg
drwxr-xr-x. 2 teacher teacher 21 11月 9 23:19 test
-rw-r–r–. 1 root root 10240 11月 10 00:01 test.tar
-rwxrw-r–. 1 teacher teacher 1008 11月 10 00:02 test.tar.gz
格式:
chmod [-R] 模式 文件或目录
功能:
修改
文件或目录的
访问权限
。选项
“-R”
表示递归设置指定目录下的所
有文件和目录的权限。
模式为文件或目录的权限表示,有三种表示方法。
(
1
) 数字表示
用
3
个数字表示文件或目录的权限,第
1
个数字表示所有者的权限,第
2
个
数字表示与所有者同组用户的权限,第
3
个数字表示其他用户的权限。每类
用户都有
3
类权限:
读、写、执行
,对应的数字分别是
4、2、1
。一个用户
的权限数字表示为三类权限的数字之和,如一个用户对
A
文件拥有读写权
限,则这个用户的
权限数字为 6(4+2=6)
。
[root@localhost ~]# chmod u=rwx,g=rw,o=r test.tar.gz
[root@localhost ~]# ll
总用量 20
-rw-------. 1 root root 1241 12月 20 2021 anaconda-ks.cfg
drwxr-xr-x. 2 teacher teacher 21 11月 9 23:19 test
-rw-r–r–. 1 root root 10240 11月 10 00:01 test.tar
-rwxrw-r–. 1 teacher teacher 1008 11月 10 00:02 test.tar.gz
(
2
)字符赋值
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
9 23:19 test**
-rw-r–r–. 1 root root 10240 11月 10 00:01 test.tar
-rwxrw-r–. 1 teacher teacher 1008 11月 10 00:02 test.tar.gz
(
2
)字符赋值
[外链图片转存中…(img-eKSe8eQu-1715645873483)]
[外链图片转存中…(img-lmkVwzeW-1715645873483)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!