(二)hadoop学习:集群环境搭建


一、硬件环境
1、windows 7 专业 64位
2、VMware Workstation ACE 版 6.0.2
3、Redhat Linux 5
4、Hadoop-1.2.1

Windows

VM

虚拟机器Linux

IP

作用

Window 7 

64位

VMware Workstation 

Redhat1

192.168.24.250

NameNode、master、jobTracker

Redhat2

192.168.24.249

DataNode、slave、taskTracker

Redhat3

192.168.24.248

DataNode、slave、taskTracker



二、安装 VMware Workstation 和Redhat Linux 5
1、VMware Workstation和Redhat Linux 5的安装,网上到处都是,我也是在网上随便找的,你可以找写得更详细准确的,这里不再赘述,可参考:

注:当你在虚拟机上安装完一个Linux后,不要重复安装步骤,使用虚拟机带的克隆功能,可以很容易复制出多台一模一样的Linux。
可参考:

完成这一步骤后的效果
 

三、安装配置Hadoop
1、安装hadoop前先配置Linux
(1)更改三台机器的网络连接方式

选中要更改的虚拟机,右击-设置(Settings)
 
 
(2)以root用户登录Linux, 设置 IP 地址和默认网关(三台机器都要设置)

输入vi /etc/sysconfig/network-scripts/ifcfg-eth0 ,(vi的使用不再赘述,不懂自己网上查)修改该文件内容为:

DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.24.250
GATEWAY=192.168.27.254
NETMASK=255.255.255.0
ONBOOT=yes

IP地址和默认网关根据自己需要进行设置

(3)配置虚拟机的主机名(三台机器都要设置)

输入vi /etc/sysconfig/network

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=redhat1

(4)配置主机名与ip地址的对应关系(三台机器都要设置)

输入 vi /etc/hosts

127.0.0.1 localhost
192.168.24.250 redhat1
192.168.24.249 redhat2
192.168.24.248 redhat3

这是标准内容。去掉多余的,否则可能出现 Hadoop master 查看 live nodes 0

(5)关闭防火墙 (三台机器都要设置)

输入 chkconfig iptables off    开机不启动防火墙
输入 service iptables  stop 关闭当前防火墙服务

当然也可以设置防火墙对hadoop放行,为了简单起见,我这里就直接关闭防火墙了。

(6)测试网络是否联通
设置完成之后,在每台虚拟机之间执行ping命令,保证虚拟机之间网络没有问题
如:ping 192.168.24.249

2、建立linux之间ssh无密码登录
这个网上也到处都是,参考:

到此为止,铺垫工作算是做完了。

3、安装和配置JDK (三台机器都要安装)
这个参考我的文章

4、安装hadoop (三台机器都要安装)
(1)到hadoop官网下载hadoop1.2.0
(2)使用ftp上传到linux,如果不懂,可以参考我的文章:
(3)解压安装
进入hadoop-1.2.0.tar.gz所在的目录
输入:
tar -zvxf hadoop-1.2.0.tar.gz

即安装完毕

5、配置Hadoop(三台机器都要设置)
(1)配置hadoop环境变量
和设置jdk环境变量一样

命令:vi /etc/profile
在文件最后输入:
export HADOOP_HOME=/usr/local/hadoop-1.2.0
export PATH=$PATH:$HADOOP_HOME/bin

执行命令source /etc/profile   使profile生效

(2)配置hadoop运行参数

更改hadoop安装路径下/conf/hadoop-env.sh的文件(三台机器都要设置)

第9行加入export JAVA_HOME=/usr/java/jdk1.7.0_21

更改hadoop安装路径/conf/masters和slaves两个文件。(只配置192.168.24.250虚拟机)
masters中输入:192.168.24.250
slaves中输入:
192.168.24.249
192.168.24.248

配置hadoop安装路径/conf/core-site.xml、hdfs-site.xml和mapred-site.xml三个文件。(三台机器都要设置)

core-site.xml:

<configuration>
        <property>
                <name>fs.default.name</name>
                <value>hdfs://192.168.24.250:9000</value>
        </property>
         <property>
                <name>hadoop.tmp.dir</name>
                <value>/tmp</value>
        </property>
</configuration>

hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
    </property>
</configuration>

mapred-site.xml:

<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>192.168.24.250:9001</value>
    </property>
</configuration>

(3)格式化文件系统
命令:Hadoop  namenode  –format

至此hadoop已经安装配置完毕了。

四、测试

1、启动hadoop
在192.168.24.250机器上执行如下指令,启动hadoop安装目录bin下:
Start-all.sh   
对于hadoop来说,启动所有进程是鼻血的,但是如果有必要,你依然可以只启动HDFS(start-dfs)或MapReduce(start-mapred.sh)

Web浏览器监视HDFS文件系统状态和MAPREDUCE执行任务的情况。
HDFS文件系统
浏览器中输入: http://192.168.11.188:50070/
 
 
浏览器中输入: http://192.168.11.188:50030
 
 
 
 
2、运行hadoop自带的wordcount示例

