Hadoop与Teradata有何区别?

10

我接触过Teradata。我从未接触过Hadoop,但自从昨天起,我开始研究它。通过对两者的描述,它们似乎是可以互换使用的,但有些论文中写到,它们用于不同的目的。但我发现所有资料都含糊不清,让我感到困惑。

有没有人同时拥有这两者的经验?它们之间的严重区别是什么?

简单来说,我想构建ETL,将数十亿行原始数据转换并组织到DWH,然后在其上进行一些资源密集型的分析。为什么要使用TD?为什么选择Hadoop?或者为什么不选它们?


1
你的原始数据是结构化的还是非结构化的?这些数据的到达速率是多少?你能解释一下什么是昂贵的分析吗?你对完成这项分析的服务水平期望是什么?你的公司是否有已掌握SQL、R、SAS和/或预测建模技能的人员基础?两者之间存在重大差异。关键在于了解你的业务问题是否可以通过传统的关系型数据库范例来解决,从数据建模-> ETL-> SQL分析,或者你需要更多MapReduce所提供的功能。 - Rob Paller
原始数据是有结构的。到达率是每天会有几个大块数据。昂贵的分析:CPU昂贵,某些查询需要预先安排数据(我们可以说是从结构化数据到算法的抽象数据的ETL),但这些分析将在一些特定的应用程序中运行,因此并不重要。但我的问题的实质是:Teradata真的很昂贵。在银行等行业中,我能否用Hadoop替代Teradata,并具有相同的性能,而没有严重的风险(实施的额外成本甚至一些不可预测的故障等)? - John
他们两者都可以共存。Teradata 推荐的领域和 Hadoop 推荐的领域是不同的。现在,Teradata 正在转向 统一架构,这样 Hadoop 和 Teradata 可以集成并相互补充。 - Raniendu Singh
4个回答

9

我认为题为“MapReduce 和并行数据库管理系统:朋友还是敌人”的这篇文章做了很好的工作,描述了每种技术最适合的情况。简而言之,Hadoop 用于存储非结构化数据和运行并行转换以“消毒”传入数据方面表现出色,而DBMS则擅长快速执行复杂查询。


4

Hadoop,带扩展的Hadoop,RDBMS功能/属性比较

我不是这个领域的专家,但在coursera.com的数据科学入门课程中,有一个名为"比较MapReduce和数据库"以及一个关于MapReduce部分中并行数据库的讲座。

以下是此讲座的总结,比较了MapReduce与RDBMS(不一定是并行RDMBS)。 需要记住的一点是,如果包括像PIG,Hive等扩展到Hadoop的扩展,比较就会有所不同。我将在括号()中放入添加了这些功能/属性的MapReduce扩展。

一些RDBMS具有但原生MapReduce没有的功能/属性:

  • 声明性查询语言-(Pig,HIVE)
  • 模式(Hive,Pig,DyradLINQ,Hadapt)
  • 逻辑数据独立性
  • 索引(Hbase)
  • 代数优化(Pig,Dryad,HIVE)
  • 缓存/材料化视图
  • ACID /事务

相对于常规RDBMS而言,MapReduce(不一定是并行RDMBS)的优势:

  • 高可伸缩性
  • 容错性
  • “一人部署”

3
我多次被问到这个问题,我通常会给出一种汽车类比(这很傻,因为我不是一个汽车人士 - 但它似乎能起作用)
- Teradata是面向大众的汽车/数据库管理系统 - 它可靠、成熟、工作良好,并在需要时随时可用。相对于Hadoop来说,基础产品定制和添加功能比较困难。 - Hadoop是面向发烧友的汽车/数据库管理系统 - 它不像Teradata那样可靠或成熟,但只要你维护得当,它也能很好地工作。相对于Teradata来说,定制和添加基础产品功能更容易。
换句话说,Teradata是可靠的劳动力,在这里放置您的任务关键流程(操作报告,企业报告,决策支持等)。 Hadoop是可以做很多事情的地方,但如果您早上进来发现您的监管报告无法生成,因为有人应用了补丁或者您突然遇到了“太多小文件”的问题,请不要感到惊讶。
回到类比,如果您不想太过专业,制造商的产品(数据库管理系统和/或汽车)能够直接为您工作,则Teradata是一个不错的选择。 另一方面,如果您喜欢在引擎盖下修理,更换化油器(或其他部件),根据您是乡村行驶还是城市行驶调整齿轮比,调整燃油空气混合物,安装涡轮增压器和/或您的家庭抱怨周末花太多时间在车库里 - Hadoop是适合您的地方。
在我看来,大多数组织都需要两者。 希望这能有所帮助 :-)

1

首先,Vanilla Apache Hadoop是100%开源的。但是,如果您需要商业支持以及咨询服务,可以选择Cloudera、MapR、HortonWorks等公司。

Hadoop由不断增长的社区支持,定期修复错误并进行改进。Hadoop存储模型HDFS基于Google的GFS架构,已被证明可以处理大量数据。此外,Hadoop分析模型Map Reduce基于Google的Map Reduce Model

像Facebook、Yahoo、Twitter、EBay等科技巨头使用Hadoop实时存储和分析大量数据,也可以被动地存储。

关于您的问题ETL系统,请阅读这些幻灯片

好了,现在为什么选择Hadoop?

  1. 开源
  2. 经过验证的大量数据存储和分析模型
  3. 设置和运行所需的最低硬件要求

好了,现在为什么选择TD?

商业支持

1
好的,现在,在您的好答案中,我只缺少“好的,现在为什么选择Teradata?” - John
1
两个小问题:Hadoop也有很多商业支持,而且Hadoop MapReduce主要用于离线批处理分析,不适用于实时查询。 - Thomas Jungblut
是的,我提到了Hadoop所拥有的商业支持,并且我指的是通过在Hadoop HDFS之上使用HBase来进行实时查询,而不是在HDFS之上使用Map Reduce模型。 - shazin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接