今天,我们宣布正式发布
Windows Azure HDInsight 服务。HDInsight 是 Microsoft 提供的基于 Hadoop 的服务,为云提供 100% 的 Apache Hadoop 解决方案。
HDInsight 具有以下优势:
· 通过熟悉的工具洞察:通过与 Microsoft BI 工具(如 PowerPivot、Power View)进行深度集成,HDInsight 使您可以利用 Hadoop 轻松找到洞察数据信息。实现 HDInsight 等多个源的数据与 Power Query 的无缝结合。在 Excel 2013 中,使用全新的 3D 地图工具 Power Map 轻松将您的数据显示在地图上。
· 灵活性:HDInsight 可提供灵活性,以满足组织不断变化的需求。丰富的 Powershell 脚本将 Hadoop 群集的部署和配置时间由数小时甚至数天减少到几分钟。如果您需要更大的群集,仅需删除您的群集并创建一个更大的群集即可,这一过程只需几分钟时间,而且不会丢失任何数据。
· 企业级 Hadoop:HDInsight 具有企业级的安全性和可管理性。得益于专用 Secure Node,HDInsight 有助于更好地保护您的 Hadoop 群集。此外,我们还通过 PowerShell 脚本的扩展支持简化了 Hadoop 群集的管理。
· 丰富的开发人员体验:HDInsight 提供强大的编程功能及多个语言选项,包括 .NET、Java 以及其他语言。.NET 开发人员可将 LINQ 的语言集成查询的全部功能运用到 Hive 中。
HDInsight 入门
通过单击新建按钮并从 Data Services 菜单中选择 HDInsight,可从 Windows Azure 管理门户创建 HDInsight 群集。要创建 HDInsight 群集,请指定群集名称、群集大小(即数据节点数)和登录密码。
群集必须至少具有一个与其关联的存储帐户,以作为群集的永久存储机制,并且创建群集的区域始终与选择的存储帐户相同。正式发布时,存储帐户必须位于美国西部、美国东部或北欧才能与 HDInsight 群集相关联。可通过自定义创建选项将其他存储帐户与群集关联起来。
部署和配置群集将需要几分钟时间,准备就绪后您将看到一个开始屏幕,其中提供有关其他帮助内容的链接以及使用 HDInsight 运行第一个 Hadoop 作业的一些示例代码。
如果您在群集的 HDInsight 页上选择仪表板选项卡,您将看到以下屏幕,屏幕上提供了有关群集当前状态的一些基本信息,包括使用的内核数、作业历史记录以及链接到的存储帐户。
提交第一个 Map Reduce 作业
在提交第一个作业之前,必须先准备好开发环境以使用 HDInsight PowerShell cmdlet。PowerShell cmdlet 需要安装和配置以下两个主要组件:Windows Azure Powershell 和 HDInsight PowerShell 工具。按照开始屏幕步骤 1 中的链接设置您的环境。
开始页面上的屏幕显示了用于提交 Hive 或 MapReduce 作业的命令示例。现在,我们首先提交 MapReduce 作业。
使用这些命令来运行示例,以创建作业定义。作业定义包含有关作业的所有信息,例如要使用的映射程序和化简程序、用作输入的数据以及存储输出的位置。在此示例中,我们将使用群集中包含的示例 MapReduce 程序和示例文件。我们将在示例目录中创建一个输出目录来存储结果。
$jarFile= "/example/jars/hadoop-examples.jar"
$className= "wordcount"
$statusDirectory= "/samples/wordcount/status"
$outputDirectory= "/samples/wordcount/output"
$inputDirectory= "/example/data/gutenberg"
$wordCount= New-AzureHDInsightMapReduceJobDefinition -JarFile $jarFile -ClassName
$className-Arguments $inputDirectory, $outputDirectory -StatusFolder$statusDirectory
运行这些命令以获取订阅信息并开始执行 MapReduce 程序。MapReduce 作业通常要运行较长时间,因此示例中显示了如何使用异步命令开始执行作业。
$subscriptionId= (Get-AzureSubscription -Current).SubscriptionId
$wordCountJob= $wordCount | Start-AzureHDInsightJob -Cluster HadoopIsAwesome -
Subscription$subscriptionId | Wait-AzureHDInsightJob -Subscription $subscriptionId
最后,运行此命令以检索执行结果并在 PowerShell 命令行中显示这些结果。
Get-AzureHDInsightJobOutput-Subscription (Get-AzureSubscription -Current).SubscriptionId -
Clusterbc-newhdstorage -JobId $wordCountJob.JobId –StandardError
MapReduce 作业的结果是有关作业执行的信息,如下所示。
作业输出位于存储帐户的“/samples/wordcount/output”目录中。在 Windows Azure 门户中打开存储查看器并导航到该文件,以下载并查看输出文件。
提交第一个 Hive 作业
开始页面上的屏幕显示了用于连接到您的群集并提交 Hive 作业的命令示例。单击 Job type 部分的 Hive 按钮查看示例。
现在通过在 PowerShell 中执行以下命令来运行此示例,以连接到您的群集。
Use-AzureHDInsightClusterHadoopIsAwesome (Get-AzureSubscription -Current).SubscriptionID
接下来运行以下命令,将 HiveQL 语句提交到群集。该语句使用创建时在群集上默认设置的示例 Hive 表。
Invoke-Hive"select country, state, count(*) as records from hivesampletable group bycountry, state order by records desc limit 5"
该查询是一个相当简单的 select-groupby 操作,完成后将在 PowerShell 命令行中显示结果。
了解更多
在本博客中,我们向您展示了启动和运行 HDInsight 群集并对数据进行分析有多么简单。您还可以进一步了解有关 HDInsight 的其他信息,如上传自己的数据集、运行复杂的作业以及对结果进行分析。
有关使用 HDInsight 的更多详细信息,请访问 HDInsight 文档页或使用以下链接直接访问帮助文章。
· 使用 Power Query 将 Excel 连接到 Windows Azure HDInsight
有关定价的详细信息,请访问 HDInsight 定价详细信息页。
本文翻译自: