登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 计算机类 > 计算机科学与技术 > 正文

InfoSphere BigInsights:大数据静态分析外文翻译资料

 2021-12-12 22:08:16  

英语原文共 166 页

InfoSphere BigInsights:大数据静态分析

Hadoop为企业提供了巨大的潜力,使企业能够利用迄今为止难以管理和分析的数据。具体来说,Hadoop使处理具有不同结构(或者根本没有结构)的海量数据成为可能。也就是说,尽管Hadoop有了所有的承诺,但它仍然是一项相对年轻的技术。ApacheHadoop顶级项目始于2006年,尽管采用率在不断提高——随着开源代码贡献者的数量增加,Hadoop仍然存在一些已知的缺点(公平地说,它甚至还没有达到1.0版)。从企业的角度来看,这些缺点可以阻止公司在生产环境中使用Hadoop,也可以阻碍其采用,因为在生产环境中总是期望某些操作质量,例如性能、管理能力和健壮性。例如,正如我们在第4章中讨论的那样,Hadoop分布式文件系统(HDFS)有一个集中的元数据存储区(称为namenode),它表示一个没有可用性的单点故障(spof)(0.21版中添加了一个冷备份)。当namenode恢复后,需要很长时间才能使hadoop集群再次运行,因为它跟踪的元数据必须加载到namenode的内存结构中,所有这些都需要重建和重新填充。此外,Hadoop的安装、配置和管理可能很复杂,而且还没有大量拥有Hadoop技能的人。同样,拥有MapReduce技能的开发人员也有限。在Hadoop中编程传统的分析算法(如统计或文本分析)是困难的,它需要分析员成为熟练的Java程序员,有能力将MapReduce技术应用到他们的分析算法中。(更高级的语言,如pig和jaql,使mapreduce编程更容易,但仍有学习曲线。)还有更多的,但您可以理解的是:Hadoop不仅需要一些企业强化,还需要一些工具和功能,帮助解决Hadoop平台提供的各种可能性(例如,可视化、文本和分析和图形管理工具)。

IBM InfoSphere BigInsights(BigInsights)通过IBM关注两个主要产品目标来解决所有这些问题,以及更多问题:

  • 提供一个为企业使用而强化的Hadoop平台,并深入考虑高可用性、可扩展性、性能、易用性以及您将在企业中部署的任何解决方案所期望的其他方面。
  • 通过为开发人员提供开发和运行时环境来构建高级分析应用程序,并为业务用户提供分析大数据的工具,使与大数据分析相关的时间价值曲线变得平坦。

在本章中,我们将讨论IBM如何准备Hadoop以供企业使用。正如您可以想象的那样,IBM有着理解企业需求的悠久历史。通过采用Hadoop(及其开放源代码生态系统)等新技术,并利用IBM在其存在的世纪中积累的丰富经验和智力资本对其进行扩展,您将获得一个成功的组合,使您能够使用一个您可以信任的平台来探索Hadoop,该平台也可以更快地产生结果。

易用性: 一个简单的安装过程

BigInsights安装程序的设计考虑到了简单性。IBM的开发团队问他们自己,“如果没有使开源软件正常运行所需的努力和技术技能,IBM如何才能缩短Hadoop曲线的时间?”“他们以BigInsights安装程序回答了这个问题。

BigInsights安装程序的主要目标是使您远离复杂性。因此,您不必担心软件的先决条件或确定要下载的ApacheHadoop组件、这些组件之间的配置以及Hadoop集群的整体设置。BigInsights安装程序为您完成所有这些工作,您只需单击一个按钮。Hadoop启动的复杂性几乎被BigInsights消除了。很简单,您的体验将非常类似于安装任何商业软件。

为了准备写书,我们创建了三个不同的Hadoop集群:

  • 一个从头开始,只使用开源软件,我们称之为Roll Your Own(Ryo)Hadoop方法
  • 一个来自竞争对手,他们只提供了一个安装程序,一些操作工具和一个 Hadoop 支持合同
  • 一个具有重要见解的

