gpt4 book ai didi

hadoop - Hadoop与数据库的关系

转载 作者:可可西里 更新时间:2023-11-01 14:14:24 24 4
gpt4 key购买 nike

好的..我已经尝试在网络和本网站上搜索这个问题的答案,这似乎是一个非常基本的问题。我完全不懂大数据处理。

我想知道HDFS和数据库的关系。是否总是需要使用 HDFS,数据采用某种 NoSQL 格式?使用 HDFS 时是否总是附加特定的数据库?我知道 cloudera 提供 Hadoop 解决方案并且他们使用 HBase。

我可以使用关系数据库作为 Hadoop 的原生数据库吗?

最佳答案

I want to know the relationship between HDFS and databases.

两者之间没有这样的关系。如果您仍想找到一些相似之处,则两者之间唯一的共同点是提供存储数据.但这类似于任何 FS 和 DB 组合。例如,MySQL 和 ext3。你说你在 MySQL 中存储数据,但最终你的数据存储在你的 FS 之上。人们通常在 Hadoop 集群之上使用 NoSQL 数据库(如 HBase)来利用 HDFS 提供的并行性和分布式行为。

Is it always necessary that to use HDFS, the data be in a some NoSQL format?

实际上没有什么比NoSQL 格式 更好的了。您可以将 HDFS 用于任何类型的数据、文本、二进制、xml 等。

Is there a specific database that always comes attached when using HDFS?

没有。唯一与 HDFS 结合的是 MapReduce 框架。您显然可以创建一个数据库来与 HDFS 一起工作。人们经常在 HDFS 之上使用 NoSQL 数据库。有多种选择,例如 Cassandra、HBase 等。您完全可以决定使用哪一种。

Can I use a relational database as the native database for Hadoop?

没有允许这样做的 OOTB 功能。此外,将 RDBMS 与 Hadoop 一起使用没有多大意义。 Hadoop 是为 RDBMS 不是合适选择的时代开发的,例如处理 PB 数据、处理非结构化数据等。话虽如此,您一定不能将 Hadoop 视为 RDBMB 的替代品。两者都有完全不同的目标。

编辑:

通常人们将 NoSQL 数据库(如 HBase、Cassandra)与 Hadoop 结合使用。将这些数据库与 hadoop 一起使用仅仅是配置问题。您不需要任何连接程序即可实现此目的。除了@Doctor Dan 提出的观点之外,选择 NoSQL DB 代替 SQL DB 的原因很少。一件事是 size。这些 NoSQL 数据库提供了出色的水平可扩展性,使您能够轻松存储 PB 级数据。您可以纵向扩展传统系统。另一个原因是数据的复杂性。使用这些数据库的地方主要处理高度非结构化的数据,使用传统系统处理这些数据不是很容易。例如传感器数据、日志数据等。

Basically, I did not understand why does SQOOP exist. Why can't we directly use an SQL data on Hadoop.

尽管 Hadoop 非常擅长处理您的大数据需求,但它并不能满足您的所有需求。它不适合实时需求。假设您是一家拥有非常庞大数据集的在线交易公司。您发现使用 Hadoop 可以非常轻松地处理这些数据。但问题是您无法使用 Hadoop 满足客户的实时需求。这就是 SQOOP 发挥作用的地方。它是一个导入/导出工具,允许您在 SQL DB 和 Hadoop 之间移动数据。您可以将 BigData 移动到 Hadoop 集群中,在那里进行处理,然后使用 SQOOP 将结果推回 SQL DB 以满足客户的实时需求。

HTH

关于hadoop - Hadoop与数据库的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17458268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com