Skip to content

Предварительные требования

Совместимость версий

  • Версии Hadoop: 2.x, 3.x (только с библиотеками Hadoop 3.x)
  • Версии Spark: 2.3.x - 3.5.x
  • Версии Java: 8 - 20

Установка PySpark

Чтобы использовать коннектор SparkHDFS, у вас должен быть установлен PySpark (или добавлен в sys.path) ДО создания экземпляра коннектора.

См. инструкцию по установке для получения более подробной информации.

Использование Kerberos

Некоторые управляемые кластеры Hadoop используют аутентификацию Kerberos. В этом случае вам следует вызвать команду kinit ДО запуска сессии Spark для генерации тикета Kerberos. См. инструкции по установке Kerberos.

Иногда также требуется передать файл keytab в конфигурацию Spark, позволяя исполнителям Spark генерировать собственные тикеты Kerberos:

    SparkSession.builder
        .option("spark.kerberos.access.hadoopFileSystems", "hdfs://namenode1.domain.com:9820,hdfs://namenode2.domain.com:9820")
        .option("spark.kerberos.principal", "user")
        .option("spark.kerberos.keytab", "/path/to/keytab")
        .gerOrCreate()
    SparkSession.builder
        .option("spark.yarn.access.hadoopFileSystems", "hdfs://namenode1.domain.com:9820,hdfs://namenode2.domain.com:9820")
        .option("spark.yarn.principal", "user")
        .option("spark.yarn.keytab", "/path/to/keytab")
        .gerOrCreate()

См. документацию по безопасности Spark для получения более подробной информации.