基于Hadoop的ArcGIS大数据分析初步探讨
分享
作者:张赛 发布时间: 2017-2-21
目录
1.1 准备阶段
该Hadoop集群基于Centos 7.2.1511操作系统,采用Hadoop 2.7.3和JDK1.7.0_75构建而成。集群中包含1个Master节点(机器名:master;IP:192.168.107.138)和1个Slave节点(机器名:slave;IP:192.168.107.139)。
1.1.1 组和用户的创建
在master节点上创建组esrichina和账户hadoop:
1.1.2 IP和机器名映射
分别对master和slave两个节点编辑/etc/hosts文件,添加ip和机器名的映射关系。
(1)修改/etc/ssh/sshd_config,取消如下两行的注释 。
(4)把公钥文件复制到要访问的机器(master和slave)的hadoop用户目录下的.ssh目录中。
(1)解压jdk
(2)编辑/etc/profile,添加jdk环境变量。
(4)运行 java -version 查看java配置是否生效。
1.3 Hadoop的安装和配置
(1)下载和解压Hadoop,设置hadoop用户对文件夹hadoop-2.7.3的所有权。
(2)修改hadoop用户的环境变量文件.bash_profile,将Hadoop可执行文件的位置添加到PATH变量中。
1) 配置 hadoop-env.sh。如果$JAVA_HOME变量设置正确,也可不修改。
1.4.1 Hadoop的启动
1.4.2 Hadoop的验证
2 Hadoop数据集准备
2.1 创建文件目录
文章来源:
https://github.com/serverteamCN/TechnicalArticles/blob/master/BigData/基于Hadoop数据的ArcGIS大数据分析初步探讨.md
目录
1 Hadoop的安装和集群配置
1.1 准备阶段
1.1.1 组和用户的创建
1.1.2 IP和机器名映射
1.1.3 配置SSH免密码登录
1.2 JDK的安装和配置(可选)
1.3 Hadoop的安装和配置
1.4 Hadoop的启动和验证
1.4.1 Hadoop的启动
1.4.2 Hadoop的验证
2 Hadoop数据集准备
2.1 创建件目录
2.2 上传数据
2.3 查看数据
3 基于Hadoop数据的分析
1 Hadoop的安装和集群配置1.1 准备阶段
该Hadoop集群基于Centos 7.2.1511操作系统,采用Hadoop 2.7.3和JDK1.7.0_75构建而成。集群中包含1个Master节点(机器名:master;IP:192.168.107.138)和1个Slave节点(机器名:slave;IP:192.168.107.139)。
1.1.1 组和用户的创建
在master节点上创建组esrichina和账户hadoop:
[root@master ~]$ groupadd esrichina
[root@master ~]$ useradd -g esrichina -m hadoop
[root@master ~]$ passwd hadoop
在slave节点上执行相同操作,创建组esrichina和账户hadoop。1.1.2 IP和机器名映射
分别对master和slave两个节点编辑/etc/hosts文件,添加ip和机器名的映射关系。
192.168.107.138 master.esrichina.com master
192.168.107.139 slave.esrichina.com slave
1.1.3 配置SSH免密码登录(1)修改/etc/ssh/sshd_config,取消如下两行的注释 。
RSAAuthentication yes
PubkeyAuthentication yes
(2)输入命令ssh-keygen -t rsa生成key,不需输入密码直至结束。[root@master ~]$ su - hadoop
[hadoop@master ~]$ ssh-keygen -t rsa
(3)对slave节点执行步骤1和步骤2的操作。(4)把公钥文件复制到要访问的机器(master和slave)的hadoop用户目录下的.ssh目录中。
[hadoop@master ~]$ scp ~/.ssh/id_rsa.pub hadoop@master:/home/hadoop/.ssh/authorized_keys
[hadoop@master ~]$ scp ~/.ssh/id_rsa.pub hadoop@slave:/home/hadoop/.ssh/authorized_keys
(5)测试由master节点免密码登录slave是否生效。 [hadoop@master ~]$ ssh hadoop@slave
1.2 JDK的安装和配置(可选)(1)解压jdk
(2)编辑/etc/profile,添加jdk环境变量。
# set the environments for jdk
JAVA_HOME=/home/jdk1.7.0_75
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
(3)运行 source 命令使配置的环境变量生效。[root@master ~]$ source /etc/profile
(4)运行 java -version 查看java配置是否生效。
1.3 Hadoop的安装和配置
(1)下载和解压Hadoop,设置hadoop用户对文件夹hadoop-2.7.3的所有权。
(2)修改hadoop用户的环境变量文件.bash_profile,将Hadoop可执行文件的位置添加到PATH变量中。
# Set the environments for hadoop
HADOOP_HOME=/home/hadoop/hadoop-2.7.3
PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_HOME PATH
(3)运行 source 命令使hadoop用户环境变量设置生效 。[hadoop@master ~]$ source .bash_profile
(4)创建Hadoop的tmp、data和name文件夹。[hadoop@master ~]$ mkdir tmp hdfs hdfs/data hdfs/name
(5)Hadoop的配置,涉及【Hadoop安装位置】/etc/hadoop下的hadoop-env.sh、yarn-env.sh、slaves、core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml共7个文件。1) 配置 hadoop-env.sh。如果$JAVA_HOME变量设置正确,也可不修改。
# The java implementation to use.
export JAVA_HOME=/home/jdk1.7.0_75
2) 配置 yarn-env.sh。 # some Java parameters
# export JAVA_HOME=/home/y/libexec/jdk1.6.0/
export JAVA_HOME=/home/jdk1.7.0_75
3) 配置slaves文件,用于存储所有slave节点的机器名。 slave
4) 配置core-site.xml。 <!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop/tmp</value>
</property>
</configuration>
5) 配置hdfs-site.xml。 <!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
6) 由mapred-site.xml.template复制获得mapred-site.xml,并进行配置。 <!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
7) 配置yarn-site.xml。 <configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>
(6)复制Hadoop到slave节点[hadoop@master ~]$ scp -r hadoop-2.7.3 hadoop@slave:/home/hadoop/
1.4 Hadoop的启动和验证1.4.1 Hadoop的启动
- 格式化 namenode 。
如果看到successfully formatted和Exiting with status 0的提示,即说明格式化完毕。[hadoop@master ~]$ hdfs namenode -format
- 启动NameNode和DataNode守护进程 。
[hadoop@master ~]$ start dfs.sh
- 启动ResourceManager和NodeManager守护进程 。
[hadoop@master ~]$ start yarn.sh
1.4.2 Hadoop的验证
- 运行 jps 查看master和slave节点上启动的进程 。
在master节点上存在4个进程,ResourceManager、NameNode、Jps和SecondaryNameNode;在slave节点上存在3个进程,NodeManager、DataNode和Jps。[hadoop@master ~]$ jps
- 查看集群状态 。
Live datanodes (1) 说明集群成功建立。[hadoop@master ~]$ hdfs dfsadmin -report
2 Hadoop数据集准备
2.1 创建文件目录
[hadoop@master data]$ hadoop fs -mkdir -p /usr/hadoop/greenDec24
2.2 上传数据 [hadoop@master data]$ hadoop fs -put /home/greenDec24.csv /usr/hadoop/greenDec24
2.3 查看数据 [hadoop@master data]$ hadoop fs -ls /usr/hadoop/greenDec24
3 基于Hadoop数据的分析- 登录 ArcGIS for Server Manager,点击 Site -> Data Stores。
- 在Data Stores设置页面上,点击 Register 旁边的 Big Data File Share,设置 Type 为 HDFS,输入 Name 和 Path,点击 Create。
- 点击 编辑 图标,在打开的 Big Data File Share 界面上选择待分析的数据集,点击 保存。
- 登录Portal for ArcGIS,进入 Map 页,点击 Analysis -> GeoAnalytics Tools -> Summarize Data -> Aggregate Points,浏览至注册的数据集,点击 ADD LAYER。
- 输入所需参数,点击 RUN ANALYSIS 开始分析。
- 得到分析结果。
文章来源:
https://github.com/serverteamCN/TechnicalArticles/blob/master/BigData/基于Hadoop数据的ArcGIS大数据分析初步探讨.md
2 个评论
发起人
推荐内容
- ArcGIS Enterprise11基础部署_以Redhat8.6上单机安装为例
- ArcGIS Enterprise11基础部署_以Windows server 2016Datacenter上单机安装为例
- ArcGIS Pro 2.4向独立server发布服务步骤
- 远程连接关系型Datastore10.6.1以及Portal内置pg库
- ArcGIS Pro发布高程图层到ArcGIS Enterprise/ArcGIS Online的工作流(译)
- Linux上安装ArcGIS Enterprise超详细教程——以Redhat7.2上安装ArcGIS Enterprise 10.5为例
- ArcGIS主产品线产品生命周期线
- ArcGIS for Server 10.x 许可授权手册
- Portal for ArcGIS 10.X许可授权手册 (Windows版)
- SDE空间索引的内部运行机制2
相关问题
- 如何优雅的使用ArcGIS知乎?
- 建设ArcGIS知乎平台的目和意义?
- ArcGIS知乎社区改进意见征集
- 【抽奖结果已出】ArcGIS知乎社区活动 之 你不知道的地理空间革命【转发分享有奖】【附奖品寄送照片】
- 苹果系统下可以使用arcgis 吗?
- arcgis版本兼容性
- 请问ArcGIS适合在局域网内用javaweb做二次开发吗?
- ArcGIS 知乎社区活动 之 2018拒绝boring,来,在线答题赢kindle【结果已出,速来领奖】
- ArcGIS 知乎社区活动 之 字幕组加鸡腿暨KBP字幕组招新【获奖名单公布与优秀作品展示】
- 请问大神们,怎么用ArcGIS做城镇间经济联系强度的图?
- 在Visual studio 2015 中使用 Arcgis API for JavaScript v3.16 如何实现代码智能提示?