“Roll Your Own”Hadoop方法让我们直接访问Apache网站并下载Hadoop项目,最终涉及到大量工作。具体来说,我们必须做到以下几点:

1、选择要下载的 Hadoop 组件以及这些组件的哪个版本。我们发现了许多组件,而且对于我们来说,为了开始实施,我们需要哪些组件并不立即明显,因此需要进行一些初步研究。

  1. 创建并设置 Hadoop 用户帐户。
  2. 下载我们决定需要的每个 Hadoop 组件,并将它们安装在我们的机器集群上。
  3. 为 Hadoop 用户帐户配置安全 Shell (SSH),并将密钥复制到集群中的每个计算机。
  4. 配置 Hadoop 以定义我们希望它运行的方式; 例如,我们指定了输入/输出设置、 jobtrace 和任务跟踪器级别的详细信息。
  5. 配置 HDFS-特别是,我们设置和格式化 NameNode 和辅助 NameNode。
  6. 定义所有全局变量(例如,hadoop_classpath、hadoop_pid_dir、hadoop_heapsize、java_home)。

正如您可以想象的那样,从开源码组件启动和运行Hadoop集群是复杂的,而且有点费力。我们挺过去了,但还是付出了一些努力。然后,我们又有一批经验丰富的Hadoop开发人员准备回答问题。如果您选择的是Ryo路线,那么您需要对整个Hadoop生态系统有一个很好的了解,以及基本的Hadoop管理和配置技能。在开始考虑运行简单的MapReduce作业之前,您需要完成所有这些工作,更不用说运行任何有意义的分析应用程序了。

接下来,我们尝试安装竞争对手的Hadoop发行版(注意它是一个发行版,而不是像BigInsights这样的平台)。这个竞争对手的安装确实代表了对开源方法的改进,因为它有一个漂亮的图形安装程序。但是,它不安装和配置其他Hadoop生态系统组件,如Pig、Hive和Flume等,您需要手动安装这些组件。

这两种体验与BigInsights方法形成了鲜明对比,即只使用一个安装程序简单地布局和配置整个必需组件集。使用BigInsights,安装只需要点击几下按钮,就不必担心与Hadoop相关的所有组件和版本。只需要很少的配置,不需要下载额外的先决条件。此外,您可以使用IBM的安装程序以图形方式构建响应文件,随后您可以使用该文件自动在集群中的所有节点上部署BigInsights。

BigInsights 1.2中包含的Hadoop组件

BigInsights以ApacheHadoop及其相关的开源项目为核心组件。IBM仍然致力于开源项目的完整性,不会分叉或以其他方式偏离它们的代码。下表列出了BigInsights 1.2中包含的开放源代码项目(及其版本),这是编写时可用的最新版本:

组件

版本

Hadoop (common utilities, HDFS, and the MapReduce framework)

0.20.2

Jaql (programming and query language)

0.5.2

Pig (programming and query language)

0.7

Flume (data collection and aggregation)

0.9.1

Hive (data summarization and querying)

0.5

Lucene (text search)

3.1.0

ZooKeeper (process coordination)

3.2.2

Avro (data serialization)

1.5.1

HBase (real-time read and write database)

0.20.6

Oozie (workflow and job orchestration)

2.2.2

随着每次BigInsights的发布,对开源组件和IBM组件的更新都会经历一系列的测试周期,以确保它们能够协同工作。这是我们要澄清的另一个非常特别的点:您不能将新代码直接放到生产中。在我们使用开源项目的经验中,总是存在一些向后兼容性问题。BigInsights消除了Hadoop组件的所有风险和猜测。它经历了与其他IBM软件相同的严格回归和质量保证测试过程。所以问问你自己:你宁愿做你自己的系统集成商,反复测试所有的Hadoop组件以确保兼容性吗?或者您愿意让IBM找到一个可以部署并确保可靠工作环境的稳定堆栈?

最后,BigInsights安装程序还设置了其他基础设施,包括为Hadoop提供企业稳定性和质量的分析工具和组件,这使得BigInsights成为一个平台而不是发行版。我们将在本章的其余部分讨论这些问题。

Hadoop-Ready企业质量文件系统:gpfs-snc

