«Нет файловой системы для схемы: gs» при локальном запуске искрового задания
Я запускаю задание Spark (версия 1.2.0), а входные данные - это папка внутри корзины Google Clous Storage (например, gs: // mybucket / folder)
При локальном запуске задания на компьютере Mac появляется следующая ошибка:
5932 [main] ОШИБКА com.doit.customer.dataconverter.Phase1 - Задание на дату: 2014_09_23 завершилось ошибкой: нет файловой системы для схемы: gs
Я знаю, что для поддержки путей gs нужно сделать 2 вещи. Один из них - установка соединителя GCS, а другой - установка в core-site.xml следующей установки Hadoop:
<property>
<name>fs.gs.impl</name>
<value>com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem</value>
<description>The FileSystem for gs: (GCS) uris.</description>
</property>
<property>
<name>fs.AbstractFileSystem.gs.impl</name>
<value>com.google.cloud.hadoop.fs.gcs.GoogleHadoopFS</value>
<description>
The AbstractFileSystem for gs: (GCS) uris. Only necessary for use with Hadoop 2.
</description>
</property>
Я думаю, что моя проблема связана с тем, что я не уверен, где именно каждый элемент должен быть настроен в этом локальном режиме. В проекте Intellij я использую Maven, поэтому я импортировал библиотеку spark следующим образом:
<dependency> <!-- Spark dependency -->
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.2.0</version>
<exclusions>
<exclusion> <!-- declare the exclusion here -->
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
</exclusion>
</exclusions>
</dependency>
и Hadoop 1.2.1 следующим образом:
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>1.2.1</version>
</dependency>
Дело в том, что я не уверен, где настроено местоположение hadoop для Spark, а также где настроен conf hadoop. Поэтому я могу добавить неверную установку Hadoop. Кроме того, есть ли что-то, что необходимо перезапустить после изменения файлов? Насколько я видел, на моей машине не работает служба Hadoop.