探索 InfoSphere BigInsights 集群和样例应用程序

Web 控制台快速入门

如果您希望快速开始构建涉及 IBM® InfoSphere® BigInsights 的 “大数据” 项目,您需要熟悉它集成的 Web 控制台。通过此工具,可以分析集群的健康状况,导航分布式的文件系统,启动 IBM 提供的样例应用程序,监视作业和工作流状态,以及使用电子表格样式的工具分析数据。本文介绍 Web 控制台,重点介绍可帮助提高项目实施速度的重要功能。

Cynthia M. Saracco, 高级解决方案架构师, IBM

照片:Cynthia SaraccoCynthia M. Saracco 是 IBM 硅谷实验室的高级解决方案架构师,擅长新兴技术和数据库管理主题。她有 23 年软件行业从业经验,曾经撰写了三本书和 60 多篇技术文章,拥有七项专利。


developerWorks 专家作者

Priya Baliga, 软件工程师, IBM

Priya Baliga 的照片Priya Baliga 在 IBM 硅谷实验室担任研究大数据技术的顾问软件工程师和技术主管。她自 2004 年获得计算机科学专业的硕士学位后加入 IBM。她担任过各种数据库开发职位,包括数据库管理和安全方面的领导职位。她在信息安全和管理的多个方面拥有专利和著作。



Stephen A. Brodsky, 主管架构师, IBM

Stephen BrodskyStephen A. Brodsky 是 IBM 硅谷实验室中的 IBM 大数据计划的技术总监和杰出工程师。大数据是大规模信息处理的战略性集成,包括 Hadoop map-reduce、流、数据库、Web 服务器、索引、分析、ETL、建模以及结构化、半结构化和非结构化信息的可跟踪性。之前他领导了 Optim Data Studio 产品线和 pureQuery 的架构设计,是 DB2 pureXML、Rational Application Developer (RAD) 和 WebSphere 架构团队的成员。Brodsky 拥有电气和计算机工程专业的硕士和博士学位,以及应用数学、生物化学和细胞生物学专业的联合学士学位。他拥有超过 40 项专利申请。



2012 年 5 月 24 日

免费下载:IBM® InfoSphere BigInsights Basic Edition V1.3 试用版
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

关于 InfoSphere BigInsights

InfoSphere BigInsights 1.3 是一个软件平台,旨在帮助公司发现和分析隐藏在丰富多样的数据中的业务洞察 — 这些数据常常因为太不切实际或难以使用传统方式处理而被忽略或丢弃。这些数据的示例包括日志记录、单击流、社交媒体数据、新闻提要、电子传感器输出以及一些事务数据。

为了帮助企业以有效的方式从这类数据获取价值,BigInsights Enterprise Edition 包含多个开源项目(包括 Apache Hadoop)和 IBM 开发的众多技术。Hadoop 和它的配套项目为数据密集型应用程序提供了一个高效的软件框架,以利用分布式计算环境来实现高可扩展性。IBM 技术通过分析软件、企业软件集成、平台扩展和工具丰富了这个开源框架。有关 BigInsights 的更多信息,请参阅 参考资料。本文重点介绍 BigInsights 1.3 Enterprise Edition 中包含的一项 IBM 独有的技术:Web 控制台。

您将会发现,Web 控制台包含针对管理员、应用程序开发人员和业务分析师的工具。此外,Web 控制台还可帮助您保护集群,限制打开的端口数量并支持 LDAP 和基于文件的验证。


初始步骤

运行 BigInsights 后,可从浏览器轻松地启动该控制台。只需指定在安装 Web 控制台时标识的主机名和端口号即可。对于 SSL 安装,默认地址为 is https://<主机名>:8443。对于非 SSL 安装,默认地址为 http://<主机名>:8080。提供有效的用户 ID 和密码后,将显示 Web 控制台的 Welcome 页面,如图 1 所示。

图 1. BigInsights 1.3 Enterprise Edition Web 控制台的 Welcome 页面
该图显示了 Welcome 页面

Welcome 页面包含常见任务的连接,比如运行应用程序、添加和删除节点,以及使用一个类似电子表格的工具分析数据。此外,它还包含流行外部资源的链接,比如 BigInsights InfoCenter(产品文档)和社区论坛。

