一、 大数据
背景:随着科技的发展,智能手机、智能穿戴设备越来越普及,数据量越来越庞大,大数据应运而生。
1M=1024KB 1G=1024M 1T=1024G 1P=1024TB…
大数据:大(海量)+数据(论文、视频、游戏战绩、购买记录等等)
Gartner给出的大数据定义:大数据是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样性的信息资产。
我心目中的大数据:大数据是利用人们海量的行为数据,深层次的挖掘人们的需求和喜好
你心目中的大数据是什么?
大数据应用:啤酒+尿布、寻找校园中最孤独的人、电商网站的为你推荐/为你优选
大数据发展方向:包括人工智能、VR/AR、智慧城市、物联网等7大发展方向
二、大数据技术划分
大数据基础:Linux、NIO、RPC、zookeeper、AVRO等
大数据离线分析技术:Hadoop、flume、hive、HBASE、sqoop等
大数据内存分析技术:kafka、spark等
大数据可视化:算法、echarts、datav等
三、 Linux
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统
特点:开源、多用户、多任务、良好的界面、支持多平台
[root@localhost ~]# root是用户名,localhost是主机名,~当前目录,#管理权限
命令格式:命令 [选项] [参数],举例ls -l /home,显示/home所有的文件和文件夹
ls:显示当前目录下的所有文件和文件夹
cd: 切换目录,/根目录,.当前目录,…上一级目录,~当前用户的home目录(对于root用户来说,/root目录就是root的用户的home目录,对于普通用户来说,/home/用户名字,就是普通用户的home目录)
mkdir:创建目录,举例mkdir /teacher是在根目录下创建一个teacher,mkdir teacher是在当前目录下创建一个目录
pwd:查看当前所在目录
cp:拷贝 cp 文件… 目标目录 拷贝…文件到目标目录,可以同时拷贝多个文件,文件名之间用空格隔开
cp -r 目录 目标目录 拷贝目录到指定目录
touch 创建一个文件/修改文件的时间戳,举例:touch a.txt
绝对路径,以/(盘符或者根目录)开头;相对路径,相对于当前所在目录的路径
mv命令:移动文件/目录 mv /home/teacher/a.txt /home(移动…文件到目标位置)
Linux没有专门改名的命令,mv兼职改名 mv a.txt b.txt
rm:删除文件/文件夹 rm /home/b.txt
-r递归删除 -f强制删除 rm -rf /home/b.txt
shutdown -h now 立马关机
shutdown -h 16:00 会在16:00关机
shutdown -h +10 十分钟之后关机
shutdown -r now 立马重启
shutdown -r +10十分钟之后重启
reboot 重启
用户和用户组
root用户:超级管理员,UID是0
系统用户:UID是1-499
自定义的用户:UID是从500开始
账户信息存储于/etc/passwd
密码信息存储于/etc/shadow
useradd 添加用户,举例useradd tom
id tom查看用户信息
-c 指定一段注释性的描述
-d 指定用户的home目录
-g 指定用户所属的用户组
-G 指定用户所属的附加组
-u 用户号,指定用户的用户号
usermod 修改用户 usermod [选项] 用户名,对用户的修改实际上就是修改/etc/passwd文件
举个例子:修改用户的UID usermod -u 504 tom
userdel 删除用户
用户组:每一个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同的linux系统对用户组的规定有所不同,如linux下的用户属于与它同名的用户组,这个用户组会在用户创建的时候同时创建
用户组的管理涉及用户组的添加、删除、修改,实际上就是修改/etc/group的修改
groupadd添加用户组,groupadd [选项] 组名
-g 指定组ID
-o 一般与-g一起使用,表示新用户组的GID可以与系统已有用户组的GID相同
groupdel 删除用户组
groupmod修改用户组
文件属性详解
drwxr-xr-x. 4 root root 4096 May 26 20:56 MyStudent
d代表文件夹(-代表文件)
r(可读) w(可写) x(可执行)
rwx:第一组,表示文件/文件夹所属用户的权限,可读可写可执行
r-x:第二组,表示文件所属用户组的权限,可读不可写可执行
r-x:第三组,表示其他用户的权限,可读不可写,可执行
4代表连接数,root代表所属用户,root代表所属用户组,4096代表文件大小(字节)、
r的数字是4,w的数字是2,x的数字是1
举例:chmod 777 score.txt
cat [文件的路径]文件名字 查看指定文件
tail -5 文件的名字 查看后…行数据
vim是一个类似vi的文本编辑器,被公认为是最好用的文本编辑器
举例:vim 文件的名字
Vim的三种模式
-
一般模式
以vim打开一个文件就直接接入一般模式(默认模式),可以使用上下左右来移动光标,也可以使用删除字符来处理文件的内容,也可以复制、粘贴来处理文件数据
yy是复制一行,p是粘贴,dd删除光标所在一行 -
编辑模式
在一般模式下可以删除、复制粘贴等,但是无法编辑文件内容
按下i/o/a/r任何一个字母进行编辑模式,在左下方出现insert,在该模式下可以输入文件内容,按下esc就返回到一般模式 -
命令模式
在一般模式下,输入:/?三个字符中的任何一个按钮,就可以将光标移动到最下面一行。在这个模式下,可以提供查询、替换等功能,同时可以保存
:wq 保存退出,:q!强制不保存退出
?/word1/word2/g 将当前光标所在行的所有word1替换成wrod2
:%s/word1/word2/g 将整个文件的word1替换成word2
:w 文件的名字 将文件另存为其他的文件
:set nu 显示行号 :set nonu 取消显示行号
网络
-
IP
IP地址=网络+主机位
相同的网络,网络位肯定相同,主机位不一样
不同的网络,网络位肯定不同,主机位可能一样 -
子网掩码
子网掩码又叫网络掩码,是一个32位的地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是远程网上 -
网关
网络关口,从一个房间走到另一个房间,必须要经过一扇门,同样,从一个网络向另一个网络发送信息,也需要经过一道关口,就是网关,也叫作网络关卡 -
DNS域名解析服务器,就是将IP地址和域名进行了映射。
虚拟机的三种模式
-
桥接模式
通常它的名称为WMnet0,在桥接模式下,VMware虚拟出来的操作系统就像是局域网中的一台独立的主机(主机和虚拟机处于对等地位),它可以访问局域网内任何一台机器,也可以访问外网这种模式的优点自动获取IP地址,可以连接外网,缺点是IP地址自动获取,一旦宿主机IP发生变化,虚拟机的IP地址也可能随之变化,不能固定IP地址 -
NAT模式
NAT它的名称为VMnet8,通过nat的连接方式可以把物理主机作为路由器访问互联网 -
仅主机模式
它的名称是VMnet1,是不能和外界通信的,缺点就是虚拟机不能连接外网
远程管理
scp 远程拷贝,用于在linux下进行跨服务器拷贝文件的命令,和他类似的命令有cp,但是cp只是在北京进行拷贝,不能跨服务器,而且scp传输是加密的。另外,scp还非常不占资源,不会加重系统负荷
命令格式:scp [参数] [原来的路径] 用户名@IP地址:远程目录
-r 递归复制整个目录
举例:将第一台/home/teacher目录拷贝到第二台/home下(先关闭防火墙:service iptables stop,这是一次性关闭,如果想永久关闭防火墙,需要再次输入chkconfig iptables off–永久关闭防火墙)
scp -r /home/teacher root@192.168.157.142:/home
扩展:分布式与集群
分布式:是一种工作方式,把一个任务拆分成多个子任务,就是一个活多个人干
集群:是一种物理形态
ssh远程免密登录
为什么要有远程免密登录?
当我们想在多台机器上启动不同的进程的时候,我们来回切换机器很麻烦,如果我们在一台机器上就可以连接登录其他机器的话,就可以在本台启动部署在其他服务了。
Hadoop集群在启动的时候我们通常是用一个指令就启动了整个集群上的所有进程,这一个指令是将所有的进程的启动指令封装到了一起,但是,如果没有远程免密登录的话,我们需要输入很多次的密码。
ssh是常用的linux远程登录工具,一般设置免密码登录,采用的是RSA非对称加密算法,由公钥和私钥组成一对秘钥,通过公钥加密的信息只有私钥才能解密
首先,在A机器上生成一队密钥:公钥、私钥,A将公钥拷贝一份给B,A向B发送一个连接请求,B得到A的信息后,随机生成一个字符串,并用A的公钥进行加密,把加密之后的字符串发送给A,A接收到B发送过来信息之后,用私钥进行解密,A将解密之后的字符串再发送给B,B拿着这个字符串和解密之前的字符串进行对比,如果一致,那么B就允许A免密码登录到B。
总之,A要免密码登录到B,B首先要拥有A的公钥,然后B要做一次加密,A要进行解密,B要做验证。
非对称加密算法:公钥加密,私钥解密。