
2.2 JDK、Python和Scala
操作系统的内核大多是用C语言写的,因为C是一种跨平台的便于编译的编程语言。早期计算机的硬件设备只能通过计算机的二进制机器语言理解,针对不同的硬件处理器,由和处理器对应的汇编语言把简单的指令与机器指令对应起来。但是,汇编语言不具有跨平台性。后来出现了在汇编语言基础上形成的面向过程的跨平台的编程语言——C语言。
为什么C语言是面向过程的编程语言呢?因为C语言的编程结构需要明确的顺序。比如经典的把大象装进冰箱示例,就需要明确的三个步骤:第一步,打开冰箱;第二步,把大象装进去;第三步,关上冰箱。而在实际的业务开发场景中,我们可能更需要将冰箱作为一个对象去定义一些动作(如开门、关门);装大象被称为方法,在方法中可以定义一些属性,比如冰箱的长度、容积等。然后就可以按照我们现实生活中的逻辑来写对应的程序了。第一步:我们告诉冰箱把门打开,可以写为冰箱.开门()。第二步:让冰箱把大象装进去,可以写为冰箱.装进(大象)。第三步:让冰箱把门关上,可以写为冰箱.关门()。这种编写方法是针对冰箱这个对象的操作,这是我们人类最容易理解的高级语言,其被称为面向对象的编程语言。面向对象的高级编程语言有很多,比如,Java、Python、Scala都属于面向对象的编程语言。
在此,大数据的组件都是由基于面向对象的高级编程语言开发的,比如Hadoop的源码是基于Java开发的,基于内存计算的Spark大数据组件是基于Scala开发的。所以,我们在安装大数据组件前,需要先安装好这些组件所依赖的开发语言。
JDK的全称是Java Development Kit(Java开发工具包)。JDK是整个Java的核心,包括Java运行环境JRE(Java Runtime Environment)、一组Java工具(javac、java、jdb等)和Java基础类库(即Java API,包括rt.jar)。安装了JDK后,使用JDK的javac可以把我们用Java编写的高级程序转变为计算机识别的二进制语言,让计算机识别。之后使用JDK的Java命令让程序在内存中运行。
开发语言的安装比较简单,这里重点介绍其安装的主要步骤和相关注意点。
1.JDK的安装步骤
安装步骤如下。
1)确认JDK的安装环境、下载及安装。
确认操作系统环境:

在线下载命令:

查看当前文件夹(也可称作“目录”)下是否有JDK安装包(使用ll命令)。
添加执行权限命令:

安装命令:

2)编辑/etc/profile配置,把JDK加入系统环境变量。
命令:vim /etc/profile
打开文件后,在文件末尾追加以下内容:

输入:wq!命令,强制保存并退出。
让profile立即生效:

3)确认JDK安装成功。
具体如下所示:
a)查看JDK是否安装成功命令:

b)查看JDK是否加入系统环境变量命令:

c)查看是否显示出刚添加进来的/usr/java/jdk1.8.0_131目录。
2.Python的安装步骤
Python 是大数据系统运维及挖掘分析中使用频率非常高的面向对象编程语言。在安装Python后,基于Python的自动化运维脚本可以跨平台使用,Python的很多运维监控模块也可以直接应用到大数据系统的运维监控中。对于Spark组件来说,其可以很好地与Spark自带的PySpark接口进行整合,从而大大发挥Spark计算框架的优势,以实现更多用Python编写的自定义的大数据挖掘分析程序。本书选用的Python版本为3.6。具体步骤如下。
1)首先,从官网下载Python 3的相关版本。使用wget命令下载Python-3.6.0.tgz。
2)然后,解压缩文件:

3)创建安装文件的路径:

4)编译:

5)安装:

6)创建新版本的软连接。
修改旧版本:

创建新的软连接:

检查Python的版本:

至此,软连接创建成功。
7)配置成功后,pip3用不了。这时,需要启用pip3来进行相关模块的按需安装。所以,在此要进一步配置:

3.Scala的安装步骤
Scala是比较简洁的面向对象开发语言,也是Spark软件安装所必须依赖的编程语言。本书选用的Scala版本为2.11。
具体步骤如下。
1)在线下载 scala-2.11.12.tgz,然后解压缩:

2)编辑/etc/profile配置,把Scala加入系统环境变量。
命令:vim /etc/profile
打开文件后,在文件末尾追加以下内容:

输入:wq!命令,强制保存并退出。
让profile立即生效:

执行配置文件:

3)验证Scala:

以上3种高级编程语言——Java、Python、Scala是大数据组件安装中普遍依赖的3种语言,所以在安装对应的组件前需要在操作系统环境中先安装这几种语言并且添加到系统环境变量中,以便后续的大数据组件在使用过程中可以直接调用。