如果您刚接触大数据应用程序开发并且想要快速进行开发,那么您可能希望了解 IBM InfoSphere BigInsights Enterprise Edition(一个基于开源 Apache Hadoop 项目的平台)提供的工具。BigInsights Eclipse 工具包括向导、代码生成器、上下文相关的帮助,以及一种简化开发工作的测试环境。使用这些工具,您可以在 BigInsights 基于 Web 的目录中快速 “发布” 应用程序。然后,您可以使用 BigInsights Web 控制台在集群上部署应用程序,以便授权用户可以启动该应用程序。
本文介绍 BigInsights 应用程序开发生命周期,并介绍如何使用最少的工作创建、发布和部署您的第一个简单应用程序。您还可以了解稍后如何升级到具有新功能的应用程序并重新部署该应用程序。
您构建的应用程序将使用 Jaql(一种查询和脚本编写语言,使用的是一种基于 JSON 的数据模型)从一个社交媒体站点检索有关 IBM Watson 研究项目的数据,处理该信息,并在您的分布式文件系统中存储结果。在这里我们不会详细介绍 Jaql,在另一篇文章中会详细介绍它。但是,这里介绍的许多 BigInsights 应用程序开发技巧并不是特定于 Jaql 的。实际上,BigInsights 工具和样例可以帮助您创建各种应用程序和软件组件,包括 Java MapReduce、Hive、Pig 和文本分析。
背景知识
BigInsights 是一个软件平台,旨在帮助组织发现并分析隐藏在大量不同数据类型中的业务洞察 — 这些数据通常会被忽略或丢弃,因为它太不切实际,或者是使用传统方法难以处理这些数据。此类数据示例包括社交媒体数据、新闻提要、日志记录、点击流、电子传感器输出,以及一些事务性数据。
为了帮助公司从这些类型的数据中有效地获取价值,企业版的 BigInsights 包含了几个开源项目,包括 Apache Hadoop 和一些 IBM 开发的技术。Hadoop 及其补充性项目为数据密集型应用程序提供了一种有效的软件框架,可利用分布式计算环境实现高可扩展性。 BigInsights 企业版随附提供的 IBM 技术极大地丰富了此开源框架,为该框架提供了分析软件、企业软件集成、平台扩展和工具。IBM 提供的技术包括基于 Web 的应用程序目录和进行应用程序开发的 Eclipse 工具。
通过 BigInsights Web 控制台的 Applications 选项卡可访问应用程序目录,它包括几个 IBM 提供的样例应用程序和管理员已添加的任意第三方或用户编写的应用程序。图 1 在左侧展示了应用程序目录的子集。在目录中发布的所有应用程序都有一个图标和一个名称。图标左上角的三角形表示还未在 BigInsights 集群上部署该应用程序。(在 图 1 中,还未部署 Ad hoc Hive query 和 Ad hoc Pig query 应用程序。)
当用户选择了要运行的应用程序后,会在右上角的窗格中显示一个启动面板。在目录中发布的所有应用程序具有一个一致的界面,用户可在其中指定相应的调用信息。此类信息包括所有必需的输入参数、应用程序运行的执行名以及调度信息等。图 1 还显示了用于即席 Jaql 查询应用程序的此信息的子集。右下角是有关该应用程序执行的历史记录信息。
图 1. BigInsights Web 控制台的 Applications 选项卡
在本文中,您将了解如何在此目录中发布应用程序和控制应用程序启动所需的信息。您还可以从目录中启动应用程序并检查结果(可选)。
准备开发您的第一个应用程序
要使用 Eclipse 开始开发 BigInsights 应用程序,请下载必备的 Eclipse 版本和 Eclipse Data Tools 平台。对于我们的测试场景,我们在 Linux® 系统上安装了 Eclipse Helios Service Release 2 和 Eclipse Data Tools 1.9.1.x。(尽管可以使用基于 Windows® 的 Eclipse 环境执行 BigInsights 应用程序开发任务,但是 步骤 3:测试应用程序 需要 Linux 或 UNIX® Eclipse 安装。)我们的目标 BigInsights 部署环境是 BigInsights Enterprise Edition 1.4。
安装了 Eclipse 环境并且访问 BigInsights Enterprise Edition 服务器后,启动 BigInsights Web 控制台。在 Welcome 选项卡的 Quick Links 部分,单击 Enable your Eclipse development environment for BigInsights application development,如 图 2 所示。将出现一个新窗口,显示下载 BigInsights 工具并将它安装到 Eclipse 环境的详细说明。
图 2. 有关配置 BigInsights Eclipse 工具的 Web 控制台链接