本文后面的章节将更详细地分析控制台的重要功能。管理员可能对可通过 Cluster Status、Files、Applications 和 Applications Status 页面执行的操作特别感兴趣。应用程序开发人员可能最常使用 Files、Applications 和 Applications Status 页面。业务分析师可能倾向于通过 BigSheets(一个电子表格样式的工具)分析数据或通过 Applications 页面启动发布的应用程序。但是,它们有时可能还希望浏览 Files 或 Applications Status 页面。


管理集群

通过各种 Web 控制台链接,管理员可检查集群的总体健康状况,以及执行许多常见功能,比如启动和停止特定的服务、添加节点等。Welcome 和 Cluster Status 页面是最流行的管理操作的起点。例如,Cluster Status 页面提供了集群健康状况的实时视图,支持管理员根据需要向集群添加节点。图 2 描绘了一个两节点 BigInsights 测试环境的状态,其中的所有服务都在繁忙地运行。

图 2. 检查一个 BigInsights 环境的状态
该图显示了对集群状态的检查

要下钻到任何服务的状态,管理员只需单击左侧窗格中感兴趣的服务。右侧窗格显示详细信息,包括进程 ID 和其他针对每个服务的数据。此外,管理员还可使用右侧窗格启动和停止已标识的服务。

图 3 描绘了一个正在积极运行的 Hive 服务,管理员只需单击所提供的按钮即可停止它。此外,因为 Hive 是一个包含基于 Web 界面的开源项目,所以 BigInsights 控制台包含用于启动它的 URL。

图 3. 检查特定 BigInsights 服务的状态
该图显示了对 Hive 服务状态的检查

管理员也可通过 Welcome 页面启动各种开源工具。Quick Links 窗格中的 Access secure cluster servers 项提供了一种轻松方式来启动开源项目所提供的工具,比如 Hadoop、Flume 和 Hbase。图 4 给出了所显示链接的列表。

图 4. 管理各种开源组件的快速链接
该图显示了管理功能的快速链接

使用分布式文件系统

也可以使用浏览 Hadoop 分布式文件系统 (HDFS) 和执行基本文件系统功能的机制,比如上传或下载文件、创建和删除子目录,以及发出 HDFS shell 命令。一些文件系统功能对管理员特别有用,而另一些功能可帮助用户快速建立特定的分析项目。

图 5 所示,Web 控制台的 Files 页面的左侧窗格中包含一个文件系统导航工具。顶部的图标可用于创建一个目录,将一个文件上传到 HDFS,从 HDFS 将一个文件下载到本地文件系统,从 HDFS 删除一个文件或目录,打开一个命令窗口来启动 HDFS shell 命令,以及刷新 Web 控制台页面。文件上传/下载按钮非常适合处理小型测试文件。要转移大量数据,可考虑使用 HDFS shell 命令、Distributed File Copy 示例应用程序(稍后将探讨)或一个开源工具,比如 Flume。

Files 页面的右侧窗格显示了您在导航窗格中突出显示的特定文件或目录的信息。例如,如果导航到一个文件,右侧窗格的顶部将显示该文件的路径、权限、所有者、大小和其他细节。在底部,右侧窗格以文本格式显示文件的小部分内容。在图 5 中,我们可以看到 access.log 文件的前 10 KB,该文件包含可以文本形式轻松查看的 Web 日志记录。

图 5. 使用分布式文件系统
该图显示了文件系统

某些类型的文件可轻松显示为 “工作表”(一种电子表格样式的格式)。稍后将会看到如何操作。


浏览应用程序目录并启动应用程序

控制台的 Applications 和 Applications Status 页面可用于启动已部署的应用程序(包括 IBM 提供的示例应用程序),检查应用程序和工作流的状态,以及查看执行细节。

图 6 中所示,用户和管理员可使用 Applications 页面处理已上传到(即发布到)BigInsights 应用程序目录的应用程序。左侧窗格显示了这些应用程序,包括 IBM 提供的示例查询应用程序、数据导入/导出应用程序和测试应用程序。我们将逐一简短探讨这些应用程序中的每一个。但是,值得注意的是,每个应用程序图标的左上方显示了应用程序的准备状态。左上方的黄色三角形显示应用程序还未准备好运行,因为它还未部署到集群上。没有此标记的图标表示应用程序已部署并准备运行。当首次安装 BigInsights 时,所有示例应用程序将在左上方有一个黄色三角形,因为还未部署任何应用程序。但是,您将会看到,部署这些应用程序 — 或您上传到目录的任何自定义编写的应用程序,对应用程序管理员而言,这非常简单。在图 6 中,仅部署了 WordCount 示例应用程序。