通用并行文件系统(GPF)由IBM Research在20世纪90年代为高性能计算(HPC)应用程序开发。自1998年首次发布以来,gpfs已经在世界上许多最快的超级计算机中使用,包括BlueGene,Watson(危险!超级计算机),和ASC紫色。(在ASC紫色超级计算机中安装的gpfs以每秒120 GB的惊人速度支持数据吞吐量!)除了HPC之外,全球数千个其他关键任务安装中也普遍存在GPF。gpfs也是DB2 pureScale的一部分,甚至可以发现它支持许多Oracle RAC安装;您还可以发现gpfs支持高度可扩展的Web和文件服务器、其他数据库、金融和工程部门的应用程序等。不用说,gpfs以其极高的可扩展性、高性能和可靠性赢得了企业级的声誉和血统。

如今,一些企业普遍采用Hadoop的一个障碍是HDF。这是一个相对较新的文件系统,有一些面向设计的限制。指导HDF开发的原则是由用例定义的,这些用例假设Hadoop工作负载将涉及对非常大的文件集的顺序读取(对集群中已经存在的文件没有随机写入,只需追加写入)。相比之下,gpfs设计用于各种工作负载和多种用途,我们将在本节中讨论这一点。

为Hadoop扩展gpfs:gpfs不共享任何集群

GPFS最初仅作为存储区域网络(SAN)文件系统提供,这不适合Hadoop群集,因为这些群集使用本地连接的磁盘。SAN技术不适合Hadoop的原因是,当数据存储在处理数据的节点上(这需要对数据进行位置感知)时,MapReduce作业的性能更好。在SAN中,数据的位置是透明的,这会导致高级别的网络带宽和磁盘I/O,特别是在具有许多节点的集群中。

2009年,IBM将gpfs扩展到与hadoop一起使用gpfs-snc(不共享集群)。以下是IBM对gpfs所做的关键添加,使其成为Hadoop的合适文件系统,从而增强了企业的Hadoop:

  • 位置感知 Hadoop的一个关键特性是它努力在存储数据的节点处处理数据。这样可以最大限度地减少网络流量并提高性能。为了支持这一点,gpfs-snc为集群中存储的所有文件提供位置信息。Hadoop JobTracker使用此位置信息来选择需要运行的任务的本地副本,这有助于提高性能。
  • Meta-blocks meta块典型的gpfs块大小为256kb,而在Hadoop集群中,块大小要大得多。例如,BigInsights的建议块大小为128 MB。在gpfs-snc中,许多标准gpfs块的集合被放在一起以创建元块的概念。单个映射任务针对元块执行,而Hadoop外部的文件操作仍将使用正常较小的块大小,这对其他类型的应用程序更有效。这种灵活性使各种应用程序能够在同一集群上工作,同时保持最佳性能。HDFS不共享这些好处,因为它的存储仅限于Hadoop和Hadoop。例如,不能在HDF上承载Lucene文本索引。然而,在gpfs-snc中,您可以将Lucene文本索引存储在集群中的文本数据旁边(此共同位置具有性能优势)。尽管Lucene使用256kb大小的gpfs块进行操作,但任何Hadoop数据都存储在集群中并以元块形式读取。
  • 写关联性和可配置复制 gpfs-snc允许您为文件定义一个放置策略,包括在文件复制期间采取的方法。正常的复制策略是,第一个副本是本地的,第二个副本是机架的本地副本(与HDF不同),第三个副本是跨集群中的其他机架进行条带化的。gpfs-snc允许您自定义此复制策略。例如,您可能决定始终将一组特定的文件存储在一起,以允许应用程序从同一位置访问数据。这是您在HDFS中无法做到的,这可能会导致特定工作负载(如大型顺序读取)的性能更高。第二个副本的策略也可以是将相同的数据保持在一起。如果主节点出现故障,则很容易切换到另一个节点,而不会看到应用程序性能的任何下降。数据的第三个副本通常是分条存储的,以防必须重新构建前两个副本中的一个。当文件被条带化时,恢复文件要快得多。在

    资料编号:[5567]

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图