赞
踩
需要注意的是,MapReduce也有其不擅长之处,例如实时计算、流式计算和DAG(有向图)计算等。
Spark具有以下几个显著的特点:
1、速度快
小生根据官方数据统计,与Hadoop相比,Spark基于内存的运算效率要快100倍以上,基于硬盘的运算效率也要快10倍以上。Spark实现了高效的DAG执行引擎,能够通过内存计算高效地处理数据流。
2、易用性
Spark编程支持Java、Python、Scala及R语言,并且还拥有超过80种高级算法,除此之外,Spark还支持交互式的Shell操作,开发人员可以方便地在Shell客户端中使用Spark集群解决问题。
3、通用性
Spark提供了统一的解决方案,适用于批处理、交互式查询(SparkSQL)、实时流处理(SparkStreaming)、机器学习(SparkMLlib)和图计算(GraphX),它们可以在同一个应用程序中无缝地结合使用,大大减少大数据开发和维护的人力成本和部署平台的物力成本。
4、兼容性
Spark开发容pSpark可以运行在Hadoop模式、Mesos模式、Standalone独立模式或Cloud中,并且还可以访问各种数据源,包括本地文件系统、HDFS、Cassandra、HBase和Hive等。
MapReduce是将中间结果保存到磁盘中,减少了内存占用,牺牲了计算性能。Spark是将计算的中间结果保存到内存中,可以反复利用,提高了处理数据的性能。
Spark 计算比 MapReduce 快的根本原因在于 DAG 计算模型。一般而言,DAG 相比MapReduce 在大多数情况下可以减少 shuffle 次数。Spark 的 DAGScheduler 相当于一个改进版的 MapReduce,如果计算不涉及与其他节点进行数据交换,Spark 可以在内存中一次性完成这些操作,也就是中间结果无须落盘,减少了磁盘 IO 的操作。但是,如果计算过程中涉及数据交换,Spark 也是会把 shuffle 的数据写磁盘的!有一个误区,Spark 是基于内存的计算,所以快,这不是主要原因,要对数据做计算,必然得加载到内存,Hadoop 也是如此,只不过 Spark 支持将需要反复用到的数据给 Cache 到内存中,减少数据加载耗时,所以 Spark 跑机器学习算法比较在行(需要对数据进行反复迭代)
粗粒度申请资源指的是在提交资源时,spark会提前向资源管理器(yarn,mess)将资源申请完毕,如果申请不到资源就等待,如果申请到就运行task任务,而不需要task再去申请资源。 MapReduce是细粒度申请资源,提交任务,task自己申请资源自己运行程序,自己释放资源,虽然资源能够充分利用,但是这样任务运行的很慢。
格式:pwd
功能:显示当前所在目录(即工作目录)。
格式:ls [选项] [文件|目录]
功能:显示指定目录中的文件或子目录信息。当不指定文件或目录时,显示 当前工作目录中的文件或子目录信息。
命令常用选项如下:
-a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来。
-l :长格式显示,包含文件和目录的详细信息。
-R :连同子目录内容一起列出来。
说明:命令“ls –l”设置了别名:ll,即输入 ll 命令,执行的是 ls –l
格式:cd <路径>
功能:用于切换当前用户所在的工作目录,其中路径可以是绝对路径也可以 是相对路径。
格式: mkdir [选项] 目录
功能:用于创建目录。创建目录前需保证当前用户对当前路径有修改的权 限。参数 -p 用于创建多级文件夹。
格式: rm [选项] <文件>
功能:用于删除文件或目录,常用选项-r -f,-r 表示删除目录,也可以用于 删除文件,-f 表示强制删除,不需要确认。删除文件前需保证当前用户对当 前路径有修改的权限。
格式: cp [选项] <文件> <目标文件>
功能:复制文件或目录。
格式:mv [选项] <文件> <目标文件>
功能:移动文件或对其改名。常用选项-i -f -b,-i 表示若存在同名文件,则向用户 询问是否覆盖;-f 直接覆盖已有文件,不进行任何提示;-b 当文件存在时,覆盖 前为其创建一个备份。
格式:cat [选项] [文件]
功能:查看文件内容。常用选项:-n 显示行号(空行也编号)。
格式:tar [选项] [档案名] [文件或目录]
功能:为文件和目录创建档案。利用 tar 命令,可以把一大堆的文件和目录 全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便 于网络传输是非常有用的。该命令还可以反过来,将档案文件中的文件和目 录释放出来。
常用选项:
-c 建立新的备份文件。
-C 切换工作目录,先进入指定目录再执行压缩/解压缩操作,可用于 仅压缩特定目录里的内容或解压缩到特定目录。
-x 从归档文件中提取文件。
-z 通过 gzip 指令压缩/解压缩文件,文件名为*.tar.gz。
-f 指定备份文件。
-v 显示命令执行过程。
格式:useradd 用户名
功能:创建新用户,该命令只能由 root 用户使用
格式:passwd 用户名
功能:设置或修改指定用户的口令。
格式:chown [选项]
功能:将文件或目录的拥有者改为指定的用户或组,用户可以是用户名或者 用户 ID,组可以是组名或者组 ID,文件是以空格分开的要改变权限的文件 列表支持通配符。选项“-R”表示对目前目录下的所有文件与子目录进行相同的拥有者变更。
格式:chmod [-R] 模式 文件或目录
功能:修改文件或目录的访问权限。选项“-R”表示递归设置指定目录下的所 有文件和目录的权限。
模式为文件或目录的权限表示,有三种表示方法。
用 3 个数字表示文件或目录的权限,第 1 个数字表示所有者的权限,第 2个 数字表示与所有者同组用户的权限,第 3 个数字表示其他用户的权限。每类 用户都有 3 类权限:读、写、执行,对应的数字分别是 4、2、1。一个用户 的权限数字表示为三类权限的数字之和,如一个用户对 A 文件拥有读写权 限,则这个用户的权限数字为 6(4+2=6)。
用字符 u 表示所有者,用字符 g 表示与所有者同组用户,用字符 o 表示其他 用户。用字符 r、w、x 分别表示读、写、执行权限。用等号“=”来给用户赋 权限。
用字符 u 表示所有者,用字符 g 表示与所有者同组用户,用字符 o 表示其他 用户。用字符 r、w、x 分别表示读、写、执行权限。用加号“+”来给用户加 权限,加号“-”来给用户减权限。
格式:su [-] 用户名
功能:将当前操作员的身份切换到指定用户。如果使用选项“-”,则用户切换 后使用新用户的环境变量,否则环境变量不变。
格式:vi [文件名]
功能:vi 是 Linux 的常用文本编辑器,vim 是从 vi 发展出来的一个文本编辑器, 其在代码补全、编译等方便的功能特别丰富,在程序员中被广泛使用。
[root@localhost ~]# cd test
[root@localhost test]# vi profile
格式:clear
功能:清除屏幕。实质上只是让终端显示页向后翻了一页,如果向上滚动屏 幕还可以看到之前的操作信息。
[root@localhost test]# clear
格式:hostname [选项]
功能:用于显示和设置系统的主机名称。在使用 hostname 命令设置主机名 后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机 名。如果需要永久修改主机名,需要同时修改/etc/hostname 的相关内容。
常用选项: -a 显示主机别名,-i 显示主机的 ip 地址。
格式 1:hostnamectl
功能:显示当前主机的名称和系统版本。
格式 2:hostnamectl set-hostname <host-name>
功能:永久设置当前主机的名称。
CentOS 7 已不使用 ifconfig 命令,其功能可通过 ip 命令代替。
格式 1:ip link <命令选项> dev <设备名>
功能:对网络设备(网卡)进行操作,选项 add、delete、show、set 分别对应增加、删除、查看和设置网络设备。
格式 2:ip address <命令选项> dev <设备名>
功能:对网卡的网络协议地址(IPv4/IPv6)进行操作,选项 add、change、 del、show 分别对应增加、修改、删除、查看 IP 地址。
格式:systemctl <命令选项> service_name.service
功能:管理系统中的服务,“.service”表示管理的服务均包含了一个 以 .service 结尾的文件,存放于 /lib/systemd/目录中,可以省略。命令选项 有 start、restart、reload、stop、status,分别对应服务的启动、重启、重 新加载、停止和显示状态。另外选项 enable 表示开机时启动,disable 表示撤销开机启动。
格式: reboot
功能:用于重新启动计算机,但是机器重启必须要 root 用户才有权限。
[root@master ~]# reboot
格式:poweroff
功能:用来关闭计算机操作系统并且切断系统电源。如果确认系统中已经没 有用户存在且所有数据都已保存,需要立即关闭系统,可以使用 poweroff命令。
[root@master ~]# poweroff
格式:export [选项] [变量名]
功能:用于将 Shell 变量输出为环境变量,或者将 Shell 函数输出为环境变 量。一个变量创建时,它不会自动地为在它之后创建的 Shell进程所知,而 命令export 可以向后面的 Shell 传递变量的值。当一个Shell 脚本调用并执行 时,它不会自动得到父脚本(调用者)里定义的变量的访问权,除非这些变 量已经被显式地设置为可用。export 命令可以用于传递一个或多个变量的值到任何子脚本。
常用选项:
-f 代表[变量名称]中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行 环境中。
-p 列出所有的 Shell 赋予程序的环境变量。
格式:echo [字符串]
功能:用于在终端设备上输出字符串或变量提取后的值。一般使用在变量前 加上$符号的方式提取出变量的值,例如:$PATH然后再用 echo 命令予以出。
25.source 命令
格式:source [文件]
功能:用于重新执行刚修改的初始化文件,使之立即生效,而不必注销用户,重新登录。
也称为冷备用,是指在电气或计算机系统中的一种备用状态,其中备用设备(通常是主设备的备份)处于关闭或非运行状态。备用设备通常配置与主设备相同,但不会在正常情况下运行,以节省能源和维护成本。在主设备发生故障时,备用设备才会被启动并接管主设备的工作。
温备份是一种备份方法,它将备份系统安装配置成与当前使用的系统相同或相似的系统和网络运行环境。在这种环境下,应用系统的业务会定期进行数据备份。这种方法可以在系统运行时进行,因此也被称为在线备份或动态备份。在温备份过程中,新的数据会不断产生,用户可以随时访问数据库,并且在用户允许的情况下,新版本的备份才会替换旧版本。由于需要持续的数据保护,温备份需要大量的存储空间。
热备(Hot Standby)是指在主设备(活动设备)发生故障或停机时,备用设备(热备设备)能够立即接管工作并承担原设备的功能,确保服务的连续不间断。
热备是一种高可用性(High Available)的配置方式,在这种方式下,备用设备始终处于工作状态,可以实时监控主设备的状态,并在检测到主设备故障时立即开始工作。这种配置方式有助于减少因主设备故障而导致的服务中断时间,保证服务的高可用性和连续性。
Java中定义了3类8种基本数据类型
数值型- byte、 short、int、 long、float、 double程序员
字符型- charweb
布尔型-boolean
整型用于表示没有小数部分的数值,它容许是负数。整型的范围与运行Java代码的机器无关,这正是Java程序具备很强移植能力的缘由之一。与此相反,C和C++程序须要针对不一样的处理器选择最有效的整型。
带小数的数据在Java中称为浮点型。浮点型可分为float类型和double类型。
Java 语言中还容许使用转义字符 ‘\’ 来将其后的字符转变为其它的含义。
经常使用的转义字符及其含义和Unicode值如表所示。
boolean类型有两个常量值,true和false,在内存中占一位(不是一个字节),不可使用 0 或非 0 的整数替代 true 和 false ,这点和C语言不一样。 boolean 类型用来判断逻辑条件,通常用于程序流程控制 。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。