图 6. 浏览和启动应用程序
该图显示了应用程序目录

BigInsights 中提供的示例查询应用程序使开发人员可以动态地发出 Hive、Pig 或 Jaql 查询。将 Web 控制台用于原型设计和实验性工作非常方便,使应用程序开发人员做极少的功能就能够快速测试查询和检查结果。相比之下,为 BigInsights 提供的基于 Eclipse 的插件更适合生产级应用程序开发工作。

BigInsights 中提供的示例数据导入和导出应用程序支持以下操作:

  • 在关系数据库管理系统 (DBMS) 和 HDFS 之间移动数据。具体来讲,Database Import 和 Database Export 应用程序使用 BigInsights 的 Jaql JDBC 模块从 HDFS 将数据提取到一个关系 DBMS 中,反之亦然。支持的 DBMS 平台包括 DB2®、Oracle、Teradata、Informix®、SQL Server 和 Netezza。
  • 使用 Distributed File Copy 示例应用程序在远程文件系统与 HDFS 之间移动数据。
  • 执行 Web 搜索并获取符合条件的 Web 数据。Web Crawler 示例应用程序使用开源的 Nutch 技术来搜索 Web。
  • 对公共论坛、视频、微博站点和其他基于 Web 的社区进行搜索。Boardreader 示例应用程序使用 Boardreader.com 所支持的搜索 API 来获得各种网站中符合条件的结果。(用户必须从 Boardreader.com 获取有效的软件许可密钥,才能执行此应用程序。)

最后,BigInsights 包含两个在基于 Hadoop 的环境中非常流行的示例测试应用程序:WordCount 和 TeraGen-TeraSort。WordCount 处理一组文本文件,返回找到的每个单词出现的总次数。TeraGen-TeraSort 生成和排序 TB 级的数据集。

前面已经提到,在目录中发布的示例应用程序(或用户编写的应用程序)可以使用之前,必须将部署到 BigInsights 集群。为此,管理员可单击该应用程序的图标,右侧窗格就会显示部署、删除和配置该应用程序的选项,如图 7 所示。

图 7. 部署应用程序
该图显示了应用程序部署

Configure 按钮(显示在 图 7 的右上角,在 Delete 按钮旁边)允许管理员指定谁有权启动该应用程序。例如,图 8 中的设置表明在应用程序部署后,“supergroup” 和 “users” 组的成员将有权访问它。(登录到控制台后,最终用户只能看到它们有权启动的应用程序。)配置应用程序后,管理员只需单击 Deploy 按钮即可使该应用程序可供授权用户使用。

图 8. 配置发布到 Web 控制台目录中的应用程序的安全特征
该图显示了应用程序授权

应用程序常常需要输入和输出参数,用户可在启动时在右侧窗格指定它们(参见 图 6)。提供需要的参数和应用程序的执行名称后,用户可运行应用程序,并通过检查右下角的 Applications History 窗格中显示的信息来实时监视它的状态。在应用程序运行时,Stop 按钮将被激活,允许用户在需要时终止应用程序。

前面已经提到,程序员可向该目录发布他们自己的应用程序,供以后在集群上部署。BigInsights Eclipse 插件中提供的图形化向导会指导程序员识别他们的目标应用程序,指定一个工作流配置文件(或接受一个生成的文件),提供有关应用程序参数的详细信息,以及创建一个将上传到目标 BigInsights 服务器的 ZIP 文件。


监视工作流和应用程序状态

BigInsights Web 控制台为每个应用程序生成一个基于 Oozie 的工作流,用户可检查该工作流和它的关联作业的详细信息。例如,图 9 给出了一个成功执行的工作流的详细信息,包括它的开始和结束时间、它的 ID 和其他数据。

图 9. 检查一个完成的应用程序工作流的状态
该图显示了工作流状态

有关作业的更多详细信息可通过所提供的链接获取。例如,可确定安装程序的编号,映射和减少作业需要的任务,检查配置数据,检查有关该作业的统计数据(比如读取和写入的字节树),以及检查日志数据。

