gpt4 book ai didi

apache-spark - "pre-built for Apache Hadoop 2.7 and later"是什么意思?

转载 作者:行者123 更新时间:2023-12-04 04:58:52 25 4
gpt4 key购买 nike

Apache Spark 下载页面上的“pre-built for Apache Hadoop 2.7 and later”是什么意思?

这是否意味着 Spark 中 HDFS 的必要库?如果是这样,那么其他存储系统,如 Cassandra、s3、HBase、SQL 数据库、NoSQL 数据库呢?我们是否需要下载任何库才能连接到其他存储系统。

最佳答案

Does it mean necessary libraries for HDFS in spark


正确的! Spark 使用 Hadoop FileSystem API 来访问文件(在 HDFS 和 S3 以及其他支持 HDFS 的文件系统上),并且“为 Apache Hadoop 2.7 及更高版本预构建”版本附带了必要的库。
这主要是为了让 Spark Core 的 RDD 访问带有数据的文件。

how about other storage systems like Cassandra, s3, HBase, SQL Databases, NoSQL databases?Do we need to download any libraries to connect to other storage systems.


在上述存储系统中,“为 Apache Hadoop 2.7 及更高版本预构建”捆绑包部分涵盖了 S3(但您必须专门为 S3 添加额外的 jar)。
这主要用于 Spark SQL 的数据集 API。
Cassandra、HBase 等都有自己的 Spark 连接器,不包括在内。见 DataStax Spark Cassandra ConnectorApache HBase Connector

如果您一直想知道“如果我必须在 YARN 上运行 spark 使用哪种包类型”,只需使用“为 Apache Hadoop 预构建”和 Hadoop 版本(“2.7”与“3.2 及更高版本”)作为版本使用中的 Hadoop(可能是 Hadoop YARN 的版本)。

所以“spark-prebuilt-with-hadoop-x.y”意味着 Spark 在 jars 目录中包含 Hadoop x.y。这显然使分布大于“spark-without-hadoop”。这也意味着,一旦您将 HDFS 升级到 Hadoop 3.2,但 Spark 发行版是“使用 Hadoop 2.7”,您仍然可以使用它,但不会简单地支持某些功能,并且您的应用程序可能会进行较少优化(通过 HDFS 本​​身)提及所有已修复的错误(以及新引入的错误)​​。

Wouldn't there be a conflict between hadoop jars present in spark-prebuilt-with-hadoop-x.y and those that in hadoop-x.y? spark-prebuilt-with-hadoop-x.y gave me the impression that all necessary hadoop stuff (e.g., YARN) would be present in the spark binary. Hence my confusion that all hadoop should be present in the umbrella spark-prebuilt-with-hadoop-x.y.


如果您考虑 Spark 应用程序与 Hadoop DFS 或 Hadoop YARN 之间的底层通信,则并非如此。它位于各自容器(可能在 Docker 中)中的独立应用程序之间,因此它们的 CLASSPATH 是分开的。
唯一的问题可能是 Hadoop 组件和 Spark 的协议(protocol)不匹配,这就是为什么您应该尽可能与 jar 兼容并使用最接近您的 Hadoop 环境版本的 Spark 包。

关于apache-spark - "pre-built for Apache Hadoop 2.7 and later"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46210247/

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