我需要学习 Hadoop 才能成为数据科学家吗?

数据挖掘 大数据 apache-hadoop
2021-10-06 21:05:40

这里是一位有抱负的数据科学家。我对 Hadoop 一无所知,但是当我阅读数据科学和大数据时,我看到很多关于 Hadoop 的讨论。学习 Hadoop 成为一名数据科学家是绝对必要的吗?

4个回答

不同的人为不同的事情使用不同的工具。数据科学之类的术语之所以通用是有原因的。数据科学家可以在整个职业生涯中度过,而不必学习像 hadoop 这样的特定工具。Hadoop 被广泛使用,但它并不是唯一能够管理和操作数据的平台,即使是大规模数据也是如此。

我会说数据科学家应该熟悉 MapReduce、分布式系统、分布式文件系统等概念,但我不会判断某人不知道这些事情。

这是一个很大的领域。知识的海洋是知识的海洋,大多数人都有能力学习并成为专家。成为一名科学家的关键是有学习的欲望和了解你不知道的东西的动力。

举个例子:我可以把一百个结构化的 CSV 文件交给合适的人,这些文件包含十年来一个特定班级的课堂表现信息。数据科学家将能够花费一年的时间从​​数据中收集见解,而无需在多台机器上传播计算。您可以应用机器学习算法,使用可视化进行分析,将其与有关该地区、种族构成、环境随时间变化、政治信息、天气模式等的外部数据相结合。在我看来,所有这些都是“数据科学” . 可能需要像 hadoop 这样的东西来测试你学到的任何东西,并将其应用到包含整个国家学生的数据中,而不仅仅是一个教室,但最后一步并不一定会让某人成为数据科学家。

作为一名前 Hadoop 工程师,它不是必需的,但它会有所帮助。Hadoop 只是一个系统——最常见的系统,基于 Java 和一个产品生态系统,它应用特定的技术“Map/Reduce”来及时获得结果。Google 不使用 Hadoop,但我向您保证他们使用大数据分析。谷歌使用他们自己的系统,用 C++ 开发。事实上,Hadoop 是 Google 发布其 Map/Reduce 和 BigTable(Hadoop 中的 HBase)白皮书的结果。

数据科学家将与 hadoop 工程师进行交流,但在较小的地方,您可能需要同时兼顾两者。如果您是严格的数据科学家,那么无论您用于分析,R、Excel、Tableau 等,都将只在一小部分子集上运行,然后需要转换为针对涉及 hadoop 的完整数据集运行。

您必须首先弄清楚“学习 Hadoop”是什么意思。如果您的意思是使用 Hadoop,例如学习在 MapReduce 中编程,那么很可能这是一个好主意。但随着时间的推移,基础知识(数据库、机器学习、统计)可能会发挥更大的作用。

是的,您应该学习一个能够将您的问题分解为数据并行问题的平台。Hadoop就是其中之一。对于您的简单需求(设计模式,如计数、聚合、过滤等),您需要 Hadoop,对于更复杂的机器学习内容,例如做一些贝叶斯、SVM,您需要 Mahout,而 Mahout 又需要 Hadoop(现在是 Apache Spark)来解决您的问题一种数据并行的方法。

因此,Hadoop 是一个很好的学习平台,对您的批处理需求非常重要。不仅 Hadoop,您还需要了解 Spark(Mahout 使用 Spark 运行它的算法)和 Twitter Storm(满足您的实时分析需求)。此列表将继续并发展,因此如果您擅长构建模块(分布式计算、数据并行问题等)并了解此类平台(例如 Hadoop)如何运行,您将很快跟上其他平台的速度。