浏览您的工作流或作业的详细信息,常常可帮助您诊断运行时错误。图 10 显示了与未能成功运行的应用程序关联的操作细节。快速检查该数据会发现,该应用程序 — 在本例中为一次 WordCount 运行 — 无法找到 hdfs://localhost.localdomain:9000/user/hdpadmin/Inptu_WC 的指定的输入目录。(很可能调用方希望引用 .../Input_WC 作为输入目录。)使用此信息,更正输入目录并重新运行应用程序就非常简单。

图 10. 检查从一次失败的应用程序运行所返回的诊断信息
该图显示了诊断数据

使用一个电子表格样式的工具分析和浏览数据

Sheets 页面使用户能够使用一个电子表格样式的界面 BigSheets 来浏览和分析大数据。与其他许多大数据工具不同,它是为业务分析师和非技术性专业人员设计的。使用 BigSheets,业务用户可将存储在 BigInsights 分布式文件系统中的数据建模为工作表集合

通常,用户可使用内置的功能和宏来过滤、浏览和充实它们的集合内容。而且,一些用户可将位于不同集合中的数据结合起来,创建新的工作表(集合)和图表来直观地表示他们的数据。最后,用户可将 BigSheets 分析的结果导出到各种常见的格式,供下游应用程序使用。IBM 提供了 HTML、JSON、CSV、RSS 和 ATOM 数据的导出工具。

本文并未详细讨论 BigSheets,我们将通过一个示例场景,演示可使用此工具的一种方式。公司可使用各种不同的工具和技术从网站文件和其他来源将数据收集到 BigInsights 中。数据收集和导入机制的示例包括 Flume、HDFS shell 命令和可通过 Web 控制台访问的示例应用程序。用户可使用 BigSheets 浏览和操作数据,也可通过 Web 控制台访问它。

要创建一个集合,用户可使用 Files 页面识别感兴趣的数据,指定查看 “Sheet” 的首选项。这么做之后,控制台将提示用户指定一个合适的 “阅读器” 或数据格式转换器。IBM 提供了多个内置的阅读器来处理常见的数据格式,包括 CSV、TSV、Web 爬网工具数据、JSON 等。此外,Java™ 程序员可创建自定义插件来处理特定的数据格式,使这些格式可供 BigSheets 的业务用户使用。

保存工作表之后,用户就可以采用内置的功能和宏来自定义他们的集合。例如,基本的编辑功能包括重命名列、插入新列、删除列和排序数据。更复杂的数据操作功能包括使用内置的操作符过滤数据,定义公式,应用宏,组合来自多个集合的数据等。此外,如果有必要,Java 程序员可创建插件来提供更多功能和宏。

在用户通过 Sheets 图形编辑器调整集合的内容时,BigInsights 将这些命令转换为可针对该集合代表的数据的子集运行的可执行脚本。这支持及时地执行探索性、迭代式的分析。用户满意对集合所做的更改后,他可单击一个按钮来告诉 BigInsights 对集合代表的全部数据集运行该集合。根据所涉及的数据量,这可能会花一些时间,所以 BigSheets 提供了一个实时状态栏来表示基础 MapReduce 作业的进度。当作业完成时,业务分析师可检查结果,并根据需要进一步调整集合。

图 11 给出了一个示例工作表,其中包含类似于您可在社交媒体网站上找到的数据。

图 11. 使用一个电子表格样式的工具分析和操作 BigInsights 数据
该图显示了 BigSheets 的使用

了解安全性

BigInsights 提供了许多企业安全功能,使企业能够保护他们的集群和数据免受未授权的访问。在典型的企业配置中,所有 BigInsights 集群服务器都在一个防火墙后得以保护并通过一个封闭的网络进行连接,将 Web 控制台用作进入集群的网关。如 图 12 中所示,这些安全配置支持在集群服务器之间进行不受限的通信,但所有端口都是关闭的,不能从集群外部访问。用于 Web 控制台的端口(默认为用于 HTTP 的 8080 端口和用于 HTTPS 的 8443 端口)是唯一保持开放来接受传入通信的端口。BigInsights Web 控制台提供了一项反向代理功能,它可通过这个单一的 HTTP(S) 端口动态地重新路由集群的所有 HTTP 流量。反向代理功能可通过访问安全集群服务器 (Access Secure Cluster Servers) 链接访问,如 图 4 中所示。

