前言

Hadoop从存储上来说,是相似于冗余磁盘阵列(RAID)的存储方式。将数据分散存储并提供以提供吞吐量,它的存储系统就是HDFS(Hadoop Distuibute Fils System)。从计算上来说,它通过MapReduce模型,将大数据的计算分发到多台计算机上完毕,再将结果合并,降低计算的时间。

Hadoop适合于:

1、超大数据的计算。

2、一次写入、多次读取的模式;

3、能够跑在普通的硬件上。

Hadoop不适合:

1、低延迟的数据訪问。它是为高数据吞吐量应用优化的;

2、大量的小文件

Hadoopclient须要和namenode进行交互,而namenode中存放的是datanode的文件属性,且都是在内存中,假设小文件过多。namenode是存放不了的;

3、多用户写入,随意改动文件。

Hadoop适合于一次计算,多次读取的场景,如搜索引擎,仅仅支持随机读取不支持随机写入,如Hadoop和Lucene的集成就不能够直接集成,由于Lucene支持随机写入。

本文将从使用的角度上谈了怎样搭建Hadoop、怎样配置Hadoop、怎样验证Hadoop及在Hadoop上面运行计算。以及可能会遇到些什么样的问题。

一、Hadoop环境搭建

由于Hadoop须要在Linux运行。而且Hadoop是基于Java的,在继续进行以下的步骤之前,请确认你已经准备好Linux操作系统以及Java 6或以上版本号,而且已经正确的设置了JAVA_HOME。

1、下载Hadoop

搭建Hadpp的版本号为1.2.1 下载地址为:)、确定系统是否安装了ssh和ssh-keygey

能够通过which命令来确认

which ssh

which ssh-keygen

假设出现

/usr/bin/which: no ssh in (/usr/.....)则表示系统里面没有安装SSH服务。能够通过www.openssh.com下载安装

(2)、公布公钥证书

运行例如以下命令:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

在~/.ssh/ 文件夹会生成id_rsa和id_rsa.pub两个文件。将id_rsa.pub复制一份在~/.ssh/文件夹下,并重命名为authorized_keys,假设是单机搭建伪分布式。此时ssh的准备工作已经完毕了,假设使用全分布式环境,那么须要将authorized_keys(或authorized_keys中的内容追加到须要无password登陆的server的~/.ssh/authorized_keys文件里)及id_rsa(或id_rsa中的内容追加到须要无password登陆的server的~/.ssh/id_rsa文件里)两个文件复制到各台分布式slave机器的“~/.ssh文件夹中”中,这样随意两台机器之间互相通过ssh訪问。都不须要输入password了。假设仅仅是复制到authorized_keys到slave机器中,就仅仅能够实现主到从的不输password訪问。

注:假设须要远程登陆的server上还没有.ssh文件夹。那么就在登陆用户的文件夹下新建.ssh文件夹,权限至少设置成744。假设.ssh文件夹下没有authorized_keys文件。也新建该文件。并将其权限设置为644。

(3)測试登陆验证

在本例中。採用的是在单机中搭建伪分布式系统,通过例如以下ssh命令尝试登陆:

ssh localhost

ssh 127.0.0.1

假设不再提示输入password,直接登陆成功。那么SSH登陆就设置成功了。

Hadoop入门进阶步步高(一)-环境准备的更多相关文章

  1. Hadoop入门进阶步步高(三)-配置Hadoop

    三.配置Hadoop 1.设置$HADOOP_HOME/conf/hadoop-env.sh 这个文件里设置的是Hadoop运行时须要的环境变量,在1.2.1版中共同拥有19个环境变量.例如以下:   ...

  2. Hadoop入门进阶步步高(六)-Hadoop1.x与Hadoop2的差别

    六.Hadoop1.x与Hadoop2的差别 1.变更介绍 Hadoop2相比較于Hadoop1.x来说,HDFS的架构与MapReduce的都有较大的变化,且速度上和可用性上都有了非常大的提高,Ha ...

  3. Hadoop入门进阶步步高(五)-搭建Hadoop集群

    五.搭建Hadoop集群 上面的步骤,确认了单机能够运行Hadoop的伪分布运行,真正的分布式运行无非也就是多几台slave机器而已,配置方面的有一点点差别,配置起来就很easy了. 1.准备三台se ...

  4. Hadoop入门进阶步步高(二)-文件夹介绍

    二.Hadoop文件夹结构 这里重点介绍几个文件夹bin.conf及lib文件夹. 1.$HADOOP_HOME/bin文件夹 文件名 说明 hadoop 用于运行hadoop脚本命令,被hadoop ...

  5. Hadoop入门进阶课程3--Hadoop2.X64位环境搭建

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  6. Hadoop入门进阶课程13--Chukwa介绍与安装部署

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  7. Hadoop入门进阶课程12--Flume介绍、安装与应用案例

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  8. Hadoop入门进阶课程11--Sqoop介绍、安装与操作

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  9. Hadoop入门进阶课程10--HBase介绍、安装与应用案例

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

随机推荐

  1. PCB MVC启动顺序与各层之间数据传递对象关系

    准备着手基于MVC模式写一套Web端流程指示查看,先着手开发WebAPI打通数据接口,后续可扩展手机端 这里将MVC基本关系整理如下: 一.MVC启动顺序 二.MVC各层之间数据传递对象关系

  2. Hardwood Species(map)

    http://poj.org/problem?id=2418 题意:给定一系列字符串,要求按字典序升序输出每个串,并输出每个串出现的百分比. 用map做的,交c++A了,G++ WA..so sad. ...

  3. Android框架式编程之Android Architecture Components

    1. 当前Android开发面临的问题 Android开发不同于传统的桌面程序开发,桌面程序一般都有唯一的快捷方式入口,并且常作为单进程存在:而一个典型的Android应用通常由多个应用组件构成,包括 ...

  4. java 微信api开发

    最近使用了一个很好的微信api框架,比较好使. 源码地址:https://github.com/chanjarster/weixin-java-tools/wiki 微信公众平台:微信公众平台开发文档 ...

  5. Vue初级-样式

    整个网页不仅有标签还有css进行渲染,所以,现在讲讲在vue里面加入你想加的css. 在不用vue的时候,有一种内联方式加入css(大概是<div style="..."&g ...

  6. href标签中target的几个属性值

    没有指定<a>的target属性值时,默认是"_blank,可以参考以下代码的设置来控制<a href="#" target="_blank& ...

  7. Excel 出现后三位为000的情况

    1.先将要填充的excel列全部转换成文本,然后再把列贴近来. 2.数据少的话,选择那个excel,在前面加上'号

  8. easyui combobox的增加全选解决方案

      1.解决方案背景: 项目中偶然需要用到easyui的combobox的组件,但是本组件自己没有包含全选的api事件.搜索了一些解决方案,但是不是很符合,后来发现是因为所使用的版本不一致所导致的.项 ...

  9. JAVA可能问的几个面试题问题及问题的标准答案

    问题一:你希望工作环境是怎样的? 标准答案:我对环境没有苛求,我会努力适应环境的. 注:此问题是在测试你的求职心态,是以自己为中心还是以工作为中心. 问题二:你觉得自己有哪些缺点? 标准答案:说一些对 ...

  10. Type class-Typeclass-泛型基础上的二次抽象---随意多态

    对泛型的类型添加约束,从而使泛型类型的变量具有某种通用操作. 再使用这些操作,参与到其它操作中. In computer science, a type class is a type system  ...