Hadoop即将过时了吗?

2019-03-28 13:36|来源: 网络

  Hadoop 这个单词如今铺天盖地,几乎成了大数据的代名词。仅仅数年时间,Hadoop 从边缘技术迅速成长为一个事实标准。如今想玩转大数据,搞企业分析或者商业智能,没有 Hadoop 还真不行。但 Hadoop 狂热的背后却酝酿着一场技术变革,Hadoop 的核心技术在 Google 那里已经过时,因为 Hadoop 并不擅长处理“快数据”。

  今天,Hadoop 似乎已经毫无争议地成了企业大数据技术标准,看上去 Hadoop 将根植企业,其地位在未来十年似乎都不会动摇。但是 GigaOM 的专栏作家 Mike Miller 却发出了“不和谐”的声音:“企业真的会为一个盛极而衰的技术买单吗?”

  起源:Google 文件系统和 Google MapReduce

  为了探讨 Hadoop 的生命周期我们需要回溯 Hadoop 的灵感源泉——Google 的 MapReduce。为了迎接数据大爆炸的挑战,Google 的工程师 Jeff Dean 和 Sanjay Ghemawat 架构了两个影响深远的系统:Google File System(GFS)和 Google MapReduce(GMR)。前者是一个能在通用硬件上管理 EB(Exabyte)级数据的出色的可行方案。后者则是一个同样出色的,能在通用服务器上大规模并行处理数据的模型设计实现。

  GMR 的出彩之处在于能够让普通的 Google 用户和开发者也能够进行高速、容错的大数据处理。GMR 和 GFS 成了搜索引擎数据处理引擎的核心,该引擎抓取、分析并分级 web 页面,并最终为用户呈现日常搜索结果。

Hadoop即将过时了吗?

  Hadoop 生态系统

  我们再回头看看 Apache Hadoop 的两大组成部分:Hadoop 分布式文件系统和 Hadoop,确实就是 GFS 和 GMR 的翻版。虽然 Hadoop 正在发展成为一个无所不包的数据管理和处理生态系统,但是在这个生态系统的核心,依然是 MapReduce 系统。所有的数据和应用最终都将降解为 Map 和 Reduce 的工作。

相关问答

更多
  • SpringMVC太过复杂,建议使用Struts2作为MVC框架,也就是大名鼎鼎的SSH整合框架。 另外很多程序员喜欢XML,其实XML配置要比编程式配置要明了的多。 但是现在也有一种趋势,不用XML改用Java注解。 另外Spring的Jar包依赖做的不错了,很多都是单向依赖,包内聚合度还是很高的。 除了Spring开头的Jar包,好像也就是依赖Commons,Log4J了吧, 如果要用AOP,好像还要aopalliance-1.0.jar 希望楼主戒骄戒躁,努力学习。 既然觉得框架太难用,何不自己写一个 ...
  • python开发应该是现在最流行的了吧,在人工智能热到爆的现在,python简直有着得天独厚的优势呀,python可以快速高效的写出一个程序的demo,和其他高级语言的模块又可以相互连接,确保专业性强的模块可用其他语言编写,而且python写程序方便维护......没记错好像python是目前排行第一的编程语言吧,兄弟python现在热的很呀!不过java也是目前的大热,一般编程开发都会c/c++,java,python这些比较常见的吧,web开发python和java非常常用啊
  • 这两年Redis火得可以,Redis也常常被当作Memcached的挑战者被提到桌面上来。关于Redis与Memcached的比较更是比比皆是。然而,Redis真的在功能、性能以及内存使用效率上都超越了Memcached吗?下面内容来自Redis作者在stackoverflow上的一个回答,对应的问题是《Is memcached a dinosaur in comparison to Redis?》(相比Redis,Memcached真的过时了吗?)You should not care too much ...
  • 新的技术往往用ext等js组件,界面就是一个静态的HTML,包含了一些组件,发往后台的请求不再是处理后输出HTML,而是输出JSON格式的数据了,有些类库可以把javaBean直接作为json输出,以输出HTML为目标的jsp、taglib、velocity、freemarker等技术再也用不到了。 ------解决方案-------------------------------------------------------- 我做的项目很少用ajax 现在做的项目甲方不允许用ajax ------解决 ...
  • 它已经过时了。 Rust 1.0于2015-05-15发布。 这个语法在几个月前被删除了。 这意味着你的教程很久没有更新过了; 实际上,该文件最后更新于2014年1月28日! 不是一个好兆头。 您的代码的非过时版本: fn main() { let x = Box::new(10); println!("{}", x); } sigil〜被具体的数据结构取代。 在这种情况下, Box 。 格式说明符:d不再存在。 只需使用Display格式化程序{} 。 没有必要对盒装数字进行解除引用。 ...
  • TLS只是以前称为SSL的协议的新名称。 如果您查看协议级别,则会发现TLS 1.0实际上是SSL 3.1,TLS 1.1是SSL 3.2等。版本高达并包括版本SSL 3.0被认为已损坏,不应再使用。 由于实际中的这种命名,“SSL”和“TLS”通常用于表示相同的协议组,并且通常还会找到“SSL / TLS”来引用此协议组。 通常只有在添加版本号时才会引用此版本。 像OpenSSL,PolarSSL,MatrixSSL等库实现协议组,即SSL和TLS。 为了补充这种命名困惑,“SSL”通常与SMTP(发送邮 ...
  • 现在已经不鼓励使用Vector了。 它们被ArrayList取代,它具有或多或少相同的功能(但不同步)。 Use of Vectors have been discouraged for some time now. They are replaced by ArrayList, which has more or less the same functionality (but isn't synchronised).
  • Jax是对的,您不必在最新版本的Backbone(目前的1.1.0)中手动绑定View方法和事件。 有些早期版本也是如此,但我不记得哪些版本。 在某些情况下,您需要绑定视图方法才能使它们正常工作。 这些案例是基本的Javascript范围,并且与Backbone JS无关。 最好不要使用_.bindAll 。 相反,如果您使用的是_.bind JS, _.bind使用_.bind绑定。 实际上如果你使用Backbone,你也不需要使用_.bind 。 Backbone Events类上有快捷方法。 这意味着 ...
  • SOAP在设计和使用时通常非常“沉重”,并且它基于XML。 对于更轻量级的方法,您可能希望查看更易于实现,采用的REST样式API,并且可以纯粹基于JSON,这使得使用Javascript /客户端技术轻松使用这些服务: https://en.wikipedia.org/wiki/REST 虽然可能有很好的SOAP用例 - 但我认为你会发现那些主要用于繁重的企业应用程序。 SOAP is usually quite "heavy" when designing and consuming and it's ...
  • Swing应用程序框架(JSR296)是一个旨在提取使用Swing开发应用程序的常用元素的项目。 使用安全但不再开发。 官方页面https://appframework.dev.java.net/提出了几个替代方案,包括使用netbeans平台本身,鉴于netbeans已经成熟了多少,我将热衷于研究这种方法。 Swing本身很好,它就像Java一样长。 虽然说桌面Java从来没有像其他版本那样以同样的方式掌握。 The Swing Application Framework (JSR296) was a p ...