依次执行命令:
echo “It is a dog”> input1
echo   "it is not a dog" > input2
hadoop fs -mkdir input
hadoop fs -copyFromLocal /root/input* input
hadoop jar /usr/local/hadoop-1.2.0/hadoop-examples-1.2.0.jar wordcount input output

可以查看运行状态 http://192.168.24.250:50030
 
 
查看运行结果
 
 
至此全部成功!





### 回答1: Flink 1.14的Table APISQL教程可以在Flink官方文档中找到,其中包括了Table APISQL的基础概念、语法、操作符、函数等内容,还有详细的示例代码实战案例,非常适合初学者学习入门。另外,Flink社区也有很多优秀的博客视频教程,可以帮助大家更深入地理解应用Table APISQL。 ### 回答2Flink是一个分布式计算引擎,是Apache Hadoop生态圈中用于处理流式数据的一种解决方案。Flink支持表格APISQL语言,使得用户可以更加简单地实现流处理任务。而在Flink 1.14中,TableAPISQL引擎则得到了进一步的增强。 TableAPISQL将无需掌握Java或Scala编程语言就可以操作表格数据。TableAPI API支持JavaScala,SQL则支持标准的SQL语言。如果你熟悉SQL语言,那么你很容易上手使用TableAPISQL引擎。 Flink TableAPISQL支持各种类型的表格操作,包括选择、过滤、分组、排序、连接等。此外,它们还支持窗口聚合操作。这使得用户在处理流式数据时可以更加简单易懂地进行复杂的操作。 在Flink 1.14中,TableAPISQL引擎还提供了一系列新功能,包括: 1. 时间特征支持——TableAPISQL中的数据时间戳可以通过时间特征进行定义控制。通过时间特征,用户可以定义数据的时间属性,例如事件时间或处理时间。 2. 详细的窗口管理——当窗口中的数据到期时,Flink 1.14会自动清除过期数据,避免数据量过大导致性能下降。 3. 支持更多的流数据源——在Flink 1.14中,TableAPISQL引擎可以直接从Kafka、Kinesis、Hive等数据源中读取数据。这可以让用户更加方便地读取数据,而无需编写额外的代码。 TableAPISQL引擎对于Flink用户来说是非常重要的工具,无需掌握Java或Scala编程语言即可操作表格数据。并且在Flink 1.14中,这两个工具得到了进一步的增强,包括更好的窗口管理更多的数据源支持。因此,学习TableAPISQL引擎对于想要使用Flink进行流处理的人来说是非常有益的。 ### 回答3: Flink 1.14 TableAPISQL是一个非常好用的数据处理工具,可帮助数据分析师快速进行数据查询、聚合处理。下面详细介绍一下Flink 1.14的TableAPISQL教程。 1. 如何配置Flink 1.14的TableAPISQL环境? 在进行Flink 1.14的TableAPISQL开发之前,需要先进行环境的配置。可以在官网下载Flink的安装包,解压后找到/bin目录下的start-cluster.sh脚本进行启动。启动之后,即可通过WebUI的页面查看Flink的运行状态。 2. TableAPI的基本操作 TableAPIFlink的一个高层次数据处理API,可以通过编写代码来进行数据的处理。TableAPI的基本操作有以下几个: (1) 创建Table,可以使用StreamTableEnvironment的fromDataStream或fromTableSource方法,将DataStream或TableSource转换成Table(2) Table的转换,可以使用多种转换操作,包括filter、select、orderBy、groupBy、join等。 (3)Table转化为DataStream,可以使用StreamTableEnvironment的toDataStream方法。 3. SQL的基本操作 SQLFlink提供的一种快速数据处理方式,用户只需要编写SQL语句即可完成数据处理。SQL的基本操作有以下几个: (1) 注册Table,可以使用StreamTableEnvironment的registerTable或registerTableSource方法,将TableTableSource注册到环境中。 (2) 执行SQL,可以使用StreamTableEnvironment的executeSql方法,执行SQL语句并返回结果。 (3) 将结果转换为DataStream,可以使用StreamTableEnvironment的toDataStream方法。 4. 如何优化Flink 1.14的TableAPISQL的执行效率? 在进行TableAPISQL开发时,为了保证其执行效率,需要注意以下几点: (1) 避免使用复杂的JOIN操作,可以使用BroadcastTableFunction等方式来避免JOIN操作。 (2) 注意Table的Schema定义,Schema的设计合理否直接影响SQL性能。 (3) 避免使用无限制的聚合操作,可以进行分批次聚合来避免。 总的来说,Flink 1.14的TableAPISQL是非常强大的数据处理工具,能够帮助开发者快速高效的进行数据处理。上述内容是入门级别的教程,如果想要更深入的了解,可以参考官方文档进行学习。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值