图 12. BigInsights 安全参考架构
该图显示了对 BigInsights 集群的保护

安装程序支持自动设置和配置 HTTP 和 HTTPS 配置。

身份验证

身份验证是指确认一个用户确实符合他声明的身份的过程。BigInsights Web 控制台支持 3 种基于密码的身份验证方案。企业安装的推荐身份验证设置为 LDAP。此方法支持您配置 Web 控制台来执行身份验证,将来自某个 LDAP 服务器的查找操作进行分组。Web 控制台可使用 LDAP 或 LDAPS (LDAP over SSL) 协议与 LDAP 存储区通信。BigInsights 安装程序提供了详细的配置选项,支持公司配置 LDAP 服务器、通信协议、针对用户和组查找的 LDAP 子树,等等。

平面文件身份验证允许管理员配置 Web 控制台来查找两个分别针对用户身份验证和组身份验证的属性文件。这些属性文件位于 $BIGINSIGHTS_HOME/console/conf/security 目录中。biginsights_user.properties 文件包含 user=password 形式的条目并用作身份验证存储。biginsights_group.properties 文件包含 group=user1,user2,... 形式的条目并用作组查找存储库。存储在用户属性文件中的密码可使用具有 十六进制或 Base64 编码的 MD5 或 SHA1 加密来进行保护。平面文件身份验证选项常常用于产品演示或生产前设置,其中一个基于文件的身份验证存储提供的安全保护就够用了。

默认情况下,安装 BigInsights Web 控制台时无需进行任何身份验证,这意味着用户无需输入任何用户 ID 或密码即可访问所有控制台功能。(这与 Apache Hadoop 0.20.2 是一致的。)尽管此方法对浏览 Web 控制台功能已足够了,但它不适合企业安装。

授权

BigInsights 支持对所有文件系统访问、集群管理任务、应用程序生命周期管理和发布到目录中的应用程序的进行基于角色的访问控制。在安装期间,企业用户和组可映射到 4 个具有预定义的特权的 BigInsights 角色:

  1. BigInsights 系统管理员可执行所有系统管理任务,比如监视集群健康状况,以及添加、删除、启动和停止节点。
  2. BigInsights 数据管理员有权执行所有数据管理任务,比如创建目录,运行 Hadoop 文件系统命令,以及上传、删除、下载和查看文件。
  3. BigInsights 应用程序管理员可执行所有应用程序管理任务,比如发布和删除应用程序,向集群部署应用程序和解除部署应用程序,配置图标,应用应用程序描述,更改应用程序的运行时库和类别,以及向一个组分配应用程序权限。
  4. BigInsights 用户可能是最常分配给执行非管理性任务的集群用户的角色。用户可运行他有权运行的应用程序,查看结果、数据和集群健康状况。

在安装之后,管理员可使用一个简单的命令行实用程序更新角色映射,保持这些映射最新。该实用程序位于 $BIGINSIGHTS_HOME/console/bin/refresh_security_config.sh,它从 $BIGINSIGHTS_HOME/conf/install.xml 读取安装 XML 文件的内容,基于当前设置重新部署 Web 控制台。


致谢

衷心感谢各位同事为此技术工作提供的帮助以及为本文提供的意见。此外还要感谢 Yu Gao 对 BigInsights 安全性的重新关注(以前是 Priya Baliga 的专长)。您可以通过 ygao@us.ibm.com 联系 Yu Gao。


结束语

BigInsights Web 控制台提供了可用来管理集群的工具、启动应用程序并监视它们的状态、处理分布式文件系统,并使用一个电子表格样式的工具分析数据。本文介绍了 Web 控制台的许多重要方面,旨在帮助您快速实施 BigInsights 项目。

参考资料

学习

获得产品和技术

  • 使用 IBM 产品评估试用版软件 构建您的下一个开发项目,这些软件可直接从 developerWorks 下载获得。
  • 现在您可以免费使用 DB2。下载 IBM 软件下载:IBM DB2 Express-C 10.1,展示 DB2 Express Edition 的一个面向社区的免费版本,提供了与 DB2 Express Edition 相同的核心数据功能,为构建和部署应用程序提供了牢固的基础。

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management
ArticleID=818087
ArticleTitle=探索 InfoSphere BigInsights 集群和样例应用程序
publish-date=05242012