HDInsight cluster on Linux

登录 Azure portal (https://manage.windowsazure.com )

点击左下角的 NEW 按钮,然后点击 DATA SERVICES 按钮,点击 HDINSIGHT,选择 HADOOP ON LINUX,如下图所示。

输入集群名称,选择集群大小和账号,设定集群的密码和存储账号,下表是各个参数的含义和配置说明。

Name

Value

Cluster Name

Name of the cluster.

Cluster Size

Number of data nodes you want to deploy. The default value is 4. But the option to use 1 or 2 data nodes is also available from the drop-down. Any number of cluster nodes can be specified by using the Custom Create option. Pricing details on the billing rates for various cluster sizes are available. Click the ? symbol just above the drop-down box and follow the link on the pop-up.

Password

The password for the HTTP account (default user name: admin) and SSH account (default user name: hdiuser). Note that these are NOT the administrator accounts for the virtual machines on which the clusters are provisioned.

Storage Account

Select the Storage account you created from the drop-down box.
Once a Storage account is chosen, it cannot be changed. If the Storage account is removed, the cluster will no longer be available for use. The HDInsight cluster is co-located in the same datacenter as the Storage account.

点击 CREATE HDINSIGHT CLUSTER 即可创建运行于 Azure 的 Hadoop 集群。

上述过程快速创建一个运行Hadoop 的 Linux 集群,且默认 SSH 用户名称为 hdiuser,HTTP 账户默认名称为 admin。若要用自定义选项,例如使用 SSH 密钥进行身份验证创建群集或使用额外的存储空间,请参阅 Provision Hadoop Linux clusters in HDInsight using custom options ( https://azure.microsoft.com/en-us/documentation/articles/hdinsight-hadoop-provision-linux-clusters/ ) 。

Installing Spark

在 HDInsight 中点击创建的 Hadoop集群(在本例中集群名称为 Hadooponlinux ),进入 dashboard,如下图所示。

quick glance 中拷贝 Cluster Connection String的值,此为登录 Hadoop on Linux 配置控制台 Ambari的地址,在浏览器中粘贴 Cluster Connection String的值,此时出现登录用户名和密码的验证。此时的用户名为上一步中快速创建hadoop集群时默认HTTP用户名admin,密码为快速创建hadoop集群时设置的密码。

正确输入用户名和密码后,出现 Ambari的登录用户名和密码验证,此时输入用户名 admin 密码为hadoop即可进入Ambari的管理控制台。

下图展示了使用 Ambari 安装Spark的过程。

The following diagram shows the Spark installation process using Ambari.

  1. 选择 Ambari "Services" 选项卡。

在 Ambari "Actions" 下拉菜单中选择 "Add Service." 这将启动添加服务向导。

选择 "Spark",然后点击 "Next" 。

(For HDP 2.2.4, Ambari will install Spark version 1.2.1, not 1.2.0.2.2.)

  1. Ambari 将显示警告消息,确认集群运行的是 HDP 2.2.4 或更高版本,然后单击 "Proceed"。

Note

You can reconfirm component versions in Step 6 before finalizing the upgrade.

  1. 选择Spark 历史服务器节点,点击 Click "Next" 继续。

  1. 指定 Spark 的Slaves ,点击 "Next" 继续。

  2. 在客户化服务界面建议您使用默认值为您的初始配置,然后点击 "Next" 继续。
  3. Ambari 显示确认界面,点击 "Deploy" 继续。

Important

On the Review screen, make sure all HDP components are version 2.2.4 or later.

  1. Ambari 显示安装、启动和测试界面,其状态栏和消息则指示进度。

  2. 当Ambari安装完成,点击 "Complete" 完成 Spark 的整个安装过程。

Run Spark

通过 SSH 登录 Hadoop 的 Linux 集群,执行以下的Linux 指令下载文档,为后面的Spark程序运行使用。

wget http://en.wikipedia.org/wiki/Hortonworks

将数据拷贝至 Hadoop 集群的HDFS中,

hadoop fs -put ~/Hortonworks /user/guest/Hortonworks

在很多Spark的例子中采用Scala和Java的应用程序演示,本例中使用 PySpark 来演示基于Python语音的Spark使用方法。

pyspark

第一步使用 Spark Context 即 sc 创建RDD,代码如下:

myLines = sc.textFile('hdfs://sandbox.hortonworks.com/user/guest/Hortonworks')

现在我们实例化了RDD,下面我们对RDD做转化的操作。为此我们使用python lambda表达式做筛选。

myLines_filtered = myLines.filter( lambda x: len(x) > 0 )

请注意,以上的python语句不会引发任何RDD的执行操作,只有出现类型以下代码的count()行为才会引发真正的RDD运算。

myLines_filtered.count()

最终Spark Job运算的结果如下所示。

.

Data Science with Spark

对于数据科学家而言Spark是一种高度有效的数据处理工具。数据科学家经常类似Notebook ( 如 iPython http://ipython.org/notebook.html ) 的工具来快速创建原型并分享他们的工作。许多数据科学家喜好使用 R语言,可喜的是Spark与R的集成即 SparkR已成为 Spark 新兴的能力。Apache Zeppelin (https://zeppelin.incubator.apache.org/ ) 是一种新兴的工具,提供了基于 Spark 的 Notebook 功能,这里是Apache Zeppelin 提供的易用于 Spark的用户界面视图。

作者:雪松

Microsoft MVP -- Windows Platform Development,

Hortonworks Certified Apache Hadoop 2.0 Developer

Azure HDInsight 和 Spark 大数据实战(二)的更多相关文章

  1. Azure HDInsight 和 Spark 大数据实战(一)

    What is HDInsight? Microsoft Azure HDInsight 是基于 Hortonoworks Data Platform (HDP) 的 Hadoop 集群,包括Stor ...

  2. 《OD大数据实战》HDFS入门实例

    一.环境搭建 1.  下载安装配置 <OD大数据实战>Hadoop伪分布式环境搭建 2. Hadoop配置信息 1)${HADOOP_HOME}/libexec:存储hadoop的默认环境 ...

  3. 《OD大数据实战》驴妈妈旅游网大型离线数据电商分析平台

    一.环境搭建 1. <OD大数据实战>Hadoop伪分布式环境搭建 2. <OD大数据实战>Hive环境搭建 3. <OD大数据实战>Sqoop入门实例 4. &l ...

  4. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  5. SparkSQL大数据实战:揭开Join的神秘面纱

    本文来自 网易云社区 . Join操作是数据库和大数据计算中的高级特性,大多数场景都需要进行复杂的Join操作,本文从原理层面介绍了SparkSQL支持的常见Join算法及其适用场景. Join背景介 ...

  6. 教你如何成为Spark大数据高手?

    教你如何成为Spark大数据高手? Spark目前被越来越多的企业使用,和Hadoop一样,Spark也是以作业的形式向集群提交任务,那么如何成为Spark大数据高手?下面就来个深度教程. Spark ...

  7. 决战大数据之二:CentOS 7 最新JDK 8安装

    决战大数据之二:CentOS 7 最新JDK 8安装 [TOC] 修改hostname # hostnamectl set-hostname node1 --static # reboot now 重 ...

  8. 学习Hadoop+Spark大数据巨量分析与机器学习整合开发-windows利用虚拟机实现模拟多节点集群构建

    记录学习<Hadoop+Spark大数据巨量分析与机器学习整合开发>这本书. 第五章 Hadoop Multi Node Cluster windows利用虚拟机实现模拟多节点集群构建 5 ...

  9. 大数据实战-Spark实战技巧

    1.连接mysql --driver-class-path mysql-connector-java-5.1.21.jar 在数据库中,SET GLOBAL binlog_format=mixed; ...

随机推荐

  1. form表单提交数据

    js代码: // form 跳转 gotourl//跳转的页面 options json格式参数 function FromGoTo(gotourl, options) { var inputhtml ...

  2. 03-树1 树的同构 (C语言链表实现)

    #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h& ...

  3. 【夯实PHP基础系列】linux下yum安装PHP APC

    Alternative PHP Cache(可选PHP缓存),依赖于 PECL扩展库 用源码方式安装,直接yum就行了:首先要安装apc的依赖包:yum install php-pear php-de ...

  4. 如何寻找“真爱”型合伙人

          曾与朋友笑侃,现在找人结婚,跟合伙开公司差不多,各自条件一一对比,细细斟酌,最后双方达成一致,才得凑成一对冤家.谁说不是呢?两种关系都实为"伙伴",开公司重" ...

  5. ABP 初探 之User、Role、Permission数据库设计 (EntityFramework 继承的另一种使用方法)

    最近群里(134710707)的朋友都在讨论ABP源码,我把最近学习的内容记录下来,同时也分享给大家,希望正在研究ABP源码的朋友有一定帮助. 上篇介绍ABP的多语言,本篇主要介绍权限的数据库设计,用 ...

  6. 轻松掌握:JavaScript模板方法模式

    模板方法模式 假如我们有一些对象,各个对象之间有一些相同的行为,也有一些不同的行为,这时,我们就可以用模板方法模式来把相同的部分上移到它们的共同原型中(父类),而将不同的部分留给自己各自重新实现. 模 ...

  7. arcgis软件集合

    ArcGIS软件应有尽有,跨越各种不同的ArcGIS版本,包括ArcGIS10.3.ArcGIS10.2.2.ArcGIS10.1.ArcGIS10.0.ArcGIS9.3. 备注:更多的精彩内容请关 ...

  8. IOS开发基础知识--碎片10

    1:如何给表格单元列增加选择时的背影效果 if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCel ...

  9. React Native知识1-FlexBox 布局内容

    一:理论知识点 1:什么是FlexBox布局? 弹性盒模型(The Flexible Box Module),又叫Flexbox,意为“弹性布局”,旨在通过弹性的方式来对齐和分布容器中内容的空间,使其 ...

  10. 使用私有Pod Spec的类库--提高公司开发效率

    前言 找了这么长时间,再次开始去尝试Cocoapods了.前面已经写过一篇关于如何把自己的Github上的代码库添加Cocoapods支持.现在就让我们看一下如果搭建私有的Spec吧. 之所以构建私有 ...