热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

NikitaIvanov谈GridGain的Hadoop内存片内加速技术

GridGain最近在2014年的Spark峰会上发布了Hadoop内存片内加速技术,可以为Hadoop应用带来内存片内计算的相关收益。该技术包括两个单元:和HadoopHDFS兼容的内存片内文件系统,以及为内存片内处理而优化的MapReduce实现。这两个单元对基于磁盘的HDFS和传统

GridGain最近在2014年的Spark峰会上发布了Hadoop内存片内加速技术,可以为Hadoop应用带来内存片内计算的相关收益。 该技术包括两个单元:和Hadoop HDFS兼容的内存片内文件系统,以及为内存片内处理而优化的MapReduce实现。这两个单元对基于磁盘的HDFS和传统

GridGain最近在2014年的Spark峰会上发布了Hadoop内存片内加速技术,可以为Hadoop应用带来内存片内计算的相关收益。

该技术包括两个单元:和Hadoop HDFS兼容的内存片内文件系统,以及为内存片内处理而优化的MapReduce实现。这两个单元对基于磁盘的HDFS和传统的MapReduce进行了扩展,为大数据处理情况提供了更好的性能。

内存片内加速技术消除了在传统Hadoop架构模型中与作业追踪者(job tracker)、任务追踪者(task tracker)相关的系统开销,它可以和现有的MapReduce应用一起工作而无需改动任何原有的MapReduce、HDFS和YARN环境的代码。

下面是InfoQ对GridGain的CTO Nikita Ivanov关于Hadoop内存片内加速技术和架构细节的访谈。

InfoQ: Hadoop内存片内加速技术的关键特性在于GridGain的内存片内文件系统和内存片内MapReduce,你能描述一下这两个组件是如何协同工作的吗?

Nikita:GridGain的Hadoop内存片内加速技术是一种免费、开源和即插即用的解决方案,它提升了传统MapReduce工作(MapReduce jobs)的速度,你只需用10分钟进行下载和安装,就可以得到十几倍的性能提升,并且不需要对代码做任何改动。该产品是业界第一个基于双模、高性能内存片内文件系统,以及为内存片内处理而优化的MapReduce实现方案,这个文件系统和Hadoop的HDFS百分百的兼容。内存片内HDFS和内存片内MapReduce以易用的方式对基于磁盘的HDFS和传统的MapReduce进行了扩展,以带来显著的性能提升。

简要地说,GridGain的内存片内文件系统GGFS提供了一个高性能、分布式并与HDFS兼容的内存片内计算平台,并在此进行数据的存储,这样我们基于YARN的MapReduce实现就可以在数据存储这块利用GGFS做针对性的优化。这两个组件都是必需的,这样才能达到十几倍的性能提升(在一些边界情况下可以更高)。

InfoQ: 如何对这两种组合做一下比较,一种是内存片内HDFS和内存片内MapReduce的组合,另一种是基于磁盘的HDFS和传统的MapReduce的组合?

Nikita:GridGain的内存片内方案和传统的HDFS/MapReduce方案最大的不同在于:

在GridGain的内存片内计算平台里,数据是以分布式的方式存储在内存中。
GridGain的MapReduce实现是从底层向上优化,以充分利用数据存储在内存中这一优势,同时改善了Hadoop之前架构中的一些缺陷。在GridGain的MapReduce实现中,执行路径是从客户端应用的工作提交者(job submitter)直接到数据节点,然后完成进程内(in-process)的数据处理,数据处理是基于数据节点中的内存片内数据分区,这样就绕过了传统实现中的作业跟踪者(job tracker)、任务跟踪者(task tracker)和名字节点(name nodes)这些单元,也避免了相关的延迟。

相比而言,传统的MapReduce实现中,数据是存储在低速的磁盘上,而MapReduce实现也是基于此而做优化的。

InfoQ:你能描述一下这个在Hadoop内存片内加速技术背后的双模、高性能的内存片内文件系统是如何工作的?它与传统的文件系统又有何不同呢?

Nikita:GridGain的内存片内文件系统GGFS支持两种模式,一种模式是作为独立的Hadoop簇的主文件系统,另一种模式是和HDFS进行串联,此时GGFS作为主文件系统HDFS的智能缓存层。

作为缓存层,GGFS可以提供直接读和直接写的逻辑,这些逻辑是高度可调节的,并且用户也可以自由地选择哪些文件和目录要被缓存以及如何缓存。这两种情况下,GGFS可以作为对传统HDFS的嵌入式替代方案,或者是一种扩展,而这都会立刻带来性能的提升。

InfoQ:如何比较GridGain的内存片内MapReduce方案和其它的一些实时流解决方案,比如Storm或者Apache Spark?

Nikita:最本质的差别在于GridGain的内存片内加速技术支持即插即用这一特性。不同于Storm或者Spark(顺便说一下,两者都是伟大的项目),它们需要对你原有的Hadoop MapReduce代码进行完全的推倒重来,而GridGain不需要修改一行代码,就能得到相同甚至更高的性能优势。

InfoQ:什么情况下需要使用Hadoop内存片内加速技术呢?

Nikita:实际上当你听到“实时分析”这个词时,也就听到了Hadoop内存片内加速技术的新用例。如你所知,在传统的Hadoop中并没有实时的东西。我们在新兴的HTAP (hybrid transactional and analytical processing)中正看到一些这样的用例,比如欺诈保护,游戏中分析,算法交易,投资组合分析和优化等等。

