如今,在某些圈子中,正在进行着“ Hadoop与RDBMS”的辩论 。 通常,讨论将Hadoop视为数据处理世界中显而易见的继承人,而RDBMS则是您父亲的Oldsmobile。 这场辩论有些误导了人们的视线,讨论可能使组织偏离他们真正应该遵循的策略,即生产共存的策略,而不是用B代替A的简单问题。

首先,让我们谈谈这两种技术的实质。 正如您所知,Hadoop实际上并不是一个数据库,尽管它的行为几乎像一个数据库。 它是一种分布式文件系统,专门用于促进大量数据的存储和处理,几乎不管数据格式如何。 但是,实时查询这些数据不是一个好主意。

典型的RDBMS或关系数据库管理系统无疑是结构化数据实时查询(如数据仓库中的查询)的无可争议的拥护者,这使其成为实时在线事务处理或OLTP的理想选择。 各行各业的严肃企业都依赖这种功能来处理非常重要的业务。

这就是基础。 剥开洋葱更多地揭示了其他明显的差异,从而进一步证明了Hadoop-RDBMS共存策略的重要性。 RDBMS得到了软件行业知名人士的支持,因此建立了IT人才的安装基础,这可能是首屈一指的。 RDBMS与其他系统很好地集成在一起,并且代表了具有40年悠久历史的非常成熟的技术。 RDBMS融入了世界上几乎每个大中型IT组织的结构。 相信– RDBMS不会很快消失,也不应该消失。

开源Hadoop大约有十年的历史了,尽管最认真的开发发生在最近五年中。 在某些方面,它确实代表了数据的未来。 在大多数组织中,数据量大约每两年翻一番。 增长的大部分是非结构化或半结构化数据。 对于RDBMS而言,非结构化数据意味着什么是水。 混合两者,然后将作品涂胶。 但是,如果非结构化数据是数据增长的方向,那么数据处理必须遵循相同的路径,对吗?

Hadoop就是这样。 它是专门为处理大量非结构化数据而设计的。 它可以与非结构化数据的曲棍球增长相协调的方式进行扩展,这是典型RDBMS无法做到的。 RDBMS通常在昂贵的商用服务器上运行,而Hadoop在商用硬件上运行很好。 Hadoop将典型的数据查询拆分到各个节点之间,使其具有相对的容错能力。

对于批处理,Hadoop通过RDBMS获得了认可。 但是请考虑,批处理中许多数据源之一很可能是来自RDBMS的数据。 将存档数据移出RDBMS可以降低存储成本,因为在基于商品的Hadoop基础架构上存储存档数据比较便宜。 同样,Hadoop中聚合的数据也很可能需要迁移到RDBMS。

最重要的是,当涉及到Hadoop和RDBMS时,正确的道路显然是共存的。 他们不能很好地完成同样重要的任务。 他们很好地完成了不同的任务。 您的工作是根据各自的优势来分配处理负载。 如果有人建议您在实际使用RDBMS时就扔掉它,那么他们可能不理解它打算解决的问题

翻译自: https://www.javacodegeeks.com/2016/05/solving-problems-right-technology-hadoop-rdbms.html