写点什么

一个 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:007618
用户头像

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

关注

评论

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

测试阻碍交付,如何破解这一难题?

飞算JavaAI开发助手

作业4

施正威

网络安全好学吗?基础入门篇,NMAP高级使用技巧和漏洞扫描发现

学神来啦

网络安全 渗透测试 kali基础 nmap kali Linux

Java开发之测试框架知识分享

@零度

Java

前端开发Vue中的v-指令的使用

@零度

Vue 前端开发

「自我检验」熬夜总结50个Vue知识点,全都会你就是神!!!

Sunshine_Lin

面试 Vue 前端 进阶 ES6

带你认识7种云化测试武器

华为云开发者联盟

测试 接口测试 华为云DevCloud 云化测试 Mock 服务

spring源码搭建

派大星

Spring5源码解析

Kafka原理——Kafka为何如此之快?

Kafka中文社区

什么是Log4Shell?Log4j漏洞解读

龙智—DevSecOps解决方案

log4j Log4j 2 Log4Shell

今天你的静态变量和静态代码块执行了吗?

华为云开发者联盟

Java 类加载 静态 静态变量 静态代码块

EMQ 映云科技入围 Venture50 行业榜单,数字科技企业风向标!

EMQ映云科技

物联网 Venture50

10个问题让你快速避开java中的jdbc常见坑

华为云开发者联盟

Java 数据库 JDBC fetchSize Prepared Statement

Hive on Spark和Spark sql on Hive,你能分的清楚么

华为云开发者联盟

sql 分布式计算 Sparksql hive on spark 数据源

一文整理区块链技术为企业带来的九大好处

CECBC

面试官:为什么不同返回类型不算方法重载?

王磊

netty系列之:选byte还是选message?这是一个问题

程序那些事

Java Netty 程序那些事 UDT 1月月更

【Golang】浅谈协程并发竞争资源问题

恒生LIGHT云社区

golang 后端 协程 并发 Go 语言

书单 | 学习数据可视化?看这些书就够了!

博文视点Broadview

Flink类型系统的根及相关接口

编程江湖

flink

科技驱动经济发展的时代全面到来

CECBC

SphereEx 完成近千万美元 Pre-A 轮融资,加速构建新一代数据库生态引擎

SphereEx

开源 融资 ShardingSphere SphereEx 嘉御资本

作业5

施正威

数字化转型失败,有哪些原因?

禅道项目管理

数字化转型

编写Spring MVC控制器的技巧

编程江湖

Spring MVC

潘娟:Keep open,Stay tuned 开源为我打开的全新世界 | TiDB Hackathon 2021 评委访谈

PingCAP

大数据开发之Hive SQL的优化分享

@零度

大数据 Hive SQL

nodejs 异步I/O和事件驱动

编程江湖

nodejs

一文了解区块链如何帮助打击虚假信息

CECBC

【量化】量化交易入门系列3:经典的量化交易策略(中)

恒生LIGHT云社区

量化投资 量化交易 量化

架构营模块八作业

GTiger

架构实战营

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