阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

一个 Hadoop 老兵的自白

  • 2015-11-26
  • 本文字数:1078 字

    阅读完需:约 4 分钟

Apache Hadoop 是一个免费软件,但实际上,除非是拥有庞大工程师团队的大公司,否则最好不要去创建仅供内部使用的 Hadoop 版本,因为如果要购买技术支持,那 Hadoop 就不是免费的了。 Jim Scott MapR 企业战略 & 架构部门的负责人。2009 年,他接触了自己的第一个 Hadoop 版本 Cloudera 。他发现,Apache Hadoop 平台存在一些固有的设计缺陷。近日,他从以下几个方面分析了这些缺陷,并介绍了 MapR 的解决方案

Append-only 文件访问方式

HDFS 的 Append-only 文件访问方式是一个巨大的障碍,导致下游项目不得不解决这个问题。例如, HBase 就实现了“墓碑化(Tombstoning)”和“合并(Compactions)”功能。但是,如果这些动作发生在负载高峰期,会严重影响生产系统的性能。MapR 通过创建 MapR-DB 解决了该问题。MapR-DB 模仿了谷歌的 BigTable ,支持 HBase API,是一个零管理实时数据库。

系统集成

HDFS 不兼容 POSIX NFS 。要查看 HDFS 中的文件,只能通过 HDFS 命令行接口来查询。 MapR-FS 是一个操作系统级的文件系统,兼容 POSIX。查看该分布式文件系统中的文件,只需要使用 LS 命令。编辑其中的文件,也不需要专门的工具。Linux 中任何可以读写 NFS 系统的应用程序都可以读写 MapR-FS。

备份 & 恢复

Apache Hadoop 在灾难恢复和备份方面存在严重不足。Hadoop 的数据复制可以有效应对磁盘故障,但对数据损坏和人为错误无能为力。谨慎起见,在向生产环境部署新软件之前,需要生成一个数据快照。但是,Apache Hadoop 的快照只是一个元数据副本。而 MapR 快照则近乎是数据的瞬时拷贝,即使文件正在被写入也可以生成。并且,用户还可以生成 MapR-DB 表的快照。

维护 & 升级

任何优秀的企业应用程序都离不开维护、管理和升级,Hadoop 也不例外。但 Hadoop 的升级维护可能会非常麻烦。MapR 每次发布都会针对许多开源软件项目的多个版本进行测试。它是唯一一个支持在同一个集群上运行软件的不同版本的 Hadoop 版本。

开源软件选择

在使用 Hadoop 的时候,相关开源软件的选择是个难题。MapR 支持开放式 API,提供了一个无偏见的 Hadoop 开源软件集合,使用户能够选择自己需要的开源项目

此外,Jim 还提到,NameNode 是个单点故障点。感兴趣的读者可以进一步阅读

对 MapR 感兴趣的读者,可以下载 MapR M3 社区版本,免费体验 MapR 的


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-11-26 18:007113
用户头像

发布了 1008 篇内容, 共 373.8 次阅读, 收获喜欢 340 次。

关注

评论

发布
暂无评论
发现更多内容

Kotlin + 协程 + Retrofit ,携程Android面试题

android 程序员 移动开发

贝壳Flutter瘦身实践

贝壳大前端技术团队

flutter 瘦身 for web

Kotlin 的协程用力瞥一眼,大厂架构师经验分享

android 程序员 移动开发

Kotlin写一个解释器(2)---语法分析,安卓项目开发范例大全

android 程序员 移动开发

Jetpack组件---ViewModel 概览,android高级面试2020

android 程序员 移动开发

JNI 与 NDK 入门(一),设计思想与代码质量优化+程序性能优化+开发效率优化

android 程序员 移动开发

Kotlin(1) lambda表达式和高阶函数操作符,android软件开发基础

android 程序员 移动开发

Kotlin协程它不香吗?,kotlin开发游戏

android 程序员 移动开发

Kotlin(五)深入理解Kotlin类与接口,androidndk开发视频

android 程序员 移动开发

Jetpack Compose和View的互操作性,这个回答让我错失offer

android 程序员 移动开发

Jetpack 之 LifeCycle 组件使用详解,android开发书籍

android 程序员 移动开发

Kotlin学习手记——注解,flutter下拉加载

android 程序员 移动开发

lambda表达式(3)-shawn,挑战大厂重燃激情

android 程序员 移动开发

LeakCanary源码分析以及ContentProvider的优化方案,android移动开发

android 程序员 移动开发

Kotlin的自定义View,实现带弧形的进度条,androidjetpack详解

android 程序员 移动开发

Kotlin系列三:空指针检查,万字长文总结Android多进程

android 程序员 移动开发

Kotlin学习手记--泛型、泛型约束、泛型型变,天呐

android 程序员 移动开发

Kotlin学习手记——注解(1),2021年字节跳动74道高级程序员面试

android 程序员 移动开发

博睿数据“智能体验运营,释放商业潜能”催化剂项目获TM Forum创新方案最佳实施奖

博睿数据

入选《2021爱分析·区域性银行数字化厂商全景报告》,网易云信助力南京银行打造转型标杆

网易云信

人工智能 金融行业

Kotlin 插件的落幕,ViewBinding 的崛起,音视频开发工程师

android 程序员 移动开发

最新消息!旺链科技加入庙行镇“乐创助企联盟”

旺链科技

区块链 产业区块链

Kotlin下的5种单例模式,一招教你看懂Netty

android 程序员 移动开发

Jetpack Compose 1,阿里P8架构师Android大厂面试题总结

android 程序员 移动开发

Jetpack-在数据变化时如何优雅更新Views数据,ffmpeg音视频开发实战6下载

android 程序员 移动开发

Jetpact Compose状态管理简单理解,android设计模式的应用场景

android 程序员 移动开发

Kotlin-编程核心基石—高阶函数,androidrom定制

android 程序员 移动开发

LeakCanary源码学习二:LeakCanary,sw实战营文件下载

android 程序员 移动开发

Kotlin 协程和 Android SQLite API 中的线程模型,嵌入式系统工程师面试

android 程序员 移动开发

Kotlin-新版来了,支持跨平台!,android热修复实现

android 程序员 移动开发

Kotlin-源码里成吨的-noinline-和-crossinline-是干嘛的?

android 程序员 移动开发

一个Hadoop老兵的自白_语言 & 开发_谢丽_InfoQ精选文章