参考资料

  1. MediaWiki 是一个免费开源的维基软件
  2. docker安装教程详细说明以及案例
  3. docker安装windows详细说明以及案例
  4. Gradle 是一个基于 Apache Ant 和 Maven 概念的自动化构建工具
  5. Stirling-PDF 是一个开源的 PDF 工具集
  6. Maven 是一个基于项目对象模型(POM)的 Java 项目管理工具
  7. docker安装rabbitmq详细说明以及案例
  8. Drupal 是一个开源的内容管理系统 (CMS),用于构建网站

Spark 简介

Apache Spark 是一个开源的分布式计算系统,用于大规模数据处理。它提供了高效的内存计算能力,支持批处理、流处理、机器学习和图计算。

特点

  1. 快速处理:基于内存计算,比 Hadoop MapReduce 快 100 倍。

  2. 易用性:支持 Java、Scala、Python 和 R 语言。

  3. 通用性:提供 SQL、流处理、机器学习和图计算库。

  4. 容错性:通过 RDD(弹性分布式数据集)实现容错。

  5. 可扩展性:可运行在 Hadoop、Mesos、Kubernetes 或独立集群上。

最新更新内容及时间

  • 最新版本:3.5.0(截至 2023 年 10 月)

  • 更新内容

    • 支持 Python 3.10

    • 改进 Kubernetes 集成

    • 优化 SQL 性能

    • 新增内置函数

镜像下载地址

官网地址

https://spark.apache.org/

文档地址

Docker 安装示例

# 拉取官方镜像
docker pull apache/spark:3.5.0

# 运行 Spark 容器
docker run -it apache/spark:3.5.0 /bin/bash

YARN 设置教程

  1. 配置 spark-defaults.conf

    spark.master    yarn
    spark.driver.memory    4g
    spark.executor.memory  8g
  2. 提交应用到 YARN

    spark-submit --master yarn --deploy-mode cluster your_app.py

常用错误及问题

  1. 内存不足

    • 错误:java.lang.OutOfMemoryError

    • 解决:增加 spark.executor.memory 配置

  2. 连接拒绝

    • 错误:Connection refused

    • 解决:检查 Spark master URL 和网络连接

  3. 依赖冲突

    • 错误:NoSuchMethodError

    • 解决:统一依赖版本

  4. 权限问题

    • 错误:Permission denied

    • 解决:检查 HDFS 或本地文件系统权限

  5. Executor 丢失

    • 错误:ExecutorLostFailure

    • 解决:检查集群资源或增加超时设置