InfoQ:你能谈谈GridGain的Visor和基于图形界面的文件系统分析工具吗,以及他们如何帮助监视和管理Hadoop工作(Hadoop jobs)的?

Nikita:GridGain的Hadoop内存片内加速是和GridGain的Visor合在一起的,Visor是一种对GridGain产品进行管理和监视的方案。Visor提供了对Hadoop内存片内加速技术的直接支持,它为HDFS兼容的文件系统提供了精细的文件管理器和HDFS分析工具,通过它你可以看到并分析和HDFS相关的各种实时性能信息。

InfoQ:后面的产品路标是怎么样的呢?

Nikita:我们会持续投资(同我们的开源社区一起)来为Hadoop相关产品技术,包括Hive、Pig和Hbase,提供性能提升方案。

Taneja Group也有相关报道(Memory is the Hidden Secret to Success with Big Data, 下载全部报告需要先注册),讨论了GridGain如何把Hadoop内存片内加速技术和已有的Hadoop簇、传统基于磁盘的有缺陷的数据库系统以及面向批处理的MapReduce技术进行集成。

关于被访问者

\Nikita Ivanov是GridGain系统公司的发起人和CTO,GridGain成立于2007年,投资者包括RTP Ventures和Almaz Capital。Nikita领导GridGain开发了领先的分布式内存片内数据处理技术-领先的Java内存片内计算平台,今天在全世界每10秒它就会启动运行一次。Nikita有超过20年的软件应用开发经验,创建了HPC和中间件平台,并在一些创业公司和知名企业都做出过贡献,包括Adaptec, Visa和BEA Systems。Nikita也是使用Java技术作为服务器端开发应用的先驱者,1996年他在为欧洲大型系统做集成工作时他就进行了相关实践。

查看参考原文:Nikita Ivanov on GridGain’s In-Memory Accelerator for Hadoop


推荐阅读
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • HBase运维工具全解析
    本文深入探讨了HBase常用的运维工具,详细介绍了每种工具的功能、使用场景及操作示例。对于HBase的开发人员和运维工程师来说,这些工具是日常管理和故障排查的重要手段。 ... [详细]
  • 本文详细介绍了 Flink 和 YARN 的交互机制。YARN 是 Hadoop 生态系统中的资源管理组件,类似于 Spark on YARN 的配置方式。我们将基于官方文档,深入探讨如何在 YARN 上部署和运行 Flink 任务。 ... [详细]
  • Hadoop发行版本选择指南:技术解析与应用实践
    本文详细介绍了Hadoop的不同发行版本及其特点,帮助读者根据实际需求选择最合适的Hadoop版本。内容涵盖Apache Hadoop、Cloudera CDH等主流版本的特性及应用场景。 ... [详细]
  • 本文详细介绍如何使用 Apache Spark 执行基本任务,包括启动 Spark Shell、运行示例程序以及编写简单的 WordCount 程序。同时提供了参数配置的注意事项和优化建议。 ... [详细]
  • 深入解析Hadoop的核心组件与工作原理
    本文详细介绍了Hadoop的三大核心组件:分布式文件系统HDFS、资源管理器YARN和分布式计算框架MapReduce。通过分析这些组件的工作机制,帮助读者更好地理解Hadoop的架构及其在大数据处理中的应用。 ... [详细]
  • 本文探讨了Hive作业中Map任务数量的确定方式,主要涉及HiveInputFormat和CombineHiveInputFormat两种InputFormat的分片计算逻辑。通过调整相关参数,可以有效控制Map任务的数量,进而优化Hive作业的性能。 ... [详细]
  • 深入解析BookKeeper的设计与应用场景
    本文介绍了由Yahoo在2009年开发并于2011年开源的BookKeeper技术。BookKeeper是一种高效且可靠的日志流存储解决方案,广泛应用于需要高性能和强数据持久性的场景。 ... [详细]
  • 深入解析Spark核心架构与部署策略
    本文详细探讨了Spark的核心架构,包括其运行机制、任务调度和内存管理等方面,以及四种主要的部署模式:Standalone、Apache Mesos、Hadoop YARN和Kubernetes。通过本文,读者可以深入了解Spark的工作原理及其在不同环境下的部署方式。 ... [详细]
  • 解决getallheaders函数导致的500错误及8种服务器性能优化策略
    本文探讨了解决getallheaders函数引起的服务器500错误的方法,并介绍八种有效的服务器性能优化技术,包括内存数据库的应用、Spark RDD的使用、缓存策略的实施、SSD的引入、数据库优化、IO模型的选择、多核处理策略以及分布式部署方案。 ... [详细]
  • 大数据SQL优化:全面解析数据倾斜解决方案
    本文深入探讨了大数据SQL优化中的数据倾斜问题,提供了多种解决策略和实际案例,旨在帮助读者理解和应对这一常见挑战。 ... [详细]
  • Hadoop MapReduce 实战案例:手机流量使用统计分析
    本文通过一个具体的Hadoop MapReduce案例,详细介绍了如何利用MapReduce框架来统计和分析手机用户的流量使用情况,包括上行和下行流量的计算以及总流量的汇总。 ... [详细]
author-avatar
尹一